Ubuntu 14.04 como puerta de enlace / enrutador y firewall

16

Mi configuración actual del sistema es Ubuntu 14.04 Desktop 64 Bit, y estoy usando Internet desde un enrutador usando una IP pública

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

Ahora quiero distribuir esta conexión a otras computadoras que usan mi sistema como Gateway, Mi IP del sistema 192.168.0.1y otras computadoras en la red están usando una IP estática 192.168.0.2y 192.168.0.255 como staticy / o DHCP.

También quiero configurar un firewall en mi sistema para poder monitorear y controlar el tráfico de otros sistemas en la red.

Santi Varghese
fuente

Respuestas:

15
  1. Abrir una terminal Ctrl+ Alt+T

  2. Ingrese el siguiente comando para editar el interfacesarchivo:

    sudo vim /etc/network/interfaces
    
  3. Edite el archivo con las siguientes líneas: (agregue su netmasky 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. Ahora edite /etc/sysctl.confy descomente:

    # net.ipv4.ip_forward=1
    

    para que se lea:

    net.ipv4.ip_forward=1
    

    y guárdelo ingresando

    sudo sysctl -p /etc/sysctl.conf

  5. Para habilitar el enmascaramiento de IP, ingrese el siguiente conjunto de comandos en la 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
    

Actualización: Repare el extraño "-–state" que hace que el comando falle y arregle nat MASQUERADE a eth0 (interfaz wan)

Anbu
fuente
hice todo como se aconseja ... pero si edito / etc / network / interfaces y reinicio el servicio, se conecta automáticamente a eth1 y no a Internet a través de eth0. Si edito connectio usando el modo GUI, se conecta a internet usando eth0. Ahora el problema es que no puedo conectar mi computadora cliente usando IP 192.168.0.5/nm.255.255.255.0/gw.192.168.0.1 a internet. ¿cualquier sugerencia?
Santi Varghese
3
Quiero agregar que después de cambiar la línea net.ipv4.ip forward=1, desea ejecutar sudo sysctl -p /etc/sysctl.confpara que el nuevo valor surta efecto.
Samuel Li
2
Todavía tiene los dispositivos intercambiados en las últimas dos líneas en el paso 5, y no tiene ninguna mención de la seguridad predeterminada (es decir, el reenvío debe tener una política DROP).
chreekat
3

El comentario de @ chreekat es correcto de que los adaptadores Ethernet se intercambian en el paso 5 de la respuesta de @ Anbu, y como se muestra (a partir del 21/02/2017) crea un ENORME AGUJERO DE SEGURIDAD que permite el acceso sin restricciones a la red privada por cualquier persona en la red pública .

La configuración corregida para el paso 5 se muestra a continuación.

Teoría de operación: (Regla # 2) Los paquetes que ingresan desde la red pública (eth0) se aceptan para reenviarlos a la red privada (eth1) si y solo si el paquete público de ingreso está relacionado con una conversación establecida por un host en La red privada. (Regla # 3) Acepte todos los paquetes que ingresan desde la red privada (eth1) y reenvíelos a la red 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
Jim Fischer
fuente
0

Esto es lo que uso, funciona bien siempre. Una combinación de varios tutoriales. Probado en Ubuntu 16.04LTS también.

Paso A: asegúrese de que ufw esté instalado

sudo apt-get install ufw

Paso B: configure sus interfaces de red .

sudo nano /etc/network/interfaces

Configure el archivo de interfaces para que sea algo como esto a continuación:

# 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

Guarde el archivo seleccionando CTRL-X de nano o cualquier otro editor que prefiera.

Paso C: permitir el reenvío de IP . Establecer el reenvío. Edite el archivo /etc/sysctl.conf

sudo nano /etc/sysctl.conf

Elimine el comentario en esta línea # net.ipv4.ip_forward=1para que sea net.ipv4.ip_forward=1 Guardar cambios y pasar al siguiente paso.

Paso D - Reglas de enmascaramiento / reenvío

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 los cambios de iptables

sudo su
sudo iptables-save > /etc/iptables.rules
sudo nano /etc/network/if-pre-up.d/iptables

Ingrese este contenido:

#!/bin/sh
iptables-restore < /etc/iptables.rules
exit 0

Guardar cambios Luego editar / crear el siguiente archivo de iptables

sudo nano /etc/network/if-post-down.d/iptables

Ingrese este contenido:

#!/bin/sh
iptables-save -c > /etc/iptables.rules
if [ -f /etc/iptables.rules ]; then
    iptables-restore < /etc/iptables.rules
fi
exit 0

Guardar cambios. Hacer que ambos archivos sean ejecutables

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

Paso E: finalizar con la configuración de ufw

sudo nano /etc/default/ufw

Cambiar la política de reenvío de parámetros para aceptar

DEFAULT_FORWARD_POLICY="ACCEPT"

Guardar cambios.

Tengo mi SSH en el puerto 49870, así que también permití que ufw acepte conexiones en ese puerto:

sudo ufw allow 49870

Paso F - No olvides habilitar ufw .

sudo ufw enable

En esta etapa, simplemente reinicie su sistema. Entonces todos los dispositivos LAN pueden usarlo como puerta de enlace principal. En una nota al margen, ufw es muy conveniente para administrar la configuración del firewall.

sukupandachu
fuente