Você pode enviar diretivas openvpn individuais para seus clientes usando arquivos de configuração específicos do cliente no diretório client-config.
No arquivo de configuração do servidor, inclua a diretiva:
client-config-dir ccd
e crie este diretório caso ainda não exista em seu caminho openvpn, por exemplo:
/etc/openvpn/ccd
Agora crie um arquivo de configuração por cliente no diretório ccd com o mesmo nome do nome comum X509 do cliente. As opções a seguir são legais em um contexto específico do cliente: push , push-reset , iroute , ifconfig-push e config .
Por exemplo, para enviar rotas para um cliente com CN user1 em seu certificado:
echo 'push "route 10.0.0.2 255.255.255.255 10.8.0.1"' >> /etc/openvpn/ccd/user1
echo 'push "route 10.0.2.10 255.255.255.255 10.8.0.1"' >> /etc/openvpn/ccd/user1
Para que isso funcione, você precisa extrair diretivas de configuração em seus clientes do servidor usando a diretiva pull .
Você pode ter a diretiva client em seu client-config, que é uma diretiva auxiliar e se expande da seguinte forma:
pull
tls-client
Não use route-nopull em combinação, pois isso interromperia as rotas de acesso do cliente. Se você precisar de redirect-gateway em determinados clientes para rotear todo o tráfego pela sub-rede da VPN, poderá colocar essa diretiva apenas nesses arquivos de configuração do cliente e não no arquivo de configuração do servidor para todos os clientes. A diretiva redirect-gateway executa automaticamente os comandos de roteamento para fazer com que todo o tráfego IP de saída seja redirecionado pela VPN. Veja a página man .