Port en avant vers un port sur la même machine

24

J'exécutais un service sur le port 25570, je le modifie maintenant pour qu'il s'exécute sur le port 25565, mais je veux toujours que les personnes qui tentent d'y accéder sur l'ancien port aient accès au service. Je voudrais donc transmettre le port 25570 à 25565 sur la même machine.

Je sais qu'il y a beaucoup de questions qui parlent de transfert vers une autre machine mais je me demandais si la méthode était différente lors de l'utilisation de la même machine?

Sean Bannister
la source

Réponses:

27
iptables -t nat -A PREROUTING -p tcp --dport 25570 -j REDIRECT --to-port 25565

Cela suppose que vous n'acheminez pas le trafic d'un réseau entier via cette case et que si vous l'étiez, vous ne vous attendez pas à ce que le trafic destiné à d'autres hôtes soit sur ce port.

RobotHumains
la source
3
Comment cela peut-il être annulé?
Marco Lavagnino
1
digitalocean.com/community/tutorials/… - poser une question séparée
RobotHumans
22

Il convient de noter que la réponse acceptée ne s'applique qu'aux autres hôtes du réseau se connectant à la machine exécutant iptables. Il ne redirige pas le port pour les clients exécutés sur la machine iptables essayant de se connecter au port 25570 (par exemple).

Ces entrées transmettront le port pour les connexions provenant du réseau ou de l'hôte local exécutant les services.

sudo iptables -t nat -I PREROUTING -p tcp --dport 443 -j REDIRECT --to-ports 8443
sudo iptables -t nat -I OUTPUT -p tcp -o lo --dport 443 -j REDIRECT --to-ports 8443
Robert Goley
la source
1
Merci pour cela! Sans cet ajout, je n'aurais pas pu obtenir ma boîte Vagrant pour demander le site qu'il servait en utilisant le même port en interne (à celui de la machine hôte), c'est-à-dire HOST = localhost: 9000 et maintenant GUEST = localhost: 9000 (qui itinéraires vers: 80)
Pebbl