El cortafuegos ufw es el más fácil de configurar. Su acrónimo uncomplicated firewall (cortafuegos sin complicaciones).
Instalación:
sudo apt-get install ufw
Por defecto, impide todo el tráfico entrante, pero permite el tráfico saliente. Equivale a escribir estas dos reglas:
sudo ufw default deny incoming sudo ufw default allow outgoing
Cada puerto admite los dos protocolos: tcp y udp. Al abrir un puerto por su número, se abren ambos. Para que se abra el protocolo correspondiente (tcp o udp). debemos indicarlo.
Añadiremos las excepciones creamos convenientes.
Permitir el puerto SSH:
sudo ufw allow 22/tcp
También se podría hacer, refieriéndonos al nombre del servicio, en lugar del puerto, de la siguiente forma:
sudo ufw allow ssh
En el caso del servidor web que tengamos instalado, Lighttpd. Podemos hacerlo de dos maneras, o abriendo directanente el puerto:
sudo ufw allow 80/tcp
o haciendo referencia al servicio correspondiente:
sudo ufw allow www
También tiene activado el protocolo cifs, que es el que usa el servidor Samba:
sudo ufw allow cifs
Para ver la lista completa de los servicios que ya trae predefinidos, escribiremos el siguiente comando:
sudo ufw app list
También lo vamos a hacer con los puertos de los servidores FTP (21), VPN (1723) y DLNA (8200), el servicio Webmin (10000):
sudo ufw allow 21/tcp sudo ufw allow 1723/tcp sudo ufw allow 8200/tcp sudo ufw allow 10000/tcp
En el caso de abrir varios puertos consecutivos (por ejemplo, del 8080 al 8083, no es necesario que lo hagamos de uno en uno; se pueden abre todos de una vez, de la siguiente forma:
sudo ufw allow 25010:25020
Para denegar denegar un servicio o servidor, utilizamos el comando deny. Por ejemplo, impedir el acceso al servicio webmin:
sudo ufw deny 10000/tcp
O denegar el acceso a un determinado host de nuestra red local, indicando su IP:
sudo ufw deny from 192.168.1.5
Una vez añadidas todas las reglas, se activara el cortafuegos:
sudo ufw enable
Comandos útiles en algún momento:
Desactivar el cortafuegos:
sudo ufw disable
Reiniciarlo:
sudo /etc/init.d/ufw restart
Mostrar su estado:
sudo ufw status verbose
Ejemplo de cómo borrar una regla que hemos activado:
sudo ufw delete allow 22/tcp