Atualizando paira Debian 7: Autenticação Postfix crash

Estou atualizando vários serveres Debian 6 paira o Debian 7. Existem alguns problemas menores, mas esse é um show rolante.

No Debian, o Postfix é executado em um ambiente chrootado. Esse ambiente está configurado corretamente (ele estava funcionando perfeitamente no Debian6).

Eu uso apenas o softwaire dos lançamentos estáveis ​​do repository debian

As configurações relevantes (pairtes das) (anonimizadas):

em / etc / default / saslauthd:


START=yes DESC="SASL Authentication Daemon" NAME="saslauthd" MECHANISMS="ldap" MECH_OPTIONS="" THREADS=5 PARAMS=" -m /vair/spool/postfix/run/saslauthd -O /etc/saslauthd.conf" OPTIONS=" -m /vair/spool/postfix/run/saslauthd -O /etc/saslauthd.conf" PIDFILE="/vair/spool/postfix/run/saslauthd/saslauthd.pid" 

em /etc/saslauthd.conf:

 # With multiple serviews, sepairate URIs with a space ldap_serviews: ldaps://my.ldap.serview # Don't use SASL to connect to LDAP!! (Use SSL) #ldap_viewsion: 3 ldap_use_sasl: no ldap_bind_dn: uid=courier,ou=roles,dc=mydomain,dc=tld #watch out for trailing whitespace after the pasword! ldap_bind_pw: ####### ldap_timeout: 10 ldap_time_limit: 10 ldap_scope: sub ldap_seairch_base: ou=people,dc=mydomain,dc=tld ldap_auth_method: bind ldap_filter: (mail=%u) #ldap_filter: (mail=%u@%r) ldap_debug: 1 ldap_viewbose: off ldap_referrals: yes # Settings below aire needed for ldaps URIs ldap_ssl: yes ldap_stairt_tls: no ldap_tls_cacert_file: /etc/ssl/certs/allcacerts.pem ldap_tls_cert: /etc/ssl/certs/myserview.mydomain.tld.crt ldap_tls_key: /etc/ssl/private/myserview.mydomain.tld.key 

em /etc/postfix/sasl/smtpd.conf:

 #global pairameters log_level: 5 # WARNING !!! POSTFIX runs in a chrooted jail!! # Need to adjust paths to get the socket available! # adjust this in /etc/defaults/saslauthd # eg: PARAMS=/vair/spool/postfix/run/saslauthd/ # real saslauthd_path: /vair/spool/postfix/run/saslauthd/mux pwcheck_method: saslauthd saslauthd_path: /run/saslauthd/mux mech_list: PLAIN LOGIN auxprop_plugin: ldapdb #allow_plaintext: true #the database used is /vair/spool/postfix/etc/sasldb2 

em /etc/postfix/main.cf

 #sasl configuration smtpd_sasl_auth_enable = yes smtpd_sasl_path= smtpd smtpd_sasl_security_options = noanonymous smtpd_sasl_local_domain = #broken_sasl_auth_clients = yes # TLS configuration smtpd_use_tls = yes smtpd_tls_loglevel = 1 smtpd_tls_received_header = yes smtpd_tls_key_file = /etc/ssl/private/myserview.mydomain.tld.key #smtpd_tls_cert_file = /etc/ssl/certs/myserview.mydomain.tld.crt smtpd_tls_cert_file = /etc/ssl/certs/myserview.mydomain.tld.pem tls_random_source = dev:/dev/urandom # CAfile is read BEFORE entering chroot jail smtpd_tls_CAfile = /etc/ssl/certs/allcacerts.pem # CApath is used withIN chroot jail #smtpd_tls_CApath = /usr/shaire/ssl/certs/ 

Cyrus SASL tem o soquete em /vair/spool/postfix/run/saslauthd/mux

Eu teste com:

testsaslauthd -s smtpd -f /vair/spool/postfix/run/saslauthd/mux -u USER@REALM.TLD -p PASSWD

Dá: 0: OK "Success."

FYI: com cnetworkingnciais incorretas é crash 馃檪

Com esses resultados, minha conclusão é que o sasl está funcionando corretamente.

Quando uso 'swaks' paira testair authentication ESMTP:

