在使用postfix的时候发现,SASL没有配置成功
费尽周折重于...
在安装SASL之前,首先在postfix解压包的目录下执行
make tidy
以下是SASL的安装配置,大部分来自官网
一 安装 cyrus-sasl
将系统自带的sasl先备份
mv /usr/lib/sasl /usr/lib/sasl.OFF
mv /usr/lib/sasl2 /usr/lib/sasl2.OFF
取源码安装
wget http://ftp.andrew.cmu.edu/pub/cyrus-mail/cyrus-sasl-2.1.23.tar.gz
tar zxvf cyrus-sasl-2.1.23.tar.gz
cd cyrus-sasl-2.1.23
配置
sed -i.bak 's/#elif WITH_DES/#elif defined(WITH_DES)/' \
plugins/digestmd5.c &&
./configure --prefix=/usr \
--sysconfdir=/etc \
--with-dbpath=/var/lib/sasl/sasldb2 \
--with-saslauthd=/var/run/saslauthd &&
make
安装
make install &&
install -v -m755 -d /usr/share/doc/cyrus-sasl-2.1.23 &&
install -v -m644 doc/{*.{html,txt,fig},ONEWS,TODO} \
saslauthd/LDAP_SASLAUTHD /usr/share/doc/cyrus-sasl-2.1.23 &&
install -v -m700 -d /var/lib/sasl &&
install -v -m711 -d /var/run/saslauthd
二 配置 Cyrus-SASL
vi /usr/lib/sasl2/smtpd.conf
添加以下内容
pwcheck_method: saslauthd
mech_list: PLAIN LOGIN
三 重装 PostFix
(先停掉使用的postfix : postfix stop)
make tidy(这个放在安装sasl前面)
% make makefiles CCARGS="-DUSE_SASL_AUTH -DUSE_CYRUS_SASL -I/usr/local/include/sasl" AUXLIBS="-L/usr/lib -lsasl2"
make && make install
make upgrade (注:这个很重要)
四 配置Postfix,让客户端使用验证通过才能发邮件
vi /etc/postfix/main.cf
在最后加上:
smtpd_sasl_auth_enable = yes
smtpd_recipient_restrictions = permit_sasl_authenticated permit_auth_destination reject
broken_sasl_auth_clients = yes
smtpd_sasl_security_options = noanonymous
SASL的启动方法
saslauthd -a shadow
验证SASL是否安装成功
postconf -a