Postfix SASL unbeatable (SSL 443)

fixpost

Postfix SASL unbeatable (SSL 443)
« kdy: 06. 04. 2012, 01:19:08 »
Dobrý den, stavím mailový server a funguje mi přihlášení pomocí IMAPS (993) a SMTP (25) se STARTTLS, ale nemůžu rozchodit
SSL (443), už sem zkoušel snad vše.. jako IMAP používám Cyrus 2.4 a postfix je 2.8.5, systém je ubuntu server 11.10 a ověřování uživatelů mám pomocí saslauthd do Active Directory na win serveru.

podle toho co sem se dočetl, by mělo stačit upravit pouze

dle postfix dokumentace

('By default the Postfix SMTP server uses the Cyrus SASL implementation')

/etc/postfix/main.cf:
    smtpd_sasl_auth_enable = yes

/usr/lib/sasl2/smtpd.conf:
    pwcheck_method: saslauthd
    mech_list: PLAIN LOGIN

s tím, že ještě naivně upravím a odkomentuju 3 řádky v

/etc/postfix/master.cf

smtps     inet  n       -       -       -       -       smtpd
  -o smtpd_tls_wrappermode=yes
  -o smtpd_sasl_auth_enable=yes

problém je, že před touto úpravou mi fungoval aspoň IMAPS, teď se to rozbije celé


zkoušel jsem také postupovat podle tohoto návodu
http://www.jimmy.co.at/weblog/?p=52

ale výsledek byl velice podobný ne li stejný (logy ve spod jsou k prvnímu postupu)

vtip je také v tom, že kdysi jsem již postfix nastavoval, ale ve spolupráci s dovecotem a ověřováním vůči SQL a šlo mi to v pořádku, návod a konfiguraci mám zapsanou, ale nefunguje mi to podle toho :(
strávil sem nad tím opravdu spoustu času až to není hezké, budu moc vděčný za pomoc

====================
/etc/postfix/main.cf
====================

Kód: [Vybrat]
smtpd_banner = $myhostname ESMTP $mail_name (Ubuntu)
biff = no
append_dot_mydomain = no
readme_directory = no

# TLS parameters

smtpd_tls_cert_file=/etc/ssl/certs/ssl-cert-snakeoil.pem
smtpd_tls_key_file=/etc/ssl/private/ssl-cert-snakeoil.key
smtpd_use_tls=yes
smtpd_tls_session_cache_database = btree:${data_directory}/smtpd_scache
smtp_tls_session_cache_database = btree:${data_directory}/smtp_scache

# Ostatni

myhostname = mydomain.cz
alias_maps = hash:/etc/aliases
alias_database = hash:/etc/aliases
#myorigin = /etc/mailname
mydestination = mydomain.cz, mail, localhost.localdomain, localhost
relayhost =
mynetworks = 127.0.0.0/8 [::ffff:127.0.0.0]/104 [::1]/128
mailbox_size_limit = 0
recipient_delimiter = +
inet_interfaces = all
mailbox_transport = cyrus
#strict_rfc821_envelopes=no
virtual_alias_maps = ldap:/etc/postfix/people.ldap

======================
/etc/postfix/master.cf
======================

default (případně s těmi 3mi řádky jak sem psal výše)

======================
/etc/saslauthd.conf
======================

Kód: [Vybrat]
ldap_servers: ldap://10.0.0.15:389
ldap_search_base: cn=Users,dc=mydomain,dc=cz
ldap_filter: (sAMAccountName=%u)
ldap_bind_dn: cn=Administrator,cn=Users,dc=mydomain,dc=cz
ldap_password: heslokserveru


======================
/etc/cyrus.conf
======================

Kód: [Vybrat]
START {
recover cmd="/usr/sbin/cyrus ctl_cyrusdb -r"
delprune cmd="/usr/sbin/cyrus expire -E 3"
tlsprune cmd="/usr/sbin/cyrus tls_prune"
}


SERVICES {
imap cmd="imapd -U 30" listen="imap" prefork=0 maxchild=100
imaps cmd="imapd -s -U 30" listen="imaps" prefork=0 maxchild=100
pop3 cmd="pop3d -U 30" listen="pop3" prefork=0 maxchild=50
pop3s cmd="pop3d -s -U 30" listen="pop3s" prefork=0 maxchild=50
nntp cmd="nntpd -U 30" listen="nntp" prefork=0 maxchild=100
lmtpunix cmd="lmtpd" listen="/var/run/cyrus/socket/lmtp" prefork=0 maxchild=20
  sieve cmd="timsieved" listen="localhost:sieve" prefork=0 maxchild=100
notify cmd="notifyd" listen="/var/run/cyrus/socket/notify" proto="udp" prefork=1
}

EVENTS {
checkpoint cmd="/usr/sbin/cyrus ctl_cyrusdb -c" period=30
delprune cmd="/usr/sbin/cyrus expire -E 3" at=0401
tlsprune cmd="/usr/sbin/cyrus tls_prune" at=0401
}


======================
/etc/imapd.conf
======================

Kód: [Vybrat]
configdirectory: /var/lib/cyrus

defaultpartition: default
partition-default: /var/spool/cyrus/mail

partition-news: /var/spool/cyrus/news
newsspool: /var/spool/news

altnamespace: yes
unixhierarchysep: yes
lmtp_downcase_rcpt: yes
admins: cyrus administrator
allowanonymouslogin: no
popminpoll: 1
autocreatequota: 0
umask: 077
sieveusehomedir: false
sievedir: /var/spool/sieve
hashimapspool: true
allowplaintext: yes
sasl_mech_list: PLAIN LOGIN
sasl_pwcheck_method: saslauthd
sasl_auto_transition: no

#
# SSL/TLS Options
#

tls_cert_file: /etc/ssl/certs/ssl-cert-snakeoil.pem
tls_key_file: /etc/ssl/private/ssl-cert-snakeoil.key
tls_ca_path: /etc/ssl/certs

tls_session_timeout: 1440

tls_cipher_list: TLSv1+HIGH:!aNULL:@STRENGTH

lmtpsocket: /var/run/cyrus/socket/lmtp
idlesocket: /var/run/cyrus/socket/idle
notifysocket: /var/run/cyrus/socket/notify
syslog_prefix: cyrus

===============================
# cat /etc/group |grep ssl-cert

Kód: [Vybrat]
ssl-cert:x:113:postgres,cyrus

tady by podle me ta slozka ssl mela byt v /var/spool/cyrus/etc/ ale tak funguje to asi :-P

Kód: [Vybrat]
-rw-r----- 1 root ssl-cert XXXX /var/spool/cyrus/ssl/ssl-cert ssl-cert-snakeoil.key
drwxr-xr-x 2 root root     XXXX /var/spool/cyrus/ssl/certs
drwx--x--- 2 root ssl-cert XXXX /var/spool/cyrus/ssl/private


mail.err
Apr  3 01:53:04 mail cyrus/imaps[1577]: Fatal error: tls_start_servertls() failed
Apr  3 02:06:21 mail cyrus/notify[2144]: recvfrom failed: Interrupted system call

mail.log
Apr  3 01:53:12 mail cyrus/imaps[1580]: imapd:Loading hard-coded DH parameters
Apr  3 01:53:12 mail cyrus/imaps[1580]: SSL_accept() incomplete -> wait
Apr  3 01:53:12 mail cyrus/imaps[1580]: SSL_accept() succeeded -> done
Apr  3 01:53:12 mail cyrus/imaps[1580]: starttls: TLSv1 with cipher DHE-RSA-CAMELLIA256-SHA (256/256 bits new) no authentication
Apr  3 01:53:13 mail cyrus/imaps[1580]: fetching user_deny.db entry for 'uzivatel2'
Apr  3 01:53:13 mail cyrus/imaps[1580]: login: [192.168.0.10] uzivatel2 plain+TLS User logged in
Apr  3 01:53:13 mail cyrus/imaps[1580]: fetching user_deny.db entry for 'uzivatel2'
Apr  3 01:53:13 mail cyrus/imaps[1580]: USAGE uzivatel2 user: 0.012000 sys: 0.008000
Apr  3 01:55:09 mail cyrus/master[961]: process 1580 exited, status 0

obcas to hodi i (ale to je asi kvuli restartu sluzby)

Apr  3 02:06:48 mail cyrus/master[2446]: service imaps pid 2600 in BUSY state: terminated abnormally





























Dadko

Re:Postfix SASL unbeatable (SSL 443)
« Odpověď #1 kdy: 06. 04. 2012, 11:28:32 »
Nebude to tym, ze STMPS bezi na porte 465? ;)

