/etc/default/saslauthd:
MECHANISMS="pam"
PARAMS="-n 1 -m /var/spool/postfix/var/run/saslauthd -r"
PIDFILE="/var/spool/postfix/var/run/saslauthd/saslauthd.pid"
Note that /etc/init.d/saslauthd sets PIDFILE unconditionally:
PIDFILE="/var/run/${NAME}/saslauthd.pid"
This is wrong. Make it conditional like this:
if [ "x${PIDFILE}" = "x" ]; then
PIDFILE="/var/run/${NAME}/saslauthd.pid"
fi
That way, it picks up the setting from /etc/default/saslauthd
and stop/start works properly.
mkdir -p /var/spool/postfix/var/run/saslauthd
chown root.saslauthd /var/spool/postfix/postfix/var/run/saslauthd
/etc/init.d/saslauthd restart
apt-get install libpam-mysql
auth sufficient pam_mysql.so user=mysql_user passwd=mysql_hyper_secret_password host=localhost db=mail table=users usercolumn=email passwdcolumn=crypt crypt=1
auth sufficient pam_unix_auth.so
account required pam_mysql.so user=mysql_user passwd=mysql_hyper_secret_password host=localhost db=mail table=users usercolumn=email passwdcolumn=crypt crypt=1
account sufficient pam_unix_acct.so