postfix + tls -> TLS not available due to local problem

Postfix, QMail, Sendmail, Dovecot, Cyrus, Courier, Anti-Spam
snowball
Posts: 218
Joined: 2004-09-15 10:14

postfix + tls -> TLS not available due to local problem

Post by snowball » 2006-07-28 15:58

Hallo Gemeinde,
Bei meinem Versuch mir einen Postfix Server hin zu stellen, hangel ich mich so von Fehler zu Fehler. Soweit ich das beurteilen kann, fehlt auch nicht mehr allzuviel. Leider hänge ich grade an was wichtigem. Nämlich an TLS. Alle versuche das blöde Ding ans laufen zu bekommen scheitern mit der Meldung:

Code: Select all

ehlo test.com
250-mail.bigblade.de
250-PIPELINING
250-SIZE
250-VRFY
250-ETRN
250-STARTTLS
250-AUTH CRAM-MD5 DIGEST-MD5 LOGIN PLAIN
250-ENHANCEDSTATUSCODES
250-8BITMIME
250 DSN
STARTTLS
[b]454 4.3.0 TLS not available due to local problem[/b]
Das Logfile sagt leider auch nur:

Code: Select all

Jul 28 17:41:49 phobosalt postfix/postfix-script: starting the Postfix mail system
Jul 28 17:41:49 phobosalt postfix/master[11440]: daemon started -- version 2.3.1, configuration /etc/postfix
Jul 28 17:47:14 phobosalt postfix/smtpd[11478]: initializing the server-side TLS engine
Jul 28 17:47:14 phobosalt postfix/smtpd[11478]: connect from xxx.xxx.xxx.xxx
Jul 28 17:48:06 phobosalt postfix/smtpd[11478]: disconnect from xxx.xxx.xxx.xxx
Diverse howtos und google konnten mir leider keine weiteren Tipps geben. Da steht überall nur was von wegen Zertifikaten und so. Aber die sollten in Ordnung sein. Ausserdem habe ich es auch schon mit:

Code: Select all

smtpd_tls_cert_file = none
versucht. Leider ebenfalls ohne Erfolg.
Hier noch meine Konfiguration.

Code: Select all