fixpost

Re:Postfix SASL unbeatable (SSL 443)
« Odpověď #2 kdy: 09. 04. 2012, 15:56:06 »
Nebude to tym, ze STMPS bezi na porte 465? ;)

Dobrý den, spletl jsem se, emailový klient se samozřejmě připojuje k portu 465

Dadko

Re:Postfix SASL unbeatable (SSL 443)
« Odpověď #3 kdy: 10. 04. 2012, 11:18:16 »
V saslauthd.conf by spravne malo byt nieco tohoto stylu, aspon co som nasiel podla jedneho navodu:

ldap_servers: ldap://cebu.jade.net:389/
ldap_password_attr: userPassword
ldap_default_realm: jade.net
ldap_filter: uid=%U@%r
ldap_search_base: uid=%U@%r,dc=jade,dc=net

fixpost

Re:Postfix SASL unbeatable (SSL 443)
« Odpověď #4 kdy: 17. 04. 2012, 19:25:53 »
V saslauthd.conf by spravne malo byt nieco tohoto stylu, aspon co som nasiel podla jedneho navodu:

ldap_servers: ldap://cebu.jade.net:389/
ldap_password_attr: userPassword
ldap_default_realm: jade.net
ldap_filter: uid=%U@%r
ldap_search_base: uid=%U@%r,dc=jade,dc=net

Děkuji, ale
testsaslauthd -u administrator -p heslo
mi vypisuje OK "Success." a třeba IMAP složky nebo do SOGo webového clienta se přihlásim a mohu vytvářet například kalendáře, takže si myslím, že ověřování vůči LDAP mi funguje