Isso é o que eu uso, funciona bem sempre.
Uma combinação de vários tutoriais.
Testado no Ubuntu 16.04LTS também.
Etapa A - Certifique-se de que o ufw esteja instalado
sudo apt-get install ufw
Etapa B - Configure suas interfaces de rede .
sudo nano /etc/network/interfaces
Configure o arquivo interfaces para algo assim abaixo:
# This file describes the network interfaces available on your system
# and how to activate them. For more information, see interfaces(5).
source /etc/network/interfaces.d/*
# The loopback network interface
auto lo
iface lo inet loopback
# The WAN primary network interface
iface eth0 inet static
address 182.xxx.xxx.xxx
netmask xxx.xxx.xxx.xxx
gateway xxx.xxx.xxx.xxx
#LAN side interface
auto eth1
iface eth1 inet static
address 192.168.0.1
netmask 255.255.255.0
network 192.168.0.0
broadcast 192.168.0.255
address 192.168.0.1
Salve o arquivo selecionando CTRL-X do nano ou de qualquer outro editor de sua preferência.
Etapa C - Permitir encaminhamento de IP .
Defina o encaminhamento.
Edite o arquivo /etc/sysctl.conf
sudo nano /etc/sysctl.conf
Remova o comentário nesta linha # net.ipv4.ip_forward=1
para que seja net.ipv4.ip_forward=1
Salve as alterações e vá para a próxima etapa.
Etapa D - Regras de mascaramento / encaminhamento
sudo iptables -t nat -A POSTROUTING -o eth0 -j MASQUERADE
sudo iptables -A FORWARD -i eth0 -o eth1 -m state --state RELATED,ESTABLISHED -j ACCEPT
sudo iptables -A FORWARD -i eth1 -o eth0 -j ACCEPT
Persiste iptables muda
sudo su
sudo iptables-save > /etc/iptables.rules
sudo nano /etc/network/if-pre-up.d/iptables
Digite este conteúdo:
#!/bin/sh
iptables-restore < /etc/iptables.rules
exit 0
Salvar alterações
Então edite / crie o próximo arquivo iptables
sudo nano /etc/network/if-post-down.d/iptables
Digite este conteúdo:
#!/bin/sh
iptables-save -c > /etc/iptables.rules
if [ -f /etc/iptables.rules ]; then
iptables-restore < /etc/iptables.rules
fi
exit 0
Salvar alterações.
Tornar ambos os arquivos executáveis
sudo chmod +x /etc/network/if-post-down.d/iptables
sudo chmod +x /etc/network/if-pre-up.d/iptables
Passo E - Finalize com a configuração do ufw
sudo nano /etc/default/ufw
Altere a política de encaminhamento de parâmetros para aceitar
DEFAULT_FORWARD_POLICY="ACCEPT"
Salvar alterações.
Eu tenho meu SSH na porta 49870, então também permiti que ufw aceitasse conexões nessa porta:
sudo ufw allow 49870
Etapa F - Não se esqueça de ativar o ufw .
sudo ufw enable
Nesta fase, basta reiniciar o seu sistema.
Em seguida, todos os dispositivos da LAN podem usá-lo como gateway principal.
Em uma nota lateral, ufw é muito conveniente para gerenciar as configurações do firewall.