Cómo bloquear puertos específicos en Linux con UFW o firewalld

Para bloquear un puerto específico en Linux, añade una regla de firewall para el puerto y el protocolo que deseas bloquear. En un sistema Ubuntu que utiliza UFW, por ejemplo, sudo ufw deny 8080/tcpse bloquean las nuevas conexiones TCP entrantes al puerto 8080. En sistemas que utilizan firewalld, puedes eliminar una regla de puerto existente o añadir una regla de rechazo explícita. Lo importante es modificar el firewall que utiliza tu sistema, en lugar de mezclar reglas de UFW, firewalld y nftables de bajo nivel.

Antes de bloquear un puerto

Primero, confirme el número de puerto y si la aplicación utiliza TCP, UDP o ambos. Una regla TCP no bloquea automáticamente UDP en el mismo número. También puede verificar los sockets en escucha con:

sudo ss -lntup

Una regla de firewall controla el tráfico de red; no impide que la aplicación escuche localmente. Si no necesita el servicio en absoluto, detenerlo o deshabilitarlo suele ser mejor que depender únicamente de una regla de firewall.

Si se conecta a la máquina mediante SSH, proteja su regla de acceso remoto antes de habilitar o reforzar el cortafuegos. El manual actual de UFW advierte específicamente que habilitar UFW puede interrumpir las conexiones SSH existentes y recomienda agregar primero el permiso SSH necesario.

Bloquea un puerto con UFW

Ubuntu documenta UFW como su herramienta de configuración de cortafuegos predeterminada . UFW suele estar desactivado inicialmente, así que compruebe su estado antes de añadir o activar reglas.

1. Compruebe UFW y habilítelo de forma segura.

sudo ufw status

Si el resultado es Status: inactivey desea habilitar UFW, primero habilite el servicio de administración remota del que depende. Para un perfil OpenSSH estándar:

sudo ufw allow OpenSSH
sudo ufw enable
Terminal de Linux que muestra el estado de UFW como inactivo y luego habilita el firewall UFW.
Compruebe si UFW está activo antes de cambiar sus reglas, especialmente en una máquina administrada de forma remota.

2. Agregue una regla de denegación para el puerto.

Sustituya 8080por el puerto que desea bloquear. Especifique el protocolo para que la regla sea inequívoca:

sudo ufw deny 8080/tcp

Para UDP, utilice:

sudo ufw deny 8080/udp

Si una aplicación utiliza ambos protocolos, agregue ambas reglas. UFW también admite reject; a diferencia de una denegación silenciosa, un rechazo le indica al remitente que la conexión fue rechazada.

Terminal de Linux que muestra el comando sudo ufw deny 8080/tcp y confirmación de que se agregó la regla del firewall.
Una regla de denegación de UFW bloquea el tráfico TCP entrante al puerto seleccionado.

3. Verificar o eliminar la regla UFW

sudo ufw status numbered

La salida debería mostrar una entrada DENY IN para el puerto bloqueado. La sintaxis oficial de UFW también admite la eliminación de la regla repitiéndola con delete:

sudo ufw delete deny 8080/tcp
Terminal Linux que muestra el estado numerado de UFW con el puerto TCP 8080 denegado para IPv4 e IPv6.
Utilice la salida de estado numerada para confirmar que la regla UFW deseada está activa.

Bloquea un puerto con firewalld

Si su instalación de Linux utiliza firewalld, comience por encontrar la zona activa:

sudo firewall-cmd --get-active-zones
sudo firewall-cmd --zone=public --list-all

Sustituya publiclo siguiente si su interfaz pertenece a una zona diferente. Si el puerto 8080 se abrió explícitamente, elimine ese permiso y vuelva a cargar la configuración permanente:

sudo firewall-cmd --permanent --zone=public --remove-port=8080/tcp
sudo firewall-cmd --reload
Terminal de Linux que muestra la zona firewalld activa, la eliminación del puerto TCP 8080 y una recarga del firewall.
Con firewalld, realice el cambio en la zona activa correcta y recargue las reglas permanentes.

Si el puerto aún está permitido indirectamente por una definición de servicio, o si desea específicamente un bloqueo explícito, agregue una regla de rechazo enriquecida:

sudo firewall-cmd --permanent --zone=public --add-rich-rule='rule port port="8080" protocol="tcp" reject'
sudo firewall-cmd --reload
sudo firewall-cmd --zone=public --list-rich-rules

