- 论坛徽章:
- 0
|
Cyrus-SASL
SASL (Simple Authentication Security Layer)简单认证安全层,在这里有功能主要是用于SMTP认证。
安装配置
首先查看系统是否已经安装了cyrus-sasl
[root@linuxas3 src]# rpm -qa |grep cyrus-sasl
cyrus-sasl-plain-2.1.15-3
cyrus-sasl-md5-2.1.15-3
cyrus-sasl-2.1.15-3
cyrus-sasl-gssapi-2.1.15-3
cyrus-sasl-devel-2.1.15-3
[root@linuxas3 src]#
如果安装已经,就请卸载它,或使用下面方法关闭它
[root@linuxas3 src]# mv /usr/lib/sasl /usr/lib/sasl.OFF
[root@linuxas3 src]# mv /usr/lib/sasl2 /usr/lib/sasl2.OFF
编译安装cyrus-sasl-2.1.18
[root@linux src]# cd cyrus-sasl-2.1.18
[root@linux cyrus-sasl-2.1.18]# make clean
[root@linux cyrus-sasl-2.1.18]# ./configure --disable-sample --disable-saslauthd --disable-pwcheck \
--disable-krb4 --disable-gssapi --disable-anon \
--enable-plain --enable-login --enable-cram --enable-digest \
--with-saslauthd=/var/run/saslauthd
Configuration Complete. Type 'make' to build.
[root@linux cyrus-sasl-2.1.18]# make
[root@linux cyrus-sasl-2.1.18]# make install
[root@linux cyrus-sasl-2.1.18]# ln -s /usr/local/include/sasl/ /usr/include/sasl
[root@linux cyrus-sasl-2.1.18]# ln -s /usr/local/lib/sasl2 /usr/lib/sasl2
[root@linux cyrus-sasl-2.1.18]# echo /usr/local/lib/sasl2 >> /etc/ld.so.conf
[root@linux cyrus-sasl-2.1.18]# ldconfig
[root@linuxas3 src]# ll -d /usr/lib/sasl2
lrwxrwxrwx 1 root root 20 Apr 19 20:00 /usr/lib/sasl2 -> /usr/local/lib/sasl2
[root@linuxas3 src]#
设置cyrus-sasl启用plain、login、cram、digest认证模块,Postfix使用SASL的saslauthd认证守护进程来支持smtp auth认证:
echo MECH=pam > /etc/sysconfig/saslauthd
echo pwcheck_method: saslauthd > /usr/lib/sasl2/smtpd.conf
echo mech_list: plain login cram digest>> /usr/lib/sasl2/smtpd.conf
配置PAM
[root@linuxas3 cyrus-sasl-2.1.18]# cd /etc/pam.d/
[root@linuxas3 pam.d]# cat smtp
#%PAM-1.0
#auth required pam_stack.so service=system-auth
#account required pam_stack.so service=system-auth
auth optional pam_mysql.so host=localhost db=postfix user=postfix passwd=6AJx9Nqv9x8hg table=postfix_users usercolumn=user passwdcolumn=passwd crypt=0
account required pam_mysql.so host=localhost db=postfix user=postfix passwd=6AJx9Nqv9x8hg table=postfix_users usercolumn=user passwdcolumn=passwd crypt=0
[root@linuxas3 pam.d]#
crypt= n
crypt=0: 明文密码
crypt=1: 使用crpyt()函数(对应SQL数据里的encrypt(),encrypt()随机产生salt)
crypt=2: 使用MYSQL中的password()函数加密
crypt=3:表示使用md5的散列方式
启动SMTP认证进程(Authenticated SMTP)
[root@linuxas3 init.d]# service saslauthd start
Starting saslauthd: [ OK ]
[root@linuxas3 init.d]#
or
[root@linuxas3 init.d]# /etc/init.d/saslauthd start
本文来自ChinaUnix博客,如果查看原文请点:http://blog.chinaunix.net/u1/36506/showart_506168.html |
|