1 votes

Malgré plusieurs tentatives, impossible d'ouvrir le port 25

Cette question a peut-être été posée de nombreuses fois ici, mais après plusieurs tentatives infructueuses, je répète l'histoire :

Comment ouvrir le port 25 sur mon serveur fonctionnant sous CentOS.

Voici ma configuration iptables :

Chain INPUT (policy ACCEPT)
target     prot opt source               destination         
ACCEPT     all  --  anywhere             anywhere            
REJECT     all  --  anywhere             loopback/8          reject-with icmp-port-unreachable 
ACCEPT     all  --  anywhere             anywhere            state RELATED,ESTABLISHED 
ACCEPT     tcp  --  anywhere             anywhere            tcp dpt:http 
ACCEPT     tcp  --  anywhere             anywhere            tcp dpt:https 
ACCEPT     tcp  --  anywhere             anywhere            tcp dpt:ftp 
ACCEPT     tcp  --  anywhere             anywhere            state NEW tcp dpt:ssh 
ACCEPT     tcp  --  anywhere             anywhere            state NEW tcp dpt:ftp 
ACCEPT     icmp --  anywhere             anywhere            
LOG        all  --  anywhere             anywhere            limit: avg 5/min burst 5 LOG level debug prefix `iptables denied: ' 
DROP       all  --  anywhere             anywhere            

Chain FORWARD (policy ACCEPT)
target     prot opt source               destination         
DROP       all  --  anywhere             anywhere            

Chain OUTPUT (policy ACCEPT)
target     prot opt source               destination         
ACCEPT     all  --  anywhere             anywhere            
ACCEPT     tcp  --  anywhere             anywhere            tcp spt:ftp-data 

Voici la sortie de sudo netstat -plntu

Active Internet connections (only servers)
Proto Recv-Q Send-Q Local Address               Foreign Address             State       PID/Program name   
tcp        0      0 0.0.0.0:80                  0.0.0.0:*                   LISTEN      1283/nginx          
tcp        0      0 0.0.0.0:22                  0.0.0.0:*                   LISTEN      1039/sshd           
tcp        0      0 0.0.0.0:25                  0.0.0.0:*                   LISTEN      5981/master         
tcp        0      0 127.0.0.1:9000              0.0.0.0:*                   LISTEN      1297/php-cgi        
tcp        0      0 0.0.0.0:3306                0.0.0.0:*                   LISTEN      1177/mysqld         
tcp        0      0 :::22                       :::*                        LISTEN      1039/sshd           
tcp        0      0 :::25                       :::*                        LISTEN      5981/master 

Quand j'essaie de faire un telnet comme ceci

telnet 158.549.236.54 25

la connexion est interrompue. L'IP utilisée ici est aléatoire.

0 votes

Êtes-vous sûr qu'il n'y a pas de pare-feu à l'extérieur du serveur qui bloque cela ?

0 votes

Je ne pense pas. Y a-t-il un moyen de le vérifier ?

0 votes

Où est situé le serveur ? Comment est-il connecté au réseau ?

2voto

Corey Points 1

Le problème ne vient pas de votre pare-feu (vous semblez avoir ajouté une règle en haut qui autorise tout le trafic).

Votre principal problème est que le port 25 n'écoute que sur 127.0.0.1 et ::1, qui sont tous deux localhost. Vous devez configurer votre serveur SMTP pour qu'il écoute sur l'interface 158.549.236.54 (ou toutes les interfaces).

0 votes

Et comment je fais ça ?

0 votes

J'ai modifié ma configuration postfix mais ça ne fonctionne toujours pas. J'ai mis à jour ma réponse avec la sortie de sudo netstat -plntu

0voto

Alxandr Points 5413

La configuration semble correcte (le pare-feu autorise tout le trafic et le serveur de messagerie est exposé sur le port :25). Il est probable que votre fournisseur d'accès bloque le trafic vers le port de messagerie (pour lutter contre le spam).

Une solution de contournement consiste à ajouter une redirection NAT dans votre serveur d'un port aléatoire (disons 2525) vers le port 25. iptables -t nat -I PREROUTING -p tcp --dport 2525 -j REDIRECT --to-port 25 et essayez ensuite de vous connecter à ce port : telnet ip 2525

0voto

MadHatter Points 77602

Je soupçonne fortement que le problème vient des règles de votre pare-feu. Bien que la première règle semble tout autoriser, c'est pourquoi la sortie de iptables -L est plus qu'inutile pour diagnostiquer ces problèmes - il ne donne pas de restrictions d'interface .

Je pense que si vous collez la sortie de l'application iptables -L -n -v au lieu de cela, nous verrions que la première règle s'applique au trafic uniquement sur l'interface de bouclage.

Essayez

iptables -I INPUT 1 -p tcp --dport 25 -j ACCEPT

et voir si ça répare quelque chose.

SistemesEz.com

SystemesEZ est une communauté de sysadmins où vous pouvez résoudre vos problèmes et vos doutes. Vous pouvez consulter les questions des autres sysadmins, poser vos propres questions ou résoudre celles des autres.

Powered by:

X