Como restringir usuários Openvpn a determinados segmentos de rede

3

Eu tenho três segmentos atrás do servidor openvpn: DMZ ( 192.168.1.x ), Dev ( 192.168.2.x ) e PROD ( 192.168.3.x ). Existem dois grupos de usuários: um grupo pode se conectar a todos os segmentos do openvpn, enquanto eu quero restringir os outros usuários ao segmento Dev. Qual é a melhor maneira de fazer isso?

Os usuários do OpenVPN recebem endereços IP em 10.10.11.x rede.

    
por nashrafeeq 23.05.2012 / 05:07

2 respostas

3

A melhor maneira de fazer isso é dar a cada grupo sua própria sub-rede / 24 ou dividir seu 10.10.11.0/24 e fazer alguma magia iptables para bloquear usuários dev ..

Mas eu acho que a melhor coisa a fazer, se sua rede suporta, é vlan tag cada sub-rede. Dê aos próprios usuários de desenvolvimento / 24 em openvpn e, em seguida, algumas regras de firewall para permitir que o dev-vlan seja capaz de se conectar a outras lans.

    
por 23.05.2012 / 05:43
2

Para o openvpn, existe um switch chamado --learn-address , que pode ser usado para gerar regras ...

Neste script você basicamente verifica o CN e adiciona / remove regras do iptables para o IP.

extrair do openvpn MAN:

  --learn-address cmd
          Run  script  or  shell  command  cmd  to validate client virtual
          addresses or routes.

          cmd will be executed with 3 parameters:

          [1] operation -- "add", "update", or "delete" based  on  whether
          or  not the address is being added to, modified, or deleted from
          OpenVPN's internal routing table.
          [2] address -- The address being learned or unlearned.  This can
          be  an IPv4 address such as "198.162.10.14", an IPv4 subnet such
          as "198.162.10.0/24", or an ethernet MAC address (when --dev tap
          is being used) such as "00:FF:01:02:03:04".
          [3] common name -- The common name on the certificate associated
          with the client linked to this address.  Only present for  "add"
          or "update" operations, not "delete".

          On  "add"  or  "update" methods, if the script returns a failure
          code (non-zero), OpenVPN will reject the address  and  will  not
          modify its internal routing table.

          Normally, the cmd script will use the information provided above
          to set appropriate firewall entries on the  VPN  TUN/TAP  inter‐
          face.  Since OpenVPN provides the association between virtual IP
          or MAC address and the client's authenticated  common  name,  it
          allows  a user-defined script to configure firewall access poli‐
          cies with regard to the client's high-level common name,  rather
          than the low level client virtual addresses.
    
por 23.05.2012 / 14:04