Tips Seguridad Firewall (UFW)

El presente instructivo tiene como finalidad la instalación y configuración básica de Firewall con iptables utilizando UFW.

Requisitos:

  • Se debe contar con suficiente privilegios para la instalación de aplicativos

Configuraciones Relacionados:

  • Instalación y configuración de Fail2ban
  • Iptables con geoIP
  • Plataforma:

    • Equipos de arquitectura 64 bits
    • Sistema operativo ‘GNU/Linux’ Debian versión 8.0

    Aplicaciones:

    • ufw -> 0.33-2

    Instalación de Dependencias

    operador@servidor:~/$ sudo aptitude install ufw


    Activación

    1. Verificar el estatus del firewall

    operador@servidor:~/# ufw status
    Status: inactive

    2. Activar el firewall:

    operador@servidor:~/# ufw enable
    Firewall is active and enabled on system startup

    3. Verificar activas y reglas por defecto

    operador@servidor:~/# ufw status verbose
    Status: active
    Logging: on (low)
    Default: deny (incoming), allow (outgoing)
    New profiles: skip
    

    Nota: Al activar el firewall se cargan las reglas por defecto: negar (entrante) y permitir (saliente)
    4.- Activar las reglas por defecto:
    #Permitir el tráfico saliente

    operador@servidor:~/# ufw default allow outgoing

    #Bloquear el tráfico entrante

    operador@servidor:~/# ufw default deny incoming

    Configuración

    Crear Reglas Básicas

    1. Acceder vía ssh desde otro equipo (estacion) al servidor con las reglas de UFW activas:

    operador@estacion:~/# ssh operador@servidor

    2. Verificar bitácora (log’s) de UFW en el servidor:

    operador@servidor:~/# tail -f /var/log/ufw.log
    Sep  2 09:27:32 servidor kernel: [ 5154.793459] [UFW BLOCK] IN=eth0 
    OUT= MAC=00:11:22:33:44:55:66:aa:bb:cc:dd:ee:ff:08:00 SRC=192.168.1.3 DST=192.168.1.2 LEN=60 TOS=0x00 
    PREC=0x00 TTL=64 ID=33306 DF PROTO=TCP SPT=37449 DPT=22 WINDOW=29200 RES=0x00 SYN URGP=0 
    

    Donde:

    – Se observar la acción del UFW -> [UFW BLOCK]
    – MAC destino (server) -> 00:11:22:33:44:55:66
    – MAC origen (estacion) -> aa:bb:cc:dd:ee:ff
    – IP origen (estacion) -> SRC=192.168.1.3
    – MAC destino (server) -> DST=192.168.1.2

    3. Habilitar el acceso servicio SSH (puerto 22)

    operador@servidor:~/# ufw allow ssh
    Rule added
    Rule added (v6)
    

    Nota: UFW conoce que el “nombre” de los servicios y los puertos predeterminados, ya que los mismos se encuentran registrados en el catálogo ubicado en /etc/services, el cual contine información que permiten obtener números de puerto a partir de nombres de servicio y viceversa.

    4. Habilitar el servicio HTTP utilizando el puerto (80):

    operador@servidor:~/# ufw allow 80
    Rule added
    Rule added (v6)
    

    5. Verificar los cambios:

    operador@servidor:~/# ufw status verbose
    Status: active
    Logging: on (low)
    Default: deny (incoming), allow (outgoing)
    New profiles: skip
    
    To                         Action      From
    --                         ------      ----
    22                         ALLOW IN    Anywhere
    80                         ALLOW IN    Anywhere
    22 (v6)                    ALLOW IN    Anywhere (v6)
    80 (v6)                    ALLOW IN    Anywhere (v6)
    

    Nota: De igual forma se puede utilizar una serie de reglas predefinidas de UFW para los servicios conocidos, ejemplo: HTTPS utiliza por defecto puerto 443, ftp por defecto puerto 21, sftp por defecto puerto 115, entre otros

    Reglas Avanzadas

    1. Habilitar conexión por rangos de puertos

    operador@servidor:~/# ufw allow 1000:2000/tcp
    operador@servidor:~/# ufw allow 1000:2000/udp

    2. Habilitar conexión por direcciones IP

    operador@servidor:~/# ufw allow from 192.168.1.100

    3. Habilitar conexión por dirección IP en un puerto específico (mysql)

    operador@servidor:~/# ufw allow from 192.168.1.100 to any port 3306

    4. Habilitar conexión por subredes (caso de conexión VPN)

    operador@servidor:~/# ufw allow from 192.168.1.100/24

    5. Habilitar conexión por rango dirección IP en un puerto específico (postgresql)

    operador@servidor:~/# ufw allow from 192.168.1.100/24 to any port 5432

    6.Habilitar conexión por interfaz de red específica (caso interfaz servicio y pública)

    operador@servidor:~/# ufw allow in on eth0 to any port 3306

    Borrar Reglas

    1. Borrar regla acceso servicio SSH

    operador@servidor:~/# ufw delete allow ssh

    2. Mostrar los números de las reglas:

    operador@servidor:~/# ufw status numbered
    Status: active
    
         To                         Action      From
         --                         ------      ----
    [ 1] 22                         ALLOW IN    Anywhere
    [ 2] 80                         ALLOW IN    Anywhere
    [ 3] 22 (v6)                    ALLOW IN    Anywhere (v6)
    [ 4] 80 (v6)                    ALLOW IN    Anywhere (v6)
    

    3. Borrar reglas por número (en éste caso la regla a borrar es la 2 (acceso puerto 80)

    operador@servidor:~/# ufw delete 2
    Deleting:
     allow 80
    Proceed with operation (y|n)?y
    Rule deleted
    

    4. Resetear todas las reglas y desactiva el firewall:

    operador@servidor:~/# ufw reset
    Resetting all rules to installed defaults. Proceed with operation (y|n)? y
    Backing up 'before6.rules' to '/etc/ufw/before6.rules.20160902_104015'
    Backing up 'user.rules' to '/lib/ufw/user.rules.20160902_104015'
    

    5. Desactivar firewall UFW

    operador@servidor:~/# ufw disable

    Nota: UFW posee un cliente gráfico “GUFW”, para instalarlo basta con ejecutar: # aptitude install gufw
    1. Inicio del aplicativo gufw:
    gufw_1

    2. Activación (es necesario privilegios de root) del aplicativo gufw:
    gufw_2

    Enlaces:

    Uncomplicated Firewall (ufw)
    How To Set Up a Firewall with UFW on Ubuntu 14.04
    Configure firewall with ufw

    Anuncios

Responder

Introduce tus datos o haz clic en un icono para iniciar sesión:

Logo de WordPress.com

Estás comentando usando tu cuenta de WordPress.com. Cerrar sesión / Cambiar )

Imagen de Twitter

Estás comentando usando tu cuenta de Twitter. Cerrar sesión / Cambiar )

Foto de Facebook

Estás comentando usando tu cuenta de Facebook. Cerrar sesión / Cambiar )

Google+ photo

Estás comentando usando tu cuenta de Google+. Cerrar sesión / Cambiar )

Conectando a %s