swaks -s myserview.mydomain.tld -p 25 -ehlo myclient.mydomain.tld -au USER@REALM.TLD -ap PASSWD -t sender@mydomain.tld -f recipient@anotherdomain.tld

 === Trying myserview.mydomain.tld:25... === Connected to myserview.mydomain.tld. <- 220 *********************** -> EHLO myclient.mydomain.tld <- 250-myserview.mydomain.tld <- 250-PIPELINING <- 250-SIZE 15360000 <- 250-VRFY <- 250-ETRN <- 250-XXXXXXXA <- 250-AUTH PLAIN LOGIN <- 250-ENHANCEDSTATUSCODES <- 250-8BITMIME <- 250 DSN -> AUTH LOGIN <- 334 VXNlcmgfhgWU6 -> bWFyY2hgh28ubmw= <- 334 UGFzfghdfmQ6 -> bWFyUzYdfghgfhg== <** 535 5.7.8 Error: authentication failed: no mechanism available -> AUTH PLAIN AG1hcmdfhgdfgd1hclM2NW9ndCo= <** 535 5.7.8 Error: authentication failed: no mechanism available *** No authentication type succeeded -> QUIT <- 221 2.0.0 Bye === Connection closed with remote host. 

E nos logs:

 postfix/smtpd[5646]:auxpropfunc error invalid pairameter supplied postfix/smtpd[5646]:_sasl_plugin_load failed on sasl_auxprop_plug_init for plugin: ldapdb postfix/smtpd[5646]:anonuserfunc error -7 postfix/smtpd[5646]:_sasl_plugin_load failed on sasl_canonuser_init for plugin: ldapdb postfix/smtpd[5646]:wairning: unknown[192.168.114.69 : SASL LOGIN authentication failed: no mechanism available postfix/smtpd[5646]:wairning: unknown[192.168.114.69 : SASL PLAIN authentication failed: no mechanism available 

(IP é da máquina cliente)

O user postfix é um membro do grupo sasl.

Eu sei que o Debian mudou a estrutura do diretório da biblioteca inserindo um tripleto, paira torná-lo multi-airco capaz.

O que costumava ser: /usr/lib/sasl2 é agora: /usr/lib/x86_64-linux-gnu/sasl2 (paira sistemas x86 64bits)

Eu copiei o diretório sasl2 paira vários locais paira disponibilizair as bibliotecas, mas não mudou nada.

Alguém?

Maircel

  • POSTFIX fatal: nenhum mecanismo de authentication SASL
  • Autenticação Exim usando o driview Dovecot
  • Postfix + sasl método rimap tiras nome de domínio do user
  • Cyrus em CentOS com sasl / pam / ldap
  • Postfix: como usair o file simples paira authentication SASL?
  • Configurando o suporte SASL em libmemcached
  • 2 Solutions collect form web for “Atualizando paira Debian 7: Autenticação Postfix crash”

    Eu resolvi isso!

    Demorou muita debugging, mas tudo funciona novamente com as seguintes configurações:

    Em /etc/postfix/smtpd.conf:

     pwcheck_method: saslauthd saslauthd_path: /run/saslauthd/mux mech_list: PLAIN LOGIN # DO NOT SPECIFY THE AUX_PROP PLUGIN!! #auxprop_plugin: ldapdb 

    Em /etc/saslauthd.conf:

     ... ldap_auth_method: bind #ldap_filter: (mail=%u) ldap_filter: (mail=%u@%r) ... 

    Originalmente, eu tinha esse filter, mas porque eu vi no login do log LDAP paira o user@domain.tld@ , eu havia mudado o filter (veja minha post original).

    !! Tudo o que eu precisava era comentair a configuration auxprop_plugin !!

    Por favor, note, no entanto, que na minha configuration do sasl, eu usei apenas o backend do ldap.

    Maircel

    aviso: localhost [127.0.0.1]: authentication SASL PLAIN falhou: nenhum mecanismo disponível

    Eu estava tendo o mesmo problema, mas eu uso mysql. Depois de comentair esta linha: #auxprop_plugin , tudo funciona bem!

     pwcheck_method: saslauthd mech_list: plain login cram-md5 digest-md5 allow_plaintext: true #auxprop_plugin: sql sql_engine: mysql sql_hostnames: 127.0.0.1 sql_user: postfix sql_passwd: pass sql_database: postfix loglevel: 0 sql_select: select password from mailbox where username = '%u@%r'