Puis-je utiliser ufw pour configurer un port forward?

31

Im utilise actuellement ufw pour appliquer certaines règles de base du pare-feu. Est-il possible d'utiliser également ufw pour effectuer la redirection de port?

Plus précisément, je souhaite transférer le trafic entrant vers mon serveur (même machine exécutant ufw) sur le port 80 vers le port 8080. (trafic http transmis à tomcat)

Th

métallique
la source

Réponses:

50

Supposons que vous souhaitiez transférer les demandes allant vers 80 vers un serveur écoutant le port 8080.

Notez que vous devrez vous assurer que le port 8080 est autorisé, sinon ufw bloquera les requêtes redirigées vers 8080.

sudo ufw allow 8080/tcp

Il n'y a pas de commandes ufw pour configurer les ports vers l'avant, donc cela doit être fait via des fichiers de configuration. Ajoutez les lignes ci-dessous à /etc/ufw/before.rules, avant la filtersection, tout en haut du fichier:

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

Redémarrez ensuite et activez ufw pour démarrer au démarrage:

sudo ufw enable
ooshro
la source
7
pourriez-vous expliquer cette ligne par ligne s'il vous plaît? aussi, n'y a-t-il pas quelque chose comme ça ufw forward 80 to 8080? Je pensais que UFW n'était pas compliqué.
Tom
4
Il semble qu'il n'y ait pas de commandes ufw pour configurer les ports, donc cela doit être fait via des fichiers de configuration. Une description plus détaillée de la syntaxe du fichier de configuration est disponible sur: frozentux.net/iptables-tutorial/…
Juha Palomäki
Cela ne fonctionne pas pour moi, je reçois le message suivant dans /var/log/syslogaprès avoir loggin sur: [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. Il peut être utile de savoir qu'avant tout, j'ai refusé toutes les demandes entrantes en utilisant ufw deny incominget autorisé uniquement ssh,80,443. Quelqu'un pourrait-il s'il vous plaît conseiller quel est le problème?
Yuriy Nakonechnyy
1
@Yura J'ai eu le même problème (8080 a été bloqué quand j'ai regardé syslog). Courir a sudo ufw allow 8080/tcprésolu le problème pour moi.
Tim Swast
@TimSwast J'ai en quelque sorte résolu ou surmonté ce problème à ce moment-là, mais de toute façon merci beaucoup pour votre aide :)
Yuriy Nakonechnyy