Tabla de Contenidos
Esta página ha sido traducida automáticamente. Por favor, ayude a mejorarla colaborando en las Traducciones.
7.4.1 UFW
La instalación de la UFW (abreviatura de “Uncomplicated Firewall” o “cortafuegos sin complicaciones”) le permite definir políticas de seguridad de la red, la creación de limitaciones o permisos para acceder a diferentes servicios o aplicaciones.
Instalación
root@server:~# apt-get install ufw
Configuración
La configuración del cortafuegos incorrecta puede bloquear completamente el acceso remoto a un servidor. Antes de introducir un comando comprobar que lo que ha escrito es exactamente lo que quiere y los posibles “efectos secundarios” no deseados!
La configuración de UFW se realiza a través de la línea de comandos.
La configuración predeterminada de UFW permite a nuestro servidor para iniciar las comunicaciones con el exterior (DEFAULT_OUTPUT_POLICY=“ACCEPT”), pero ignora cualquier intento de acceso al servidor desde fuera (DEFAULT_INPUT_POLICY=“DROP”). Esta configuración impide, por ejemplo, el acceso a un servidor remoto.
En primero lugar debe ser garantizado el acceso al servidor remoto por ssh:
root@server:~# ufw allow ssh/tcp
También es necesario activar el registro de eventos:
root@server:~# ufw logging on
Por último, el cortafuegos debe estar activado:
root@server:~# ufw enable Command may disrupt existing ssh connections. Proceed with operation (y|n)? y Firewall is active and enabled on system startup
A partir de este momento sólo se puede acceder al servidor de forma remota utilizando el protocolo ssh que utiliza el puerto de acceso remoto 22. Será negada a cualquier otro servicio disponible en el servidor.
Siempre se puede deshabilitar el UFW com el comando ufw disable
.
También puede eliminar todas las reglas con el comando ufw reset
.
Verificación
En cualquier momento usted puede comprobar el estado del cortafuego:
root@server:~# ufw status verbose Status: active Logging: on (low) Default: deny (incoming), allow (outgoing) New profiles: skip To Action From -- ------ ---- 22/tcp ALLOW IN Anywhere 22/tcp ALLOW IN Anywhere (v6)
En este caso, el cortafuegos sólo acepta conexiones desde el exterior en el puerto 22 (protocolo ssh).
Ejemplos de configuración
Sólo a modo de ejemplo se enumeran algunas configuraciones posibles para un servidor. Úselos bajo su propio riesgo: declino toda responsabilidad por su uso. Es la advertencia!
Para más detalles sobre los ajustes sugeridos, vea 2.1.1 Diagrama de la Red.
Ejemplo 1: abierto a todas las redes de servicios (Internet e Intranet)
Estos servicios pueden aceptar conexiones desde cualquier dirección.
Puerto | Servicio / Descripción | Configuración ufw | Referencia |
---|---|---|---|
22 | SSH / Secure Shell | ufw allow ssh/tcp | 2.3.2 Servidor Ssh |
25 | SMTP / Simple Mail Transfer Protocol | ufw allow smtp/tcp | 5.2.1 Servidor SMTP 5.2.2 Servidor SMTP com autenticación (sólo si se ha configurado con soporte SASL) |
443 | HTTPS / Hypertext Transfer Protocol over TLS/SSL | ufw allow https/tcp | 2.3.2 Servidor Ssh |
993 | IMAPS / Internet Message Access Protocol over TLS/SSL | ufw allow imaps/tcp | 5.1.1 Servidor IMAP/IMAPS |
Ejemplo 2: servicios abiertos sólo a la red interna (Intranet)
Esta configuración sólo acepta conexiones desde el mismo segmento de red que el servidor (192.168.1.0/24), tal como en el caso de una red interna o Intranet. La red debe ser protegida desde el exterior a través de otro cortafuegos.
root@server:~# ufw allow from 192.168.1.0/24 Rules updated
Ejemplo 3: Configuración Mixta (Intranet e Internet)
En este ejemplo, usted puede tener acceso a todos los servicios de la red interna (192.168.1.0/24), pero desde el exterior sólo se puede acceder a los servicios ssh y https:
root@server:~# ufw allow ssh Rules updated Rules updated (v6) root@server:~# ufw allow https Rules updated Rules updated (v6) root@server:~# ufw allow from 192.168.1.0/24 Rules updated
El perfil de la configuración es como sigue:
root@server:~# ufw status verbose Status: active Logging: on (low) Default: deny (incoming), allow (outgoing) New profiles: skip To Action From -- ------ ---- Anywhere ALLOW IN 192.168.1.0/24 22 ALLOW IN Anywhere 80 ALLOW IN Anywhere 443 ALLOW IN Anywhere 22 ALLOW IN Anywhere (v6) 80 ALLOW IN Anywhere (v6) 443 ALLOW IN Anywhere (v6)