postconf -n
alias_maps = mysql:/etc/postfix/mysql_virtual_alias_maps.cf
command_directory = /usr/sbin
config_directory = /etc/postfix
daemon_directory = /usr/lib/postfix
debug_peer_level = 2
disable_dns_lookups = no
html_directory = /usr/share/doc/packages/postfix/html
inet_interfaces = all
inet_protocols = all
mail_owner = postfix
mail_spool_directory = /var/mail
mailbox_size_limit = 0
mailq_path = /usr/bin/mailq
manpage_directory = /usr/share/man
message_size_limit = 0
mydestination = $myhostname, localhost.$mydomain
myhostname = mail.bigblade.de
mynetworks = host
myorigin = $mydomain
newaliases_path = /usr/bin/newaliases
queue_directory = /var/spool/postfix
readme_directory = /usr/share/doc/packages/postfix/README_FILES
sample_directory = /usr/share/doc/packages/postfix/samples
sendmail_path = /usr/sbin/sendmail
setgid_group = maildrop
smtp_tls_loglevel = 4
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,  reject_rbl_client opm.blitzed.org,  reject_rbl_client list.dsbl.org,  reject_rbl_client bl.spamcop.net,  reject_rbl_client sbl-xbl.spamhaus.org
smtpd_sasl_auth_enable = yes
smtpd_sasl_local_domain = $myhostname
smtpd_sasl_security_options = noanonymous
smtpd_sasl_type = cyrus
smtpd_tls_CAfile = /etc/postfix/tls/cacert.pem
smtpd_tls_cert_file = /etc/postfix/tls/smtpd.crt
smtpd_tls_key_file = /etc/postfix/tls/smtpd.key
smtpd_tls_loglevel = 4
smtpd_use_tls = yes
unknown_local_recipient_reject_code = 550
virtual_alias_maps = mysql:/etc/postfix/mysql_virtual_alias_maps.cf
virtual_gid_maps = static:1001
virtual_mailbox_base = /usr/local/virtual
virtual_mailbox_domains = mysql:/etc/postfix/mysql_virtual_domains_maps.cf
virtual_mailbox_limit = 0
virtual_mailbox_maps = mysql:/etc/postfix/mysql_virtual_mailbox_maps.cf
virtual_minimum_uid = 1001
virtual_transport = virtual
virtual_uid_maps = static:1001
Wäre super, wenn sich jemand von Euch erbarmen könnte und mir den rettenden Tipp gibt. So langsam bin ich am verzweifeln. :( :oops: :( :oops:

Danke schonmal.

Jochen

Roger Wilco
Administrator
Administrator
Posts: 6001
Joined: 2004-05-23 12:53

Re: postfix + tls -> TLS not available due to local problem

Post by Roger Wilco » 2006-07-28 16:51

Setze das Loglevel des smtpd-Prozesses hoch (durch Anhängen von "-v" in der master.cf) und schau in deine Logs. Kann der MTA das Zertifikat und den Private Key lesen?

snowball
Posts: 218
Joined: 2004-09-15 10:14

Re: postfix + tls -> TLS not available due to local problem

Post by snowball » 2006-07-28 17:14

Roger Wilco wrote:Setze das Loglevel des smtpd-Prozesses hoch (durch Anhängen von "-v" in der master.cf) und schau in deine Logs. Kann der MTA das Zertifikat und den Private Key lesen?
Habe ich gemacht. Wusste garnicht das das auch geht. Ich habe immer nur mit den loglevel in der main.cf getestet.
Hat aber leider auch nicht geholfen.
Ich habe die entstandenen Logfiles mal auf meinen Webspace gelegt. Macht die Sache vielleicht ein bischen übersichtlicher.
http://www.bigblade.de/postfix/mail
http://www.bigblade.de/postfix/cacert.pem
http://www.bigblade.de/postfix/smtpd.crt
http://www.bigblade.de/postfix/smtpd.key

Ach ja, Zugangsdaten und ähnliches habe ich nicht verändert, da die eh nur in der Testumgebung funktionieren :-)

snowball
Posts: 218
Joined: 2004-09-15 10:14

Re: postfix + tls -> TLS not available due to local problem

Post by snowball » 2006-07-31 09:23

Mhh,
keiner mehr eine Idee, wodran es liegen könnte?

EDIT:
hier ist noch was. Vielleicht kennt ja einer von euch den Grund dafür. Ich leider nicht.

Code: Select all

saslfinger -s
saslfinger - postfix Cyrus sasl configuration Mon Jul 31 11:55:44 CEST 2006
version: 1.0
mode: server-side SMTP AUTH

-- basics --
Postfix: 2.3.1
System:
Welcome to SuSE Linux 9.3 (i586) - Kernel r (l).

-- smtpd is linked to --
        libsasl2.so.2 => /usr/lib/libsasl2.so.2 (0x40164000)

-- active SMTP AUTH and TLS parameters for smtpd --
smtpd_sasl_auth_enable = yes
smtpd_sasl_local_domain = $myhostname
smtpd_sasl_security_options = noanonymous
smtpd_sasl_type = cyrus
smtpd_tls_CAfile = /etc/postfix/tls/cacert.pem
smtpd_tls_cert_file = /etc/postfix/tls/smtpd.crt
smtpd_tls_key_file = /etc/postfix/tls/smtpd.key
smtpd_tls_loglevel = 4
smtpd_use_tls = yes


-- listing of /usr/lib/sasl2 --
total 427
drwxr-xr-x   2 root root   912 Jul 28 16:51 .
drwxr-xr-x  39 root root 14488 Jul 27 18:32 ..
-rwxr-xr-x   1 root root   695 Mar 19  2005 libanonymous.la
-rwxr-xr-x   1 root root 13560 Mar 19  2005 libanonymous.so
-rwxr-xr-x   1 root root 13560 Mar 19  2005 libanonymous.so.2
-rwxr-xr-x   1 root root 13560 Mar 19  2005 libanonymous.so.2.0.20
-rwxr-xr-x   1 root root   683 Mar 19  2005 libcrammd5.la
-rwxr-xr-x   1 root root 15828 Mar 19  2005 libcrammd5.so
-rwxr-xr-x   1 root root 15828 Mar 19  2005 libcrammd5.so.2
-rwxr-xr-x   1 root root 15828 Mar 19  2005 libcrammd5.so.2.0.20
-rwxr-xr-x   1 root root   713 Mar 19  2005 libdigestmd5.la
-rwxr-xr-x   1 root root 43544 Mar 19  2005 libdigestmd5.so
-rwxr-xr-x   1 root root 43544 Mar 19  2005 libdigestmd5.so.2
-rwxr-xr-x   1 root root 43544 Mar 19  2005 libdigestmd5.so.2.0.20
-rwxr-xr-x   1 root root   679 Mar 19  2005 liblogin.la
-rwxr-xr-x   1 root root 14420 Mar 19  2005 liblogin.so
-rwxr-xr-x   1 root root 14420 Mar 19  2005 liblogin.so.2
-rwxr-xr-x   1 root root 14420 Mar 19  2005 liblogin.so.2.0.20
-rwxr-xr-x   1 root root   679 Mar 19  2005 libplain.la
-rwxr-xr-x   1 root root 14420 Mar 19  2005 libplain.so
-rwxr-xr-x   1 root root 14420 Mar 19  2005 libplain.so.2
-rwxr-xr-x   1 root root 14420 Mar 19  2005 libplain.so.2.0.20
-rwxr-xr-x   1 root root   707 Mar 19  2005 libsasldb.la
-rwxr-xr-x   1 root root 18792 Mar 19  2005 libsasldb.so
-rwxr-xr-x   1 root root 18792 Mar 19  2005 libsasldb.so.2
-rwxr-xr-x   1 root root 18792 Mar 19  2005 libsasldb.so.2.0.20
-rw-------   1 root root   106 Jul 28 16:51 smtpd.conf

-- listing of /usr/local/lib/sasl2 --
total 4
drwxr-xr-x  2 root root  80 Jul 28 16:14 .
drwxr-xr-x  4 root root 264 Jul 28 16:13 ..
-rw-------  1 root root 106 Jul 28 16:51 smtpd.conf




-- content of /usr/lib/sasl2/smtpd.conf --
pwcheck_method: saslauthd
#mech_list: PLAIN LOGIN
mech_list: plain login cram-md5 digest-md5
log_level: 3

-- content of /usr/local/lib/sasl2/smtpd.conf --
pwcheck_method: saslauthd
#mech_list: PLAIN LOGIN
mech_list: plain login cram-md5 digest-md5
log_level: 3

-- content of /etc/postfix/sasl/smtpd.conf --
pwcheck_method: saslauthd
#mech_list: PLAIN LOGIN
mech_list: plain login cram-md5 digest-md5
log_level: 7


-- active services in /etc/postfix/master.cf --
# service type  private unpriv  chroot  wakeup  maxproc command + args
#               (yes)   (yes)   (yes)   (never) (100)
smtp      inet  n       -       n       -       -       smtpd -v
pickup    fifo  n       -       n       60      1       pickup
cleanup   unix  n       -       n       -       0       cleanup
qmgr      fifo  n       -       n       300     1       qmgr
rewrite   unix  -       -       n       -       -       trivial-rewrite
bounce    unix  -       -       n       -       0       bounce
defer     unix  -       -       n       -       0       bounce
trace     unix  -       -       n       -       0       bounce
verify    unix  -       -       n       -       1       verify
flush     unix  n       -       n       1000?   0       flush
proxymap  unix  -       -       n       -       -       proxymap
smtp      unix  -       -       n       -       -       smtp
relay     unix  -       -       n       -       -       smtp
        -o fallback_relay=
showq     unix  n       -       n       -       -       showq
error     unix  -       -       n       -       -       error
discard   unix  -       -       n       -       -       discard
local     unix  -       n       n       -       -       local
virtual   unix  -       n       n       -       -       virtual
lmtp      unix  -       -       n       -       -       lmtp
anvil     unix  -       -       n       -       1       anvil
scache    unix  -       -       n       -       1       scache
maildrop  unix  -       n       n       -       -       pipe
  flags=DRhu user=vmail argv=/usr/local/bin/maildrop -d ${recipient}
cyrus     unix  -       n       n       -       -       pipe
  user=cyrus argv=/usr/lib/cyrus/bin/deliver -e -r ${sender} -m ${extension} ${user}
uucp      unix  -       n       n       -       -       pipe
  flags=Fqhu user=uucp argv=uux -r -n -z -a$sender - $nexthop!rmail ($recipient)
ifmail    unix  -       n       n       -       -       pipe
  flags=F user=ftn argv=/usr/lib/ifmail/ifmail -r $nexthop ($recipient)
bsmtp     unix  -       n       n       -       -       pipe
  flags=Fq. user=foo argv=/usr/local/sbin/bsmtp -f $sender $nexthop $recipient
procmail  unix  -       n       n       -       -       pipe
  flags=R user=nobody argv=/usr/bin/procmail -t -m /etc/procmailrc ${sender} ${recipient}
tlsmgr    unix  -       -       n       1000?   1       tlsmgr

-- mechanisms on localhost --
250-AUTH CRAM-MD5 DIGEST-MD5 LOGIN PLAIN


-- end of saslfinger output --

Code: Select all

 saslfinger -c
saslfinger - postfix Cyrus sasl configuration Mon Jul 31 11:56:16 CEST 2006
version: 1.0
mode: client-side SMTP AUTH

-- basics --
Postfix: 2.3.1
System:
Welcome to SuSE Linux 9.3 (i586) - Kernel r (l).

-- smtp is linked to --
        libsasl2.so.2 => /usr/lib/libsasl2.so.2 (0x40164000)

-- active SMTP AUTH and TLS parameters for smtp --
smtp_sasl_password_maps = hash:/etc/postfix/sasl_passwd
smtp_tls_loglevel = 4


-- listing of /usr/lib/sasl2 --
total 427
drwxr-xr-x   2 root root   912 Jul 28 16:51 .
drwxr-xr-x  39 root root 14488 Jul 27 18:32 ..
-rwxr-xr-x   1 root root   695 Mar 19  2005 libanonymous.la
-rwxr-xr-x   1 root root 13560 Mar 19  2005 libanonymous.so
-rwxr-xr-x   1 root root 13560 Mar 19  2005 libanonymous.so.2
-rwxr-xr-x   1 root root 13560 Mar 19  2005 libanonymous.so.2.0.20
-rwxr-xr-x   1 root root   683 Mar 19  2005 libcrammd5.la
-rwxr-xr-x   1 root root 15828 Mar 19  2005 libcrammd5.so
-rwxr-xr-x   1 root root 15828 Mar 19  2005 libcrammd5.so.2
-rwxr-xr-x   1 root root 15828 Mar 19  2005 libcrammd5.so.2.0.20
-rwxr-xr-x   1 root root   713 Mar 19  2005 libdigestmd5.la
-rwxr-xr-x   1 root root 43544 Mar 19  2005 libdigestmd5.so
-rwxr-xr-x   1 root root 43544 Mar 19  2005 libdigestmd5.so.2
-rwxr-xr-x   1 root root 43544 Mar 19  2005 libdigestmd5.so.2.0.20
-rwxr-xr-x   1 root root   679 Mar 19  2005 liblogin.la
-rwxr-xr-x   1 root root 14420 Mar 19  2005 liblogin.so
-rwxr-xr-x   1 root root 14420 Mar 19  2005 liblogin.so.2
-rwxr-xr-x   1 root root 14420 Mar 19  2005 liblogin.so.2.0.20
-rwxr-xr-x   1 root root   679 Mar 19  2005 libplain.la
-rwxr-xr-x   1 root root 14420 Mar 19  2005 libplain.so
-rwxr-xr-x   1 root root 14420 Mar 19  2005 libplain.so.2
-rwxr-xr-x   1 root root 14420 Mar 19  2005 libplain.so.2.0.20
-rwxr-xr-x   1 root root   707 Mar 19  2005 libsasldb.la
-rwxr-xr-x   1 root root 18792 Mar 19  2005 libsasldb.so
-rwxr-xr-x   1 root root 18792 Mar 19  2005 libsasldb.so.2
-rwxr-xr-x   1 root root 18792 Mar 19  2005 libsasldb.so.2.0.20
-rw-------   1 root root   106 Jul 28 16:51 smtpd.conf

-- listing of /usr/local/lib/sasl2 --
total 4
drwxr-xr-x  2 root root  80 Jul 28 16:14 .
drwxr-xr-x  4 root root 264 Jul 28 16:13 ..
-rw-------  1 root root 106 Jul 28 16:51 smtpd.conf


-- permissions for /etc/postfix/sasl_passwd --
-rw-r--r--  1 root root 185 Jul 31 11:49 /etc/postfix/sasl_passwd

-- permissions for /etc/postfix/sasl_passwd.db --
-rw-r--r--  1 root root 12288 Jul 31 11:49 /etc/postfix/sasl_passwd.db

/etc/postfix/sasl_passwd.db is up to date.

-- active services in /etc/postfix/master.cf --
# service type  private unpriv  chroot  wakeup  maxproc command + args
#               (yes)   (yes)   (yes)   (never) (100)
smtp      inet  n       -       n       -       -       smtpd -v
pickup    fifo  n       -       n       60      1       pickup
cleanup   unix  n       -       n       -       0       cleanup
qmgr      fifo  n       -       n       300     1       qmgr
rewrite   unix  -       -       n       -       -       trivial-rewrite
bounce    unix  -       -       n       -       0       bounce
defer     unix  -       -       n       -       0       bounce
trace     unix  -       -       n       -       0       bounce
verify    unix  -       -       n       -       1       verify
flush     unix  n       -       n       1000?   0       flush
proxymap  unix  -       -       n       -       -       proxymap
smtp      unix  -       -       n       -       -       smtp
relay     unix  -       -       n       -       -       smtp
        -o fallback_relay=
showq     unix  n       -       n       -       -       showq
error     unix  -       -       n       -       -       error
discard   unix  -       -       n       -       -       discard
local     unix  -       n       n       -       -       local
virtual   unix  -       n       n       -       -       virtual
lmtp      unix  -       -       n       -       -       lmtp
anvil     unix  -       -       n       -       1       anvil
scache    unix  -       -       n       -       1       scache
maildrop  unix  -       n       n       -       -       pipe
  flags=DRhu user=vmail argv=/usr/local/bin/maildrop -d ${recipient}
cyrus     unix  -       n       n       -       -       pipe
  user=cyrus argv=/usr/lib/cyrus/bin/deliver -e -r ${sender} -m ${extension} ${user}
uucp      unix  -       n       n       -       -       pipe
  flags=Fqhu user=uucp argv=uux -r -n -z -a$sender - $nexthop!rmail ($recipient)
ifmail    unix  -       n       n       -       -       pipe
  flags=F user=ftn argv=/usr/lib/ifmail/ifmail -r $nexthop ($recipient)
bsmtp     unix  -       n       n       -       -       pipe
  flags=Fq. user=foo argv=/usr/local/sbin/bsmtp -f $sender $nexthop $recipient
procmail  unix  -       n       n       -       -       pipe
  flags=R user=nobody argv=/usr/bin/procmail -t -m /etc/procmailrc ${sender} ${recipient}
tlsmgr    unix  -       -       n       1000?   1       tlsmgr


-- end of saslfinger output --

snowball
Posts: 218
Joined: 2004-09-15 10:14

Re: postfix + tls -> TLS not available due to local problem

Post by snowball » 2006-07-31 11:43

Soooo,
mal was ganz neues.
Nachdem ich von postfix-2.3.1 auf postfix-2.2.11 gestiegen bin und nach diesem http://www.postfix.org/TLS_README.html howto die Zertifikate generiert habe, bekomme ich nun diese

Code: Select all

Jul 31 13:28:51 phobosalt postfix/smtpd[24587]: warning: cannot get private key from file /etc/postfix/tls/FOO-key.pem
Jul 31 13:28:51 phobosalt postfix/smtpd[24587]: cannot load RSA certificate and key data
Meldung. Auch wiederholtes erstellen der Zertifikate und chmod 666 hat da nicht geholfen. Gibt es da ein Geheimnis???

rootsvr
Posts: 538
Joined: 2005-09-02 11:12

Re: postfix + tls -> TLS not available due to local problem

Post by rootsvr » 2006-07-31 12:32

Soweit ich weiß ist 666 ganz schlecht.. stellt der nicht die Arbeit ein wenn jemand anderes als root (Verzeichnis und File auf 700 bzw.600)Zugriff auf die Datei hat? (oder war das nur ssh?)

Falls Du schon ein Certificate für SSL hast kannst Du das auch einfach (doppekt) nutzen

snowball
Posts: 218
Joined: 2004-09-15 10:14

Re: postfix + tls -> TLS not available due to local problem

Post by snowball » 2006-07-31 12:41

Habe ich grade mal getestet. Hilft aber leider auch nicht.

Code: Select all

l cacert.pem tlskey.pem tlscert.pem
-rw-------  1 root root 1273 Jul 27 18:51 cacert.pem
-rw-------  1 root root 3639 Jul 27 18:51 tlscert.pem
-r--------  1 root root  887 Jul 27 18:51 tlskey.pem
:cry: :cry:

mc5000
Posts: 308
Joined: 2004-06-17 11:56
Location: Köln

Re: postfix + tls -> TLS not available due to local problem

Post by mc5000 » 2006-07-31 13:29

Ganz dumme Frage, es gibt auch wirklich die Datei:
/etc/postfix/tls/FOO-key.pem
:wink:

snowball
Posts: 218
Joined: 2004-09-15 10:14

Re: postfix + tls -> TLS not available due to local problem

Post by snowball » 2006-07-31 13:33

War natürlich keine dumme Frage 8)

Aber...

Code: Select all

postconf -n
smtpd_tls_CAfile = /etc/postfix/cacert.pem
smtpd_tls_cert_file = /etc/postfix/tlscert.pem
smtpd_tls_key_file = /etc/postfix/tlskey.pem
smtpd_tls_loglevel = 4
smtpd_use_tls = yes
wurde natürlich dem entsprechend angepasst. Da ich schon mehrere Versuche mit den Zertifikaten gemacht habe, habe ich immer nur das Zertifikat mit dem ich grade teste einkommentiert.
Asche über mein Haupt, dass ich die Config weiter oben nicht mit editiert habe :wink:

Edit: und um Probleme mit der Verzeichnisberechtingung zu umgehen, liegt jetzt auch alles brav in /etc/postfix