La documentación de reglas avanzadas de firewalld admite coincidencias de puertos con rejectacciones drop. Su manual firewall-cmd también explica las configuraciones permanentes y de tiempo de ejecución por separado.

Para eliminar ese bloqueo explícito de firewalld más adelante, elimine la misma regla enriquecida y vuelva a cargar:

sudo firewall-cmd --permanent --zone=public --remove-rich-rule='rule port port="8080" protocol="tcp" reject'
sudo firewall-cmd --reload

Confirme que el puerto ya no es accesible.

Vuelva sudo ss -lntupa ejecutar la prueba si desea comprobar si una aplicación sigue activa. A continuación, realice la prueba desde otra máquina en la red correspondiente. Si Netcat está instalado, una comprobación TCP puede tener este aspecto nc -vz SERVER_IP 8080. Realice la prueba desde la misma ruta de red que utilizan sus clientes reales; una prueba en localhost no demuestra que el tráfico externo esté bloqueado.

Si el servicio no debe estar expuesto, desactívelo o reconfigúrelo. Un cortafuegos es una capa de control de acceso, no un sustituto para eliminar los oyentes innecesarios.

Dejar un comentario

Cómo escanear códigos QR en un ordenador de escritorio Linux

Cómo escanear códigos QR en un ordenador de escritorio Linux

Escanea códigos QR en Linux con CoBang usando una cámara web o un archivo de imagen. Consulta las opciones de instalación, los pasos de configuración y las soluciones para el acceso a la cámara Flatpak.

Cómo cambiar la configuración de la cámara web en Linux con Cameractrls

Cómo cambiar la configuración de la cámara web en Linux con Cameractrls

Cambia la configuración de la cámara web en Linux con Cameractrls: ajusta la exposición, el color, la reducción de parpadeo y otros controles compatibles, y luego comprueba los modos de vídeo compatibles.

Cómo instalar PhpStorm en Linux: Toolbox, Tar.gz, Snap y AUR

Cómo instalar PhpStorm en Linux: Toolbox, Tar.gz, Snap y AUR

Instala PhpStorm en Linux con JetBrains Toolbox o el archivo tar.gz independiente, además de las opciones Snap y Arch AUR. Java ya viene incluido.

Cómo configurar paneles duales en XFCE 4

Cómo configurar paneles duales en XFCE 4

Crea un panel XFCE 4 independiente para cada pantalla, asigna el segundo panel a la salida correcta, colócalo y ajusta su tamaño, y añade los lanzadores y elementos de estado que necesites.

Cómo instalar Cisco Packet Tracer en Linux

Cómo instalar Cisco Packet Tracer en Linux

Descarga Cisco Packet Tracer 9.0.1 para Ubuntu de 64 bits, instala el paquete DEB con APT, acepta la licencia en la terminal e inicia sesión para comenzar un laboratorio.

Cómo recortar una imagen en Linux con GIMP

Cómo recortar una imagen en Linux con GIMP

Eliminar el fondo de una foto en Linux con GIMP: trazar el sujeto, eliminar el fondo seleccionado, mantener la transparencia y exportar un archivo PNG reutilizable.

Cómo hacer una copia de seguridad de un CD-ROM como imagen ISO en Linux

Cómo hacer una copia de seguridad de un CD-ROM como imagen ISO en Linux

Crea una imagen ISO de CD-ROM en Linux con GNOME Disks o dd. Identifica la unidad óptica, supervisa la copia, verifica la imagen y descubre cuándo un disco dañado o de audio requiere otra herramienta.

Descarga FlightGear gratis: Guía de instalación oficial

Descarga FlightGear gratis: Guía de instalación oficial

Descarga FlightGear gratis desde el sitio web oficial. Compara los paquetes para Windows, macOS y Linux, instala los archivos de datos y comienza tu primer vuelo.

OKSampler: Un muestreador de música gratuito y sencillo para ritmos de teclado.

OKSampler: Un muestreador de música gratuito y sencillo para ritmos de teclado.

OKSampler asigna clips MP3 a teclas del teclado y permite reproducir audio en bucle. Descubre qué hace este antiguo programa gratuito, dónde terminan sus funciones anteriores y qué debes comprobar antes de descargarlo.

Aplicación de escritorio de Google Tasks: Cómo usarla en un ordenador

Aplicación de escritorio de Google Tasks: Cómo usarla en un ordenador

Abre Google Tasks en un navegador, añade un acceso directo a Chrome o ábrelo como una aplicación, y gestiona tus tareas pendientes con fecha a través de Calendar y Gmail.