Openvpn sub-rede diferente com ip dinâmico usando client-config-dir (cdd)

2

Bom dia,

Eu preciso de ajuda para uma configuração específica em um servidor. Digamos que eu tenha dois tipos de pessoas que se conectem à minha VPN. Pepole do Grupo A e pessoas do Grupo B. Eu preciso que eles tenham uma sub-rede diferente. A única diferença entre esses dois grupos é o nome comum do certificado.

Então, digamos que eu tenha duas sub-redes sub1: 10.0.1.0/24 sub2: 10.0.2.0/24

As pessoas do grupo A têm um certificado como o A0000xxx As pessoas do grupo B têm um certificado como B0000xxx

Eu quero que as pessoas do grupo A se conectem ao sub1 e pessoas do grupo B para se conectar ao sub2

Eu pensei em usar a diretiva client-config-dir. No cliente conectar, vou usar um script para determinar se eles são do grupo A ou B, e então vou criar a boa configuração. Meu problema é que não sei como dar a eles os endereços certos. Eu não quero dar-lhes um ip staic, mas em vez disso gostaria que eles usassem um IP dinâmico.

É possível dizer a eles para procurar endereços em uma sub-rede?

Obrigado

[Editar]

Então eu de alguma forma consigo fazer isso, mas eu gostaria de ter alguma opinião sobre isso

Então eu criei um script connect.sh que realmente consegue fazer isso, mas precisa ser configurado, e usei o client-config-dir como este

if [ ! -f configDir/${common_name} ]; then
        if ! grep -q "${common_name}" ipp.txt; then
                regexCA="^CA.*";
                regexFRFDV="^FRFDV.*";
                regexFRPC="^FRPC.*";
                outSet=255
                if [[ ${common_name} =~ $regexCA  ]]; then
                        i=2;
                        while  grep -q "10.0.0.$i" ipp.txt  ;
                        do
                                if [ $i == $outSet ] ; then
                                        break ;
                                fi
                                ((i=$i+1));
                        done
                        if [ $i == $outSet ] ; then
                                exit 1;
                        fi
                        echo "10.0.0.$i, ${common_name}" >> ipp.txt;
                        echo "ifconfig-push 10.0.0.$i 255.255.255.0" > configDir/${common_name};
                        echo "ifconfig-push 10.0.0.$i 255.255.255.0" > $1
                else
                        i=2;
                        while  grep -q "10.0.1.$i" ipp.txt ;
                        do
                                if [ $i == $outSet ]
                                then
                                        break;
                                fi
                                ((i=$i+1));
                        done
                        if [ $i == $outSet ] ; then
                                exit 1;
                        fi
                        echo "10.0.1.$i, ${common_name}" >> ipp.txt;
                        echo "ifconfig-push 10.0.1.$i 255.255.255.0" > configDir/${common_name};
                        echo "ifconfig-push 10.0.1.$i 255.255.255.0" > $1
                fi
        fi
fi
exit 0;

Diga-me o que você pensa sobre isso

    
por LinChan 17.04.2014 / 15:42

1 resposta

0

Não é possível criar sub-redes do lado do servidor diferentes na configuração client-config-dir.

Eu implementaria isso executando duas instâncias OpenVPN em diferentes portas e diferentes configurações de rede.

    
por 17.04.2014 / 21:03