web-dev-qa-db-fra.com

Le port de transfert de 80 à 9 000 ne fonctionne pas

J'essaie d'héberger une application sur Ubuntu 14.04 et je souhaite rediriger le trafic de 80 à 9000 personnes.

Sudo iptables -A INPUT -p tcp --dport 80 -j ACCEPT
Sudo iptables -A INPUT -p tcp --dport 9000 -j ACCEPT
Sudo iptables -t nat -A PREROUTING -p tcp --dport 80 -j REDIRECT --to 9000

J'ai exécuté ces commandes mais rien ...

lala:/etc/init.d$ Sudo iptables -L
Chain INPUT (policy ACCEPT)
target     prot opt source               destination         
ACCEPT     tcp  --  anywhere             anywhere             tcp dpt:http
ACCEPT     tcp  --  anywhere             anywhere             tcp dpt:9000

Chain FORWARD (policy ACCEPT)
target     prot opt source               destination         

Chain OUTPUT (policy ACCEPT)
target     prot opt source               destination   

Aucune suggestion? Je fais cela depuis un moment mais j'ai redémarré le serveur et ça ne marche plus hmhm

Cela fonctionne si je vais à www.domaine: 9000

2
Reeebuuk
Sudo iptables -L -vt nat

m'a montré combien de règles de PREROUTING j'ai appliquées à iptables et avec

iptables -t nat -D PREROUTING 1 

J'ai supprimé la règle de routage copiée accidentellement 80-> 8080.

0
Reeebuuk

Pensez à utiliser le pare-feu simple, plutôt que d'essayer de créer directement vos règles de chaîne. Découvrez l'utilisation d'ufw ici:

https://help.ubuntu.com/lts/serverguide/firewall.html

Ajoutez une section de filtre avant dans /etc/ufw/before.rules(top du fichier):

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

Vérifiez également vos paramètres sysctl:

Sudo vim /ufw/sysctl.conf 

assurez-vous que le transfert de port est activé.

net.ipv4.ip_forward=1

Enregistrez le fichier, puis redémarrez ufw.

1
Siraj