the part after the @ is split off to become the realm.  You need to set up 
saslauthd to use the realm and then add it back in when querying the database.

I've got my setup to use the auxprop.
My sasl2/smtpd.conf is:
  sasl_pwcheck_method: auxprop
  sasl_auxprop_plugin: mysql
  sasl_auto_transition: no
  sasl_mech_list: PLAIN LOGIN, CRAM-MD5
  sql_user: ****
  sql_passwd:****
  sql_hostnames: localhost
  sql_database: dbmail
  sql_statement: select passwd from users
              where userid = IF('%r'='dbmail','%u','[EMAIL PROTECTED]')
(no return in the sql statement, added for line wrap in the e-mail)

and in my main.cf for postfix is
  smtpd_sasl_local_domain = dbmail
(and a few more lines that I you already have)

Hope it helps....

Dave


Quoting Alex Broens <[EMAIL PROTECTED]>:

> Good Day,
>
> DBmail 2.0 / Fedora Core2 .
> Imap & Pop are working fine
>
> trying got get to get SASL to work for SMTP auth.
> (its a test box)
>
> userid is [EMAIL PROTECTED]
>
> Postfix main.cf
> ---------------
> local_recipient_maps = mysql:/etc/postfix/sql-recipients.cf
> #
> broken_sasl_auth_clients = yes
> smtpd_sasl_auth_enable = yes
> smtpd_sasl_security_options = noanonymous
> smtpd_sasl_local_domain =
> smtpd_recipient_restrictions =
> permit_sasl_authenticated,reject_unauth_destination
> check_recipient_access = permit_sasl_authenticated,check_relay_domains
> ---------------
>
>
>
> /etc/postfix/sql-recipients.cf
> ----------------
>
> user = <username>
> password = <password>
> hosts = <dbhost>
> dbname = <dbname>
> table = dbmail_users
> select_field = userid
> where_field = userid
> -------------------------------------------
>
>  /etc/pam.d/smtp
> ---
>
> auth  required        pam_mysql.so user=dbmail passwd=dbmail host=localhost
> db=dbmail table=dbmail_users usercolumn=userid passwdcolumn=passwd
> crypt=0
>
> --------------------------------------------
> /var/log/messages:
>
>
> Oct 18 09:05:01 smtp saslauthd[2258]: pam_sm_authenticate called.
> Oct 18 09:05:01 smtp saslauthd[2258]: dbuser changed.
> Oct 18 09:05:01 smtp saslauthd[2258]: dbpasswd changed.
> Oct 18 09:05:01 smtp saslauthd[2258]: host changed.
> Oct 18 09:05:01 smtp saslauthd[2258]: database changed.
> Oct 18 09:05:01 smtp saslauthd[2258]: table changed.
> Oct 18 09:05:01 smtp saslauthd[2258]: usercolumn changed.
> Oct 18 09:05:01 smtp saslauthd[2258]: passwdcolumn changed.
> Oct 18 09:05:01 smtp saslauthd[2258]: crypt changed.
> Oct 18 09:05:01 smtp saslauthd[2258]: db_connect  called.
> Oct 18 09:05:01 smtp saslauthd[2258]: returning 0 .
> Oct 18 09:05:01 smtp saslauthd[2258]: db_checkpasswd called.
> Oct 18 09:05:01 smtp saslauthd[2258]: pam_mysql: where clause =
> Oct 18 09:05:01 smtp saslauthd[2258]: SELECT passwd FROM dbmail_users
> WHERE userid='jd'
> Oct 18 09:05:01 smtp saslauthd[2258]: pam_mysql: select returned more
> than one resultOct 18 09:05:01 smtp saslauthd[2258]: returning 7 after
> db_checkpasswd.
> Oct 18 09:05:01 smtp saslauthd[2258]: do_auth         : auth failure:
> [user=jd] [service=smtp] [realm=] [mech=pam] [reason=PAM auth error]
>
> ----------------------------
>
> can someone give me a hint why [user=] is not seeing the @domain.tld?
> or is there a better way to implement smtp auth?
>
> happily driving me nuts!
>
> thanks
>
> Alex
>
>
>
> _______________________________________________
> Dbmail mailing list
> Dbmail@dbmail.org
> https://mailman.fastxs.nl/mailman/listinfo/dbmail
>



Reply via email to