Ubuntu 14.04 como gateway / roteador e firewall


16

Minha configuração atual do sistema é o Ubuntu 14.04 Desktop 64 Bit e estou usando a Internet de um roteador usando um IP público

eth0 - WAN Public IP 182.x.x.x  
eth1 - LAN private IP 192.168.0.1

Agora, quero distribuir essa conexão a outros computadores usando meu sistema como a Gateway, Meu IP do sistema é 192.168.0.1e outros computadores na rede estão usando IP estático 192.168.0.2e 192.168.0.255 como statice / ou DHCP.

Também quero configurar um firewall no meu sistema para poder monitorar e controlar o tráfego de outros sistemas na rede.

Respostas:


15
  1. Abra um Terminal Ctrl+ Alt+T

  2. Digite o seguinte comando para editar o interfacesarquivo:

    sudo vim /etc/network/interfaces
    
  3. Edite o arquivo com as seguintes linhas: (adicione seu netmaske gateway)

    auto lo 
    iface lo inet loopback
    
    auto eth0
    iface eth0 inet static
    address 182.x.x.x 
    netmask  x.x.x.x 
    gateway x.x.x.x
    
    auto eth1
    iface eth1 inet static 
    address 192.168.0.1
    netmask x.x.x.x
    
  4. Agora edite /etc/sysctl.confe descomente:

    # net.ipv4.ip_forward=1
    

    para que ele leia:

    net.ipv4.ip_forward=1
    

    e salve-o digitando

    sudo sysctl -p /etc/sysctl.conf

  5. Para habilitar o mascaramento de IP, digite o seguinte conjunto de comandos no terminal:

    sudo iptables -t nat -A POSTROUTING -o eth0 -j MASQUERADE
    
    sudo iptables -A FORWARD -i eth1 -o eth0 -m state --state RELATED,ESTABLISHED -j ACCEPT
    
    sudo iptables -A FORWARD -i eth1 -o eth0 -j ACCEPT
    

Atualização: Corrija um comando "-–state" estranho, causando falha no comando e corrija o MASQUERADE nat para eth0 (interface wan)


fiz tudo conforme recomendado ... mas se eu editar / etc / network / interfaces e reiniciar o serviço, ele se conectará automaticamente ao eth1 e não à Internet via eth0. Se eu editar o connectio usando o modo GUI, ele se conectará à Internet usando eth0. Agora, o problema é que não consigo conectar meu computador cliente usando o IP 192.168.0.5/nm.255.255.255.0/gw.192.168.0.1 à Internet. alguma sugestão?
Santi Varghese

3
Quero acrescentar que, depois de alterar a linha net.ipv4.ip forward=1, você deseja executar sudo sysctl -p /etc/sysctl.confpara que o novo valor entre em vigor.
Samuel Li

2
Você ainda trocou os dispositivos nas duas últimas linhas na etapa 5 e não mencionou a segurança padrão (por exemplo, o encaminhamento deve ter uma política DROP).
chreekat

3

O comentário de @ chreekat está correto, de que os adaptadores Ethernet foram trocados na etapa 5 da resposta da @ Anbu e, como mostrado (em 21/02/2017), cria UM FURO ENORME DE SEGURANÇA que permite acesso irrestrito à rede privada por qualquer pessoa na rede pública .

A configuração corrigida para a etapa 5 é mostrada abaixo.

Teoria da operação: (Regra # 2) Pacotes de entrada da rede pública (eth0) são aceitos para encaminhamento para a rede privada (eth1) se e somente se o pacote público de entrada estiver relacionado a uma conversa que foi estabelecida por um host em a rede privada. (Regra nº 3) Aceite todos os pacotes que entram na rede privada (eth1) e encaminhe-os para a rede pública (eth0).

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

0

É isso que eu uso, funciona bem sempre. Uma combinação de vários tutoriais. Testado no Ubuntu 16.04LTS também.

Etapa A - Verifique se o ufw está instalado

sudo apt-get install ufw

Etapa B - Configure suas interfaces de rede .

sudo nano /etc/network/interfaces

Configure o arquivo de interfaces para algo como isto 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 no nano ou em 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=1para que seja net.ipv4.ip_forward=1 Salvar 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

Persistir alterações no iptables

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 Em seguida, 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

Salve as alterações. Tornar os dois arquivos executáveis

sudo chmod +x /etc/network/if-post-down.d/iptables
sudo chmod +x /etc/network/if-pre-up.d/iptables

Etapa E - Finalize com a configuração ufw

sudo nano /etc/default/ufw

Alterar política de encaminhamento de parâmetro para aceitar

DEFAULT_FORWARD_POLICY="ACCEPT"

Salve as alterações.

Eu tenho meu SSH na porta 49870, então também permiti ao ufw aceitar conexões nessa porta:

sudo ufw allow 49870

Etapa F - Não esqueça de ativar o ufw .

sudo ufw enable

Nesta fase, basta reiniciar o sistema. Todos os dispositivos LAN podem usá-lo como gateway principal. Em uma nota lateral, o ufw é muito conveniente para gerenciar configurações de firewall.

Ao utilizar nosso site, você reconhece que leu e compreendeu nossa Política de Cookies e nossa Política de Privacidade.
Licensed under cc by-sa 3.0 with attribution required.