it-swarm-es.com

¿Cómo configurar un firewall simple en Ubuntu?

¿Alguien podría dar algunos pasos simples con un ejemplo de configuración sobre cómo configurar un firewall simple en Ubuntu (usando solo la consola)? Solo se debe permitir el acceso ssh, http y https.

18
klew

Sudo ufw denegación predeterminada

Sudo ufw permite http

Sudo ufw permite https

Sudo ufw permitir ssh

Habilitar sudo ufw

20
Nerdfest

Utilice este script.

Simplemente decida si desea permitir ICMP (ping) entrante o no.

# Clear any existing firewall stuff before we start
iptables --flush
iptables -t nat --flush
iptables -t mangle --flush

# As the default policies, drop all incoming traffic but allow all
# outgoing traffic.  This will allow us to make outgoing connections
# from any port, but will only allow incoming connections on the ports
# specified below.
iptables --policy INPUT DROP
iptables --policy OUTPUT ACCEPT

# Allow all incoming traffic if it is coming from the local loopback device
iptables -A INPUT -i lo -j ACCEPT

# Accept all incoming traffic associated with an established
# connection, or a "related" connection
iptables -A INPUT -i eth0 -m state --state ESTABLISHED,RELATED -j ACCEPT

# Allow incoming connections
# SSH
iptables -A INPUT -p tcp -i eth0 --dport 22 -m state --state NEW -j ACCEPT
# HTTP
iptables -A INPUT -p tcp -i eth0 --dport 80 -m state --state NEW -j ACCEPT
# HTTPS
iptables -A INPUT -p tcp -i eth0 --dport 443 -m state --state NEW -j ACCEPT

# Allow icmp input so that people can ping us
iptables -A INPUT -p icmp -j ACCEPT

# Reject all other incoming packets
iptables -A INPUT -j REJECT
14
Mikeage

Como se señaló en los comentarios a otra respuesta, no desea perder su conexión antes de permitir el puerto ssh. Desde la página del manual:

"GESTIÓN REMOTA

Al ejecutar ufw enable o iniciar ufw a través de su script de inicio, ufw vaciará sus cadenas. Esto es necesario para que ufw pueda mantener un estado coherente, pero puede eliminar las conexiones existentes (por ejemplo, ssh). ufw admite agregar reglas antes de habilitar el firewall, por lo que los administradores pueden hacer:

ufw allow proto tcp from any to any port 22

antes de ejecutar "ufw enable". Las reglas aún se eliminarán, pero el puerto ssh se abrirá después de habilitar el firewall. Tenga en cuenta que una vez que ufw esté 'habilitado', ufw no eliminará las cadenas al agregar o eliminar reglas (pero lo hará al modificar una regla o cambiar la política predeterminada) ".

Así que aquí hay un enfoque que usa un script para configurarlo. Se cerrará la sesión cuando ejecute este script, pero una vez que lo haya ejecutado, podrá volver a iniciar sesión mediante ssh.

Ponga lo siguiente en un script y llámelo start-firewall.sh

#!/bin/sh
ufw allow ssh
ufw enable
ufw default deny
ufw allow http
ufw allow https

Y luego hazlo ejecutable y ejecútalo haciendo

$ chmod + x start-firewall.sh
$ Sudo ./start-firewall.sh

Para obtener más información, lea la página de manual .

8
Hamish Downer

Si se familiariza con las secuencias de comandos iptables, tendrá control total sobre todas las capacidades del firewall. No es tan amigable como Firestarter, pero se puede hacer en la consola con los editores nano/vi. Mira este tutorial dirigido a Ubuntu.

2
spoulson

Quicktables me ayudó a aprender las reglas de iptables. Simplemente ejecute el script y generará un script de iptables para usted ... luego puede abrirlo y ver los comandos asociados generados por las preguntas que le hizo. Es un gran recurso de aprendizaje.

Desafortunadamente, ya no se mantiene.

http://qtables.radom.org/

1
JP Richardson

Realmente me gusta usar firehol ( paquete ).

Para crear las reglas de configuración que desee, deberá editar el archivo/etc/default/firehol y cambiar START_FIREHOL = YES

Y querrá que su /etc/firehol/firehol.conf se vea así.

version 5

interface any IfAll
    client any AnyClient accept
    server "ssh http https" accept
    # Accept everything from trusted networks
    server anystateless AllInside accept src "10.3.27.0/24"

Una de las mejores cosas de firehol es el comando "probar". Puede ajustar su archivo de configuración y hacer un 'intento de firehol', si estaba conectado a través de ssh, y algo acerca de lo que cambió mató su acceso a la red, Firehol revertirá los cambios. Para que los cambios entren en vigor, debe decir confirmar.

1
Zoredache

Preferiría Shorewall . Es fácil de configurar pero flexible al mismo tiempo.

1
Artyom Sokolov

Quizás deberías echarle un vistazo a http://iptables-tutorial.frozentux.net/iptables-tutorial.html . También puede encontrar más información en lartc.org

0
hyperboreean