PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : Postfix Smtp Ssl



Stift
05.01.05, 17:04
Hallo,

ich habe einen MAILSERVER (FC3) mit Postfix und SASL-Auth.. Jetzt habe ich den Server um eine SSL-Verschluesselung erweitert. Ich kann die E-MAILS mit SSL mit SMTP nur lokal - sprich auf den Server- mit "EMAIL" senden, aber die Clients (Outlook, Outlook Express, Thunderbird) konnen die E-MAILS nur normal mit SMTP versenden.

An was liegt das?
Hat jemand eine Loesung dafuer?

Hitman
05.01.05, 17:47
Ports? Firewall?

Stift
05.01.05, 17:57
negativ keine Firewall

Hitman
05.01.05, 18:19
Greifen die Programme auf Port 25 oder 465 zu?

Stift
05.01.05, 18:41
ist einstellbar
Ich habe beides getestet

Hitman
05.01.05, 18:56
Was sagt denn /var/log/maillog ?

Stift
05.01.05, 19:03
Jan 5 20:01:29 localhost postfix/smtpd[3228]: connect from unknown[XXX.XXX.XXX.XXX]
Jan 5 20:01:29 localhost postfix/smtpd[3228]: disconnect from unknown[XXX.XXX.XXX.XXX]


Mehr schreibt er nicht in die maillog rein wenn ein Client zugreift

zini2001
06.01.05, 01:20
dann post doch endlich die main.cf usw.
hast du den mailclient auf tls/ssl verbindung vorbereitet.zeigt er das zertifikat an.

Stift
06.01.05, 08:08
Auszug aus meiner "main.cf"


#SASL
smtpd_sasl_auth_enable = yes
smtpd_sasl_local_domain = localhost.localdomain
smtpd_sasl_security_options = noanonymous
broken_sasl_auth_cleints = yes
smtpd_recipient_restrictions = permit_sasl_authenticated, permit_mynetworks, check_relay_domains, reject


#SSL
smtpd_tls_CAfile = /etc/postfix/ssl/cacert.pem
smtpd_tls_cert_file = /etc/postfix/ssl/smtpd.crt
smtpd_tls_key_file = /etc/postfix/ssl/smtpd.key
smtpd_tls_received_header = yes
smtpd_use_tls = yes
smtpd_tls_auth_only = no

smptd_tls_loglevel = 1
smtpd_tls_session_cache_timeout = 3600s
tls_random_source = dev:/dev/urandom
smtpd_tls_note_starttls_offer = yes
smtp_use_tls = yes



Den Mailclients habe ich auf TLS/SSL eingestellt.

Nur der Mailclient auf dem Server zeigt das Zertifikat an.

Tomek
06.01.05, 10:53
Wie hast du denn die Zertifkate erstellt?

smtpd_tls_CAfile = /etc/postfix/ssl/cacert.pem
smtpd_tls_cert_file = /etc/postfix/ssl/smtpd.crt
smtpd_tls_key_file = /etc/postfix/ssl/smtpd.key

Hast du einen Relayhost in Postfix eingestellt?

smtp_use_tls = yes
Diese Option bewirkt nämlich das Postfix beim Senden von Mails TLS benutzt, das aber nicht jeder MTA unterstützt.

Stift
06.01.05, 11:08
ja habe ich eingestellt siehe, die letzte zeile aus den auszug aus meiner "main.cf"

Stift
06.01.05, 20:04
Was ist jetzt? Was jemand an was das liegt?

Stift
07.01.05, 12:07
Bin ich mit den Problem allein?

Stift
08.01.05, 15:39
Hiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiillllllllllllllllll llllllllllfffffffffffffffffffe

emwe
08.01.05, 16:58
Hallo,

auf die Art bekommst du wahrscheinlich keine Antwort.

1. Gegen welches Backend authentifizierst du?! ldap, sasldb, mysql, ...?!
2. Du hast einen Tippfehler in broken_sasl_auth_clients.
3. Kennst Du die Option debug_peer_level und debug_peer_list?
4. Sicher dass du smtpd_sasl_local_domain brauchst?
5. man 5 postconf

Genaue Angaben helfen beim Beantworten. Posten zum Thread-obenhalten nicht.

emwe

Tomek
08.01.05, 21:18
Stift: Beachte bitte die Foren-Regeln (http://www.linuxforen.de/forums/showthread.php?t=164474) oder ich werde diesen Thread schliessen.

Stift
09.01.05, 08:27
zu
1. sasldb
2. schon ausgebessert
3. Nein
4. sollte sein
5. ?

Terran Marine
09.01.05, 11:16
zu
1. sasldb
2. schon ausgebessert
3. Nein
4. sollte sein
5. ?

Was gibt denn dein Mailserver für Authentifizierungsmechanismen zurück ?

(per telnet 25 & EHLO )

Gruß
Terran

Stift
09.01.05, 16:15
ja macht er ohne Probleme

Terran Marine
09.01.05, 16:47
ja macht er ohne Probleme

Mhhh,

gibt er auch die richtigen Mechanismen zurück (siehe Zeile Auth im SMTP-Dialog)

Gruß
Terran

Stift
09.01.05, 19:50
220 localhost.localdomain ESMTP Postfix
ehlo XXX.XXX.XXX.XXX
250-adam.pe
250-PIPELINING
250-SIZE 10240000
250-VRFY
250-ETRN
250-STARTTLS
250-AUTH PLAIN LOGIN CRAM-MD5 DIGEST-MD5
250-AUTH=PLAIN LOGIN CRAM-MD5 DIGEST-MD5
250 8BITMIME


ist das richtig?

Terran Marine
09.01.05, 20:56
220 localhost.localdomain ESMTP Postfix
ehlo XXX.XXX.XXX.XXX
250-adam.pe
250-PIPELINING
250-SIZE 10240000
250-VRFY
250-ETRN
250-STARTTLS
250-AUTH PLAIN LOGIN CRAM-MD5 DIGEST-MD5
250-AUTH=PLAIN LOGIN CRAM-MD5 DIGEST-MD5
250 8BITMIME


ist das richtig?

Sieht eigentlich gut aus.

Stift
10.01.05, 16:22
Was soll ich jetzt machen?

emwe
11.01.05, 16:27
So,

jetzt nimmst du bitte statt telnet einmal einem remote-rechner und führst

openssl s_client -connect x.x.x.x:25 -starttls smtp aus, wobei x.x.x.x die IP deines Servers ist. Danach wie mit telnet weiterarbeiten und wie in der Postfix-SASL-Readme
http://www.postfix.org/SASL_README.html#server_test
beschrieben mittles AUTH PLAIN oder AUTH LOGIN authentifizieren.
Aus dem Output von s_client und dem Mail-Logfile kannst du bei aktiviertem


debug_peer_level = 3
debug_peer_list = y.y.y.y in der main.cf den Fehler garantiert finden. y.y.y.y ist dabei natürlich die IP des Testclients.

Siehe auch: http://www.google.de/search?hl=de&q=postfix+%2Bsasl+%2Bauth&btnG=Google-Suche&meta=

Gruß,

emwe

Stift
12.01.05, 17:05
telnet habe ich von einem remote-rechner ausgefuehrt.

Mein Remoterechner ist ein XP. Wo muss ich den Befehl eingeben?

emwe
13.01.05, 12:19
Hi,

der Satz war wohl etwas mißverständlich:
Nicht statt telnet einen Remote-Rechner nehmen, sondern statt telnet openssl s_client. Bei einem Remote-Rechner gehe ich eigentlich von Linux aus, OpenSSL unter Windows geht aber auch - da empfehle ich doch mal cygwin.
Vielleicht sollte es aber schon genügen, wenn Du nochmal vom Remote-Rechner aus versuchst, eine Mail über den üblichen Weg zu schicken - ich tippe da mal auf Outlook - und Dir mit den o. g. Einträgen in der main.cf (also debug_peer_* mit IP-Adresse des Remote-Rechners) anschaust, was eigentlich passiert zwischen Client und Server.
Normalerweise sollte im Logfile zuerst HELO/EHLO des Clients auftauchen, danach gleich STARTTLS - hiernach wird die Verbindung verschlüsselt weitergeführt, im Logfile von Postfix siehst du aber immer noch die Eingaben des Clients.
Nach dem STARTTLS müßte AUTH <mech> kommen - und die Antwort des Mailservers, ob der Benutzer authentifiziert werden konnte.
Btw: Bist Du sicher, dass Du in Outlook das Häkchen für 'Verwende TLS' o. Ä. gesetzt hast?!

Gruß,

emwe

Stift
14.01.05, 19:02
Auf dem Server selber kann ich ueber "EMAIL" (So heisst das Programm) mit TLS E-Mails versenden. Nur von den CLients kann ich keine E-Mail mit TLS versenden. Auf meinen Rechner habe ich Outlook, Outlook Express und Thunderbird.

Stift
19.01.05, 06:07
Was ist nun? Wir jetzt weiter diskutiert, oder nicht?