Vamos demonstrar como forçar o tráfego de Internet de um Cliente OpenVPN (site to site) a passar pelo Servidor OpenVPN no PfSense. Nesse caso, todo o tráfego do site_cliente_VPN sairá pelo Site_Server_OpenVPN.

Algumas pessoas podem perguntar: Quais os motivos para forçar o tráfego do cliente site to site VPN a passar pelo Servidor VPN?
Abaixo, vou listar alguns dos motivos.
- Focar na segurança do tráfego no Servidor OpenVPN.
- Usar um único proxy.
- Usar um único limitador de domínios.
- Garantir que a saida para determinados sites saiam sempre do Servidor OpenVPN.
Vamos usar o cenário que usamos para fazer a instalação do VPN Site to Site com pfSense.
Sugiro que vejam a configuração usada em “ VPN Site to Site com pfSense”.

Procurando a rota para o túnel VPN
Vamos no Client_Site_OpenVPN e vamos verificar as rotas para poder identificar o IP do túnel que liga ao Server_Site_OpenVPN.
Para isso, vamos clicar em “Diagnostics -> Routes”.
Agora, você verá uma tabela semelhante a da figura abaixo. Em seguida, vamos procurar a rota que aponta para o IP do túnel da sua VPN.

Essa rota está associada a rede privada do servidor OpenVPN. No meu caso, o servidor OpenVPN tem uma rede interna “192.168.56.0/24” . Podemos observar na figura acima que para atingir a rede “192.168.56.0/24” o clienteOpenVPN tem que enviar para o “10.0.8.1” na interface ovpnc1.
Lembrando que ovpnc1 é a interface do túnel openvpn.
Configurando o Servidor Openvpn
Agora vamos entrar no Server_Site_OpenVPN e clicar em VPN -> OpenVPN -> Client Specific Overrides.

Depois disso, vamos editar clicando no ícone de lápis como na figura abaixo.

Vamos descer lá para o final da página onde temos o campo “Advanced”.
E vamos adicionar as rotas para o IP do túnel OpenVPN.
push "route 0.0.0.0 128.0.0.0 10.0.8.1";
push "route 128.0.0.0 128.0.0.0 10.0.8.1";

Em seguida, vamos clicar em “SAVE”.
Nesse caso, incluímos as rotas para o tráfego default dividindo em duas subredes. A primeira vai de 0.0.0.0 até 127.255.255.255 e a segunda sub rede vai de 128.0.0.0 até 255.255.255.255.
O motivo de dividir as duas subredes é que queremos que durante a hierarquia da tabela de rotas da rede do cliente VPN o tráfego seja enviado pelo túnel VPN.
Criar regra no NAT para a rede do cliente VPN
Agora vamos ter que criar uma regra no NAT do Server_Site_OpenVPN para permitir que o tráfego que venha da rede LAN doClient_Site_OpenVPN possa passar pelo NAT do servidor.

Agora, vamos clicar em “Outbound” e em seguida vamos clicar em “Hybrid Outbound NAT” e depois clicar em “Save”.

Em seguida, dentro de “Mappings”, vamos clicar em “Add”.

Agora vamos inserir a regra para a rede LAN do Client_Site_OpenVPN (192.168.24.1).
Nota. Lembre-se de substituir a rede interna para a rede que você usa no seu cliente.

Depois de inserir a rede “192.168.24.0 /24 “ como “source”, vamos clicar em “Save”.

Reiniciar o Servidor VPN
Agora vamos reiniciar o Server_Site_OpenVPN.Para isso, vamos clicar em Status – > OpenVPN.

Em seguida, vamos clicar no ícone de restart como na figura abaixo.

Reiniciando o cliente Openvpn
Agora vamos voltar ao pfsense do Client_Site_OpenVPN e vamos reiniciar o serviço de VPN.
Para isso, como na figura abaixo, vamos clicar em Status – > OpenVPN.

Em seguida, vamos clicar no ícone de restart como na figura abaixo.

Testando o tráfego da rede do cliente VPN
Agora, vamos testar se o tráfego para a Internet está saindo pelo Servidor OpenVPN.
Para testar, podemos abrir um terminal em uma máquina que esteja na rede interna (LAN) do Client_Site_OpenVPN. Em seguida, vamos digitar o comando abaixo.
tracepath -n 8.8.8.8

Na figura acima, temos o primeiro salto como sendo a interface LAN do Client_Site_OpenVPN (192.168.24.1). Em seguida, temos interface WAN do Server_Site_OpenVPN (10.0.8.1).
Depois disso, temos o IP que estou usando como gateway da rede Network_NAT do meu VirtualBox (10.0.2.1).
E por fim podemos verificar que o tráfego da rede LAN do Client_Site_OpenVPN está saindo pelo Server_Site_OpenVPN.

Juliana Mascarenhas
Data Scientist and Master in Computer Modeling by LNCC.
Computer Engineer
Gerenciadores de Pacotes em Python: Guia Completo sobre Pip e Conda para Iniciantes
Quando começamos a programar em Python, um dos primeiros desafios é gerenciar as bibliotecas (ou…
O que é CGNAT ?
O CGNAT na maioria das vezes utiliza o intervalo de endereços IP reservado para uso…
Tutorial: Como usar o WHOIS ou RDAP
O serviço WHOIS ou RDAP é uma ferramenta essencial para obter informações sobre domínios, IP…
Tutorial servidor de email com Postfix e Dovecot
Esse é um tutorial que vai apresentar uma configuração básica de um servidor de email…
Tutorial Instalar VNC em Linux Ubuntu
O acesso remoto é uma ferramenta indispensável para administradores e usuários que precisam gerenciar servidores…
Tutorial: Instale seu Servidor DNS no Linux com Bind9 Passo a Passo
Nesse tutorial vamos dar todo o passo a passo para que você instale uma configuração…
Mais Links: