Instalar y configurar el cortafuegos UFW

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