Use o comando firewall-cmd
.
Supondo que você esteja abrindo o firewall para o OpenVPN na zona padrão, execute os seguintes comandos. Se você estiver executando em uma zona não padrão, adicione --zone=<zone>
aos comandos.
Nota: Se você usar o padrão public
zone para seu adaptador de rede externo, sua interface de loopback também poderá ser mascarada (dependendo da versão de firewalld
em execução), o que pode causar problemas se você estiver executando um serviço (como mySQL) que é acessado localmente.
Primeiro, liste o que está aberto no momento:
# firewall-cmd --list-services
http https ssh
Em seguida, adicione o openvpn
service:
# firewall-cmd --add-service openvpn
success
Uma verificação rápida:
# firewall-cmd --list-services
http https openvpn ssh
Os itens acima permitirão que openvpn
funcione, o que você pode testar agora. No entanto, não durará mais reinicializações. Para torná-lo permanente, adicione a opção --permanent
:
# firewall-cmd --permanent --add-service openvpn'
success
Note que este último comando não abre a porta até a próxima reinicialização, então você precisa usar ambos os comandos.
Por fim, adicione o mascarado:
# firewall-cmd --add-masquerade
success
E torná-lo permanente após o reinício:
# firewall-cmd --permanent --add-masquerade
success
Confirme:
# firewall-cmd --query-masquerade
yes
Observe que, se sua conexão OpenVPN de entrada estiver em uma zona diferente da conexão com a Internet, o mascarado deverá estar no último e você precisará usar a opção --zone=<zone>
com os comandos --add-masquerade
.