Postfix mit SASL authentifikation
![](https://seccdn.libravatar.org/avatar/53c8cd5681c059b3fa13956417859330.jpg?s=120&d=mm&r=g)
Hallo, ich möchte das man in meinem Netzwerk mein Server Emails entgegen nimmt und falls ein Internetverbindung besteht raus schickt. Lokal auf dem Server funktioniert das, d.h ich kann mit mutt Mails schreiben, Postfix nimmt diese entgegen und mittel postfix flush schickt dieser die dann nach draußen. Nur von meinen Clients im Netzwerk funktioniert das ganze noch nicht. Folgendes habe ich probiert: /etc/postfix/main.cf .... smtpd_sasl_auth_enable = yes smtpd_recipient_restrictions = permit_mynetworks,permit_sasl_authenticated smtpd_sasl_application_name = smtpd /usr/lib/sasl2/smtpd.conf pwcheck_method: pwcheck mech_list: plain login Habe mich an die Anleitung aus /usr/share/doc/packages/postfix/README_FILES/SASL_README gehalten, nur leider funktioniert das bei mir so nicht. Die Mail-Clients sagen alle das der Server keine Verbindung akzeptiert, das kann ich auch nachvollziehen, da ein telnet server 25 nicht geht: client1:/ # telnet server Trying 192.168.0.3... telnet: connect to address 192.168.0.3: Connection refused Auf dem Server funktioniert jedoch ein telnet localhost 25. Die Firewall habe ich auch schon ausgeschalten... danach funktioniert aber auch nicht mehr. Hat jemand eine Idee was ich noch versuchen kann oder wo der Fehler liegt? Achso mein System: SuSE 9.2, Postfix, aktuelle YOU-Patches Gruß, Aaron
![](https://seccdn.libravatar.org/avatar/6cacaf4eb2894c2da1aaf9dab186ef82.jpg?s=120&d=mm&r=g)
Aaron Pohle wrote:
Folgendes habe ich probiert:
/etc/postfix/main.cf .... smtpd_sasl_auth_enable = yes smtpd_recipient_restrictions = permit_mynetworks,permit_sasl_authenticated smtpd_sasl_application_name = smtpd
Sieht in Ordnung aus, wie sieht denn mynetworks, myhostname aus?
/usr/lib/sasl2/smtpd.conf pwcheck_method: pwcheck mech_list: plain login
Habe mich an die Anleitung aus /usr/share/doc/packages/postfix/README_FILES/SASL_README gehalten, nur leider funktioniert das bei mir so nicht. Die Mail-Clients sagen alle das der Server keine Verbindung akzeptiert, das kann ich auch nachvollziehen, da ein telnet server 25 nicht geht:
client1:/ # telnet server Trying 192.168.0.3... telnet: connect to address 192.168.0.3: Connection refused
Dann ist das Problem nicht, was SASL macht, sondern wie Postfix an das Netzwerk gebunden ist. In der Standard-Konfiguration ist Postfix nur auf localhost gebunden. Wenn du das nicht geändert hast, dann sollte ein netstat -tulpen nur auf 127.0.0.1 einen Port 25 zeigen, jedoch nicht an die normale IP-Adresse. SASL kommt erst nach dem Verbindungsaufbau. Schließlich kannst du nur mit jemandem diskutieren, der auch zuhört. (^-^) main.cf inet_interfaces = all Sandy
![](https://seccdn.libravatar.org/avatar/53c8cd5681c059b3fa13956417859330.jpg?s=120&d=mm&r=g)
Moin Moin! Sandy Drobic schrieb am Dienstag, den 01. M�rz 2005:
Aaron Pohle wrote:
Folgendes habe ich probiert:
/etc/postfix/main.cf .... smtpd_sasl_auth_enable = yes smtpd_recipient_restrictions = permit_mynetworks,permit_sasl_authenticated smtpd_sasl_application_name = smtpd
Sieht in Ordnung aus, wie sieht denn mynetworks, myhostname aus?
/usr/lib/sasl2/smtpd.conf pwcheck_method: pwcheck mech_list: plain login
Habe mich an die Anleitung aus /usr/share/doc/packages/postfix/README_FILES/SASL_README gehalten, nur leider funktioniert das bei mir so nicht. Die Mail-Clients sagen alle das der Server keine Verbindung akzeptiert, das kann ich auch nachvollziehen, da ein telnet server 25 nicht geht:
client1:/ # telnet server Trying 192.168.0.3... telnet: connect to address 192.168.0.3: Connection refused
Dann ist das Problem nicht, was SASL macht, sondern wie Postfix an das Netzwerk gebunden ist. In der Standard-Konfiguration ist Postfix nur auf localhost gebunden. Wenn du das nicht geändert hast, dann sollte ein netstat -tulpen nur auf 127.0.0.1 einen Port 25 zeigen, jedoch nicht an die normale IP-Adresse. SASL kommt erst nach dem Verbindungsaufbau. Schließlich kannst du nur mit jemandem diskutieren, der auch zuhört. (^-^)
main.cf inet_interfaces = all
Danke für den Tipp, jetzt funktioniert ein telnet server 25 von allen Clients aus, nur beim abschicken einer EMail meldet der Server folgendes in der /var/log/mail: ... Mar 2 00:39:14 server postfix/smtpd[8853]: fatal: parameter "smtpd_recipient_restrictions": specify at least one working instance of: check_relay_domains, reject_unauth_destination, reject, defer or defer_if_permit Mar 2 00:39:15 server postfix/master[8834]: warning: process /usr/lib/postfix/smtpd pid 8853 exit status 1 Mar 2 00:39:15 server postfix/master[8834]: warning: /usr/lib/postfix/smtpd: bad command startup -- throttling Mar 2 00:39:46 server postfix/master[8834]: terminating on signal 15 Mar 2 00:39:47 server postfix/postfix-script: starting the Postfix mail system Mar 2 00:39:47 server postfix/master[8933]: daemon started -- version 2.1.5 Mar 2 00:39:51 server postfix/smtpd[8954]: fatal: parameter "smtpd_recipient_restrictions": specify at least one working instance of: check_relay_domains, reject_unauth_destination, reject, defer or defer_if_permit Mar 2 00:39:52 server postfix/master[8933]: warning: process /usr/lib/postfix/smtpd pid 8954 exit status 1 Mar 2 00:39:52 server postfix/master[8933]: warning: /usr/lib/postfix/smtpd: bad command startup -- throttling Mar 2 00:40:52 server postfix/smtpd[8973]: fatal: parameter "smtpd_recipient_restrictions": specify at least one working instance of: check_relay_domains, reject_unauth_destination, reject, defer or defer_if_permit Mar 2 00:40:53 server postfix/master[8933]: warning: process /usr/lib/postfix/smtpd pid 8973 exit status 1 Mar 2 00:40:53 server postfix/master[8933]: warning: /usr/lib/postfix/smtpd: bad command startup -- throttling Mar 2 00:41:53 server postfix/smtpd[8979]: fatal: parameter "smtpd_recipient_restrictions": specify at least one working instance of: check_relay_domains, reject_unauth_destination, reject, defer or defer_if_permit Mar 2 00:41:54 server postfix/master[8933]: warning: process /usr/lib/postfix/smtpd pid 8979 exit status 1 Mar 2 00:41:54 server postfix/master[8933]: warning: /usr/lib/postfix/smtpd: bad command startup -- throttling ... Leider kann ich die Meldungen nicht wirklich verstehen, irgendwas schein mit smtpd_recipient_restrictions nicht in Ordung zu sein. postconf | grep smtpd_recipient sagt: smtpd_recipient_limit = 1000 smtpd_recipient_overshoot_limit = 1000 smtpd_recipient_restrictions = permit_mynetworks,permit_sasl_authenticated Gruß, Aaron
![](https://seccdn.libravatar.org/avatar/6cacaf4eb2894c2da1aaf9dab186ef82.jpg?s=120&d=mm&r=g)
Aaron Pohle wrote:
Folgendes habe ich probiert:
/etc/postfix/main.cf .... smtpd_sasl_auth_enable = yes smtpd_recipient_restrictions = permit_mynetworks,permit_sasl_authenticated smtpd_sasl_application_name = smtpd
Sieht in Ordnung aus, wie sieht denn mynetworks, myhostname aus?
Zu früh gefreut. Füge beim Parameter "smtpd_recipient_restrictions =" noch ein "reject_unauth_destination" dahinter. Hier mal meine Zeile dazu: smtpd_recipient_restrictions = permit_mynetworks, permit_sasl_authenticated, reject_non_fqdn_hostname, reject_non_fqdn_sender, reject_non_fqdn_recipient, reject_unauth_destination, reject_unauth_pipelining, reject_invalid_hostname, Schaue dann auch gleich mal, was beim Parameter mynetworks steht. Wenn dort dein Netzwerk steht (192.168.1.0/24), dann können deine Clients senden, ohne sich per SASL zu authentifizieren. Das würde erst dann abgefragt, wenn man von extern den Server zum Mailsenden benutzen will (Road Warrior). Wichtig ist die Option reject_unauth_destination, weil der Server sonst als Relay für Spam missbraucht werden kann. Gut, dass der Server so nicht hochstartet!!
Danke für den Tipp, jetzt funktioniert ein telnet server 25 von allen Clients aus, nur beim abschicken einer EMail meldet der Server folgendes in der /var/log/mail: ... Mar 2 00:39:14 server postfix/smtpd[8853]: fatal: parameter "smtpd_recipient_restrictions": specify at least one working instance of: check_relay_domains, reject_unauth_destination, reject, defer or defer_if_permit Mar 2 00:39:15 server postfix/master[8834]: warning: process /usr/lib/postfix/smtpd pid 8853 exit status 1 Mar 2 00:39:15 server postfix/master[8834]: warning: /usr/lib/postfix/smtpd: bad command startup -- throttling Mar 2 00:39:46 server postfix/master[8834]: terminating on signal 15
Postfix findet eine Konfiguration, die den Betrieb als Open Relay ermöglicht und killt sich selbst. Ich wünschte, das würden alle Mailserver so machen. (^-^)
Leider kann ich die Meldungen nicht wirklich verstehen, irgendwas schein mit smtpd_recipient_restrictions nicht in Ordung zu sein.
Siehe oben! Sandy
![](https://seccdn.libravatar.org/avatar/71c84eb753c5845eb1d9071a337e30ce.jpg?s=120&d=mm&r=g)
Aaron Pohle <aaron.pohle@web.de> writes:
Hallo,
ich möchte das man in meinem Netzwerk mein Server Emails entgegen nimmt und falls ein Internetverbindung besteht raus schickt. Lokal auf dem Server funktioniert das, d.h ich kann mit mutt Mails schreiben, Postfix nimmt diese entgegen und mittel postfix flush schickt dieser die dann nach draußen. Nur von meinen Clients im Netzwerk funktioniert das ganze noch nicht.
Folgendes habe ich probiert:
/etc/postfix/main.cf .... smtpd_sasl_auth_enable = yes smtpd_recipient_restrictions = permit_mynetworks,permit_sasl_authenticated smtpd_sasl_application_name = smtpd
/usr/lib/sasl2/smtpd.conf pwcheck_method: pwcheck mech_list: plain login
Ich glaube nicht, daß die Datei /usr/lib/sasl2/libpwcheck.so existiert, daher kann deine Konfiguration auch nicht funktionieren. Du musst also eine andere Methode zur Passwortprüfung wählen. Dazu stehen dir vermutlich sasldb und saslauthd zur Verfügung. Wenn deine Mailuser auch Systemuser sind, bietet sich saslauthd an, wenn deine Mailuser externe User sind, nimm sasldb. -Dieter -- Dieter Klünter | Systemberatung http://www.dkluenter.de GPG Key ID:01443B53
participants (3)
-
Aaron Pohle
-
Dieter Kluenter
-
Sandy Drobic