¿Puedo usar ufw para configurar un puerto hacia adelante?

31

Actualmente estoy usando ufw para aplicar algunas reglas básicas de firewall. ¿Es posible usar también ufw para reenviar puertos?

Específicamente, quiero reenviar el tráfico entrante a mi servidor (la misma máquina que ejecuta ufw) en el puerto 80 al puerto 8080. (tráfico http reenviado a tomcat)

Th

cascado
fuente

Respuestas:

50

Supongamos que desea reenviar solicitudes que van a 80 a un servidor que escucha en el puerto 8080.

Tenga en cuenta que deberá asegurarse de que el puerto 8080 esté permitido; de lo contrario, ufw bloqueará las solicitudes que se redirigen a 8080.

sudo ufw allow 8080/tcp

No hay comandos ufw para configurar el puerto hacia adelante, por lo que debe hacerse a través de archivos de configuración. Agregue las líneas a continuación /etc/ufw/before.rules, antes de la filtersección, justo en la parte superior del archivo:

*nat
:PREROUTING ACCEPT [0:0]
-A PREROUTING -p tcp --dport 80 -j REDIRECT --to-port 8080
COMMIT

Luego reinicie y habilite ufw para comenzar en el arranque:

sudo ufw enable
ooshro
fuente
77
¿podría explicar esta línea por línea por favor? Además, ¿no hay algo así ufw forward 80 to 8080? Pensé que UFW no era complicado.
Tom
44
Parece que no hay comandos ufw para configurar los puertos hacia adelante, por lo que debe hacerse a través de archivos de configuración. Una descripción más detallada sobre la sintaxis del archivo de configuración está disponible en: frozentux.net/iptables-tutorial/…
Juha Palomäki
Que no funciona para mí, recibo siguiente mensaje en /var/log/syslogdespués de girar autenticarte en: [52627.259812] [UFW BLOCK] IN=eth0 OUT= MAC=xxx SRC=xxx DST=xxx LEN=60 TOS=0x00 PREC=0x00 TTL=59 ID=59278 DF PROTO=TCP SPT=53997 DPT=8080 WINDOW=14600 RES=0x00 SYN URGP=0. Puede ser útil saber que antes de todo, negué todas las solicitudes entrantes ufw deny incomingy solo las permití ssh,80,443. ¿Podría alguien informarme cuál es el problema?
Yuriy Nakonechnyy
1
@Yura Tuve el mismo problema (8080 estaba bloqueado cuando miré syslog). Correr sudo ufw allow 8080/tcpsolucionó el problema para mí.
Tim Swast
@TimSwast De alguna manera resolví o superé este problema en ese momento, pero de todos modos muchas gracias por tu ayuda :)
Yuriy Nakonechnyy