En guise de solution de contournement bon marché sur un certain nombre de serveurs qui ne disposent pas du mail
commande, un script qui résonne les commandes SMTP dans une session telnet a été écrit. La partie pertinente du script ressemble à
telnet mailserver 25 << EOF
EHLO $HOST
MAIL FROM: root@$HOST
(and so on)
EOF
Cela échoue par intermittence, avec une "connexion fermée par l'hôte distant". UNE tcpdump
d'une session en échec confirme que le serveur de messagerie Postfix ferme la connexion immédiatement après l'envoi du 220
message de bienvenue. C'est-à-dire qu'aucune des redirection d'entrée n'a été effectuée sur le fil.
Jusqu’à présent, je n’ai pas été en mesure de cerner les conditions de cet échec, mais je peux confirmer que l’utilisation de nc
(netcat) fonctionne parfaitement, à chaque fois.
Un certain nombre de questions sur ce site et Stack Overflow sont catégoriques: nc
est le bon outil pour ce travail. Je suis intéressé par Pourquoi c'est le cas.
- Pourquoi l'échec est-il intermittent?
- Pourquoi le serveur de messagerie raccroche-t-il avant qu'une seule ligne d'entrée provenant du redirigé ne soit envoyée sur le réseau?
- Pourquoi
telnet
pause maisnetcat
ne pas?