Então, pelo que entendi, você já tem um servidor OpenVPN instalado e funcionando.
Quanto a tun
e tap
: o servidor e os clientes precisam usar a mesma configuração. Se você não precisar de Ethernet Bridging, use tun
, porque ele apresenta menos sobrecarga.
Primeiramente, atualizaremos sua configuração de rede para incluir a interface da VPN:
config interface 'vpn'
option ifname 'tun0'
option proto 'none'
Isso é necessário para integrar a conexão VPN ao sistema de rede do OpenWrt. Claro, se você estiver usando tap
, terá que alterar a interface para tap0
.
Em seguida, opcionalmente, remova as seguintes linhas de /etc/config/firewall
:
config forwarding
option src lan
option dest wan
Isso garante que nenhum tráfego de LAN deixe o roteador por meio do uplink de Internet normal. Isso não é obrigatório, é claro.
No mesmo arquivo, adicione uma nova zona e configure o encaminhamento:
config zone
option name vpn
list network 'vpn'
option input REJECT
option output ACCEPT
option forward REJECT
option masq 1
config forwarding
option src lan
option dest vpn
O uso de MASQUERADE
e tun
facilita essa configuração, porque o servidor VPN não precisa saber sobre os clientes dos roteadores e também não precisamos de ponte, reduzindo a sobrecarga. A seção forwarding
permite que o tráfego da LAN seja roteado pela sua conexão VPN.
A seguir vem sua configuração de VPN. Há algumas coisas que você deve ter em mente.
Como especificamos explicitamente a interface que esperamos que a conexão VPN use, teremos que fazer o mesmo em sua configuração de VPN:
dev tun0
Parece que você já o tem, mas para outros, mais uma vez, precisamos redirecionar o tráfego por meio da conexão VPN. O OpenVPN já oferece uma ótima opção para isso:
redirect-gateway def1
Esta opção também garante que seu servidor VPN ainda possa ser acessado.
Se a sua configuração do OpenVPN contiver a seguinte linha, remova-a:
persist-tun
Depois de fazer essas alterações, reinicie seu roteador. Lembre-se: se você removeu a seção forwarding
, não poderá acessar a internet agora.
Agora, inicie o OpenVPN:
/etc/init.d/openvpn start
Se tudo funcionar bem agora, você poderá habilitar permanentemente o OpenVPN:
/etc/init.d/openvpn enable
Tenha em mente que : O OpenVPN depende da data e hora corretas para verificar se os certificados são válidos. Seu roteador provavelmente não tem um relógio de tempo real, o que significa que começa em 1 de janeiro de 1970 todas as vezes. Em seguida, depende dos servidores NTP da Internet para obter a data e a hora atuais. Isso significa que o OpenVPN não se conectará até que isso seja concluído, porque seus certificados não são válidos em 1º de janeiro de 1970.