![Ich habe den Sendmail-Dienst gestoppt und Postfix gestartet. Sendmail wird immer noch in den E-Mail-Protokollen angezeigt?](https://rvso.com/image/718153/Ich%20habe%20den%20Sendmail-Dienst%20gestoppt%20und%20Postfix%20gestartet.%20Sendmail%20wird%20immer%20noch%20in%20den%20E-Mail-Protokollen%20angezeigt%3F.png)
Auf diesem Server sind sowohl Sendmail als auch Postfix installiert. Sendmail läuft, funktioniert aber nicht richtig. Ich habe den Sendmail-Dienst gestoppt und Postfix gestartet. Ich habe bestätigt, dass nur Postfix läuft, indem ich die Ausgabe dessen überprüft habe, was auf Port 25 lauscht.
lsof -i :25
COMMAND PID USER FD TYPE DEVICE SIZE/OFF NODE NAME
master 119640 root 12u IPv4 28103863 0t0 TCP localhost:smtp (LISTEN)
master 119640 root 13u IPv6 28103864 0t0 TCP localhost:smtp (LISTEN)
Dann teste ich das Versenden von Mails:
echo "My message" | mail -s testing [email protected]
Es kommt nicht im Posteingang von root an. Also schaue ich mir die Protokolle unter /var/log/maillog an und sehe, dass sendmail immer noch verwendet wird:
Feb 26 16:18:13 server sendmail[1582]: w1QLIC8N001582: [email protected], ctladdr=root (0/0), delay=00:00:01, xdelay=00:00:01, mailer=relay, pri=30233, relay=exchangeserver.domain. [x.x.x.x], dsn=2.0.0, stat=Sent (<201802262118.w1QLIC8N001582@[email protected]> Queued mail for delivery)
Wie ist das möglich?
Antwort1
Das mail
Programm wird ausgeführt sendmail
, um die E-Mail zuzustellen (im Client-Modus ist dabei kein Abhörport geöffnet). Lesen Sie diemanpagefür detaillierte Informationen. Sie können den MDA ändern, indem Sie die sendmail
Variable festlegen:
sendmail
Um ein alternatives Mail-Zustellungssystem zu verwenden, setzen Sie diese Option auf den vollständigen Pfadnamen des zu verwendenden Programms. Dies sollte mit Vorsicht verwendet werden.
$ sendmail=/usr/bin/someothersendmail mail [email protected]
Subject: asdf
... and so on
Da Mail jedoch erwartet, dass der MDA die Optionen von sendmail erkennt, sehe ich darin keinen wirklichen Nutzen.
Eine weitere Möglichkeit ist die Verwendung einesexterner SMTP-Serveranstatt sendmail
.
$ echo "This is the message body and contains the message" | mailx -v \
> -r "[email protected]" \
> -s "This is the subject" \
> -S smtp="mail.example.com:587" \
> -S smtp-use-starttls \
> -S smtp-auth=login \
> -S smtp-auth-user="[email protected]" \
> -S smtp-auth-password="abc123" \
> -S ssl-verify=ignore \
> [email protected]
Antwort2
Diese Protokollzeile stammt nicht von einem Computer, der TCP-Port 25 abhört. Es sieht so aus, als ob Root E- crontab
Mails direkt über Sendmail sendet. Oder es handelt sich um einen nicht standardmäßigen, Root-eigenen Hintergrundprozess.