Switching to Mysql from sasldb2 SOLVED
Charles Bradshaw
brad at bradcan.homelinux.com
Sat Feb 2 09:02:18 EST 2013
OK, I found the documentation here:
/usr/share/doc/cyrus-sasl-lib-2.1.23/options.html
I had a maybe 2 mistakes which are commented below!
Also SELinux is preventing /usr/lib/cyrus-imapd/imapd from search access on
the directory /var/lib/mysql.
The fix for that is:
# cat /var/log/messages | audit2allow -m local > imap-sql.te
# checkmodule -M -m imap-sql.mod imap-sql.te
# semodule_package -o imap-sql.pp -m imap-sql.mod
# semodule -i imap-sql.pp
WARNING: Do NOT just follow the above unless you know what you are doing! You
actually need to do the first step above more than once then edit the
imap-sql.te file before installing the policy. This is del
Charles Bradshaw
On: Fri, 1 Feb 2013 23:15:15 +0000, Charles Bradshaw wrote:
> I am trying to switch from using sasldb2 to mysql, but I am seeing:
>
> Feb 1 22:48:20 ****** imaps[2553]: badlogin: ********* [192.168.0.8]
> DIGEST-MD5 [SASL(-13): user not found: no secret in
>
> In /etc/log/maillog (I have inserted ******* to hide the actual
> server and host atempting to login)
>
> I am seeing no query on the database so I presume I have something
> wrong with one of my configurations?
>
> Any help would be most appreciated. Where is the documentation for imapd.conf
> using mysql?
>
> $ yum list cyrus-sasl-sql
> Installed Packages
> cyrus-sasl-sql.i686 2.1.23-31.fc17
>
> ~ o ~
>
> /etc/imapd.conf
> configdirectory: /var/lib/imap
> partition-default: /var/spool/imap
> admins: cyrus
> sievedir: /var/lib/imap/sieve
> sendmail: /usr/sbin/sendmail
> hashimapspool: true
> #
> sasl_pwcheck_method: auxprop
> sasl_mech_list: PLAIN DIGEST-MD5 CRAM-MD5
> #
> #sasl_auxprop_plugin:sasldb
> sasl_auxprop_plugin:sql
> #
> # added these for mysql
> sasl_sql_engine:mysql
> sasl_sql_hostname:localhost:3306
Above should be sasl_sql_hostnames NOT sasl_sql_hostname!
> sasl_sql_user:mail_admin
> sasl_sql_passwd:********
> sasl_sql_database:mail
> sql_statement:SELECT pwd FROM users WHERE id = '%u@%r'
Above should be sasl_sql_select NOT sql_statement!
> sasl_sql_verbose:yes
No such tag as sql_verbose!
> sasl_sql_usessl: no
> #
> allowplaintext: yes
> debug: yes
> unixhierarchysep: yes
> #
> virtdomains: userid
> tls_cert_file: /etc/pki/cyrus-imapd/cyrus-imapd.pem
> tls_key_file: /etc/pki/cyrus-imapd/cyrus-imapd.pem
> tls_ca_file: /etc/pki/tls/certs/ca-bundle.crt
> tls_cipher_list: TLSv1:SSLv3:!NULL:!EXPORT:!DES:!LOW:@STRENGTH
>
> ~ o ~
>
> /etc/sasl2/Sendmail
> pwcheck_method:auxprop
> mech_list:DIGEST-MD5 CRAM-MD5 PLAIN
> #
> #auxprop_plugin:sasldb
> auxprop_plugin:sql
> #
> # adde these for mysql
> sql_engine:mysql
> sql_hostname:localhost:3303
Above should be sql_hostnames NOT sql_hostname !
> sql_user:mail_admin
> sql_passwd:********
> sql_database:mail
> sql_statement:SELECT pwd FROM users WHERE id = '%u@%r'
Above should be sql_select NOT sql_statement
> sql_verbose:yes
> sql_usessl: no
> #
> debug:yes
> log_level:5
>
> ~ o ~
>
> Mysql query session (just to prove that it works):
>
> $ mysql --user mail_admin --password
> Enter password:
> Welcome to the MySQL monitor. Commands end with ; or \g.
> Your MySQL connection id is 44
> Server version: 5.5.29-log MySQL Community Server (GPL)
>
> Copyright (c) 2000, 2012, Oracle and/or its affiliates. All rights reserved.
>
> Oracle is a registered trademark of Oracle Corporation and/or its
> affiliates. Other names may be trademarks of their respective
> owners.
>
> Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.
>
> mysql> SELECT pwd FROM mail.users WHERE id = 'test at mydomain';
> +----------+
> | pwd |
> +----------+
> | ******** |
> +----------+
> 1 row in set (0.00 sec)
>
> mysql> quit
> Bye
>
> ----
> Cyrus Home Page: http://www.cyrusimap.org/
> List Archives/Info: http://lists.andrew.cmu.edu/pipermail/info-cyrus/
> To Unsubscribe:
> https://lists.andrew.cmu.edu/mailman/listinfo/info-cyrus
------- End of Original Message -------
More information about the Info-cyrus
mailing list