18 votos

Cómo configurar el cortafuegos sencillo en Ubuntu?

Podría alguien dar algunos pasos sencillos con la configuración de ejemplo de cómo el programa de instalación simple firewall en Ubuntu (usando solo consola)? Sólo ssh, http y https, el acceso debería ser permitido.

20voto

Nerdfest Puntos 563

sudo ufw default deny

sudo ufw allow http

sudo ufw allow https

sudo ufw allow ssh

sudo ufw enable

14voto

Mikeage Puntos 2106

El uso de este script.

Sólo tiene que decidir si desea permitir la entrada de ICMP (ping) 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

8voto

zigdon Puntos 101

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

"LA ADMINISTRACIÓN REMOTA

Cuando se ejecuta ufw enable o a partir de ufw a través de su script de inicio, ufw va a lavar sus cadenas. Esto es necesario para ufw puede mantener un estado coherente, pero puede soltar las conexiones existentes (por ejemplo, ssh). ufw no admite la adición de 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 la ejecución de 'ufw enable'. Las reglas todavía se vacían, pero el puerto ssh será abierto después de activar el firewall. Por favor, tenga en cuenta que una vez ufw 'enabled', ufw no va a limpiar las cadenas cuando la adición o eliminación de reglas (pero cuando la modificación de una regla o cambiar el valor predeterminado de la política)."

Así que aquí es un enfoque que utiliza una secuencia de comandos para establecer. Usted recibirá la sesión cuando se ejecuta este script, pero tener ejecutar a continuación, puede conectarse de nuevo a través de ssh.

Pon lo siguiente en una secuencia de comandos y la llame start-firewall.sh

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

Y, a continuación, hacer que sea ejecutable y ejecutarlo haciendo

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

Para aprender más, lea la página man.

2voto

Kortuk Puntos 614

Si usted se familiarice con las secuencias de comandos iptables, usted tendrá el control total sobre todas las funciones de cortafuegos. Es en ninguna parte cerca tan amable como Firestarter, pero se puede hacer en la consola, con nano/vi editores. Echa un vistazo a este tutorial orientado hacia Ubuntu.

1voto

JP Richardson Puntos 113

Quicktables me ayudó a aprender las reglas iptables. Simplemente ejecutar la secuencia de comandos y de generar una secuencia de comandos de iptables para ti... entonces usted puede abrir y ver los comandos asociados generados por las preguntas que se le pide. Es un gran recurso de aprendizaje.

Por desgracia, ya no se mantiene.

http://qtables.radom.org/

EnMiMaquinaFunciona.com

EnMiMaquinaFunciona es una comunidad de administradores de sistemas en la que puedes resolver tus problemas y dudas.
Puedes consultar las preguntas de otros sysadmin, hacer tus propias preguntas o resolver las de los demás.

Powered by: