学习NO.1 发表于 2016-7-7 16:53:12

sendmail的安装

在Linux或者UNIX平台下,如何安装sendmail邮箱呢?由于现在成为Linux系统的缺省邮件配置,以下是sendmail 邮件的安装步骤。1、 先安装cyrus-sasl-2.1.18.tar.gz,sendmail安装时要用到sasl(简单认证和安全层协议)的2、 库文件的头文件。解压缩:

[*]# tar -zxvf cyrus-sasl-2.1.18.tar.gz
编译:进入刚解压的源码目录,运行以下命令完成安装。
[*]#./configure --prefix=/usr/local/sasl2 --enable-login
一定要加--enable-login,因为SASL2默认不支持login这种验证方式,而OUTLOOK是通过login来进行SMTP验证的。
[*]#make # 编译
[*]
[*]#make install # 安装
完成以上linux程序安装三步曲之后,就可以开始配置和测试了。3、配置SASL为了把SASL应用于sendmail认证,还需进行一些配置工作。sendmail会到/usr/lib目录下去找SASL2库,而我们是把程序安装在/usr/local/sasl2中,为什么不把软件安装在/usr/lib目录呢?这主要是为了好管理自已安装的软件啦。所以我们要在/usr/lib目录下做一个链接:
[*]# cd /usr/lib
[*]
[*]# ln -s /usr/local/sasl2/lib/* .
ok,接着要在/var/目录下建一个目录给saslauthd进程存在临时数据。
[*]# cd /var
[*]
[*]# mkdir state
[*]
[*]# cd state
[*]
[*]# mkdir saslauthd
注:如果没有这些目录,运行saslauthd时,会提示出错。ok,接着为确保CYRUS-SASL2函数库知道怎样验证所收来的SASL认证请求,必须创建一个SASL的配置文件来把MTA程序定义成一个SASL应用。配置文件名为Sendmail.conf(注意是大写的S),位于/usr/lib/sasl2目录中,也就是/usr/local/sasl2/lib/sasl2这个目录,记得上面新建的链接了吗?在该文件中你定义你希望使用的认证数据库方法,以下这个例子使用saslauthd来验证认证请求。
[*]# cd /usr/lib/sasl2
[*]
[*]# echo 'pwcheck_method: saslauthd' > Sendmail.conf
4、测试ok,现在可以运行saslauthd了,并进行测试。
[*]# cd /usr/local/sasl2/sbin
[*]
[*]# ./saslauthd -a shadow
用shadow的用户和密码进行验证
[*]# ./testsaslauthd -u userid -p password
0: OK "Success."如果出现以上信息,就说明saslauthd正常运行了。testsaslauthd程序默认是没有编译的,你需要在源码目录树的saslauthd子目录中运行 # make testsaslauthd命令生成。5、sasl2安装完成后,就要开始安装sendmail了。先解压sendmail源码。# tar -zxvf sendmail.8.12.10.tar.gz如果要sendmail支持SASL,需要修改源码的位置配置文件site.config.m4。site.config.m4位于源码目录树的devtools/Site。文件中应包含以下行:
[*]PREPENDDEF(`confMAPDEF', `-DMAP_REGEX')
[*]
[*]APPENDDEF(`confENVDEF', `-DTCPWRAPPERS -DSASL=2')
[*]
[*]APPENDDEF(`conf_sendmail_LIBS', `-lwrap -lsasl2')
[*]
[*]APPENDDEF(`confLIBDIRS', `-L/usr/local/sasl2/lib')
[*]
[*]APPENDDEF(`confINCDIRS', `-I/usr/local/sasl2/include')
第一行配置正则表达式相关内容第二、三行配置表示在sendmail程序中支持sasl2和tcp_wrapper(可通过hosts.allow和hosts.deny控制访问)第四、五行配置指出sasl2的库文件和头文件的位置。ok,接着在编译前要建立一些用户和目录,并确保有正确的权限。sendmail必须有一个set-group-id(默认是smmsp组)的程序来在一个组可写的目录中查询排队邮件。所以我们要建立一个smmsp用户和组。并建立如下目录并设置相应的权限,具体设置要求可查询源码目录树下sendmail/SECURITY文档。
[*]# groupadd smmsp
[*]
[*]# useradd smmsp -d /var/spool/clientmqueue -s /dev/null
[*]
[*]# mkdir /var/spool/clientmqueue
[*]
[*]# chown -R smmsp:smmsp /var/spool/clientmqueue
[*]
[*]# chmod -R 770 /var/spool/clientmqueue
[*]
[*]# mkdir /etc/mail
[*]
[*]# mkdir /var/spool/mqueue
[*]
[*]# chmod go-w / /etc /etc/mail /usr /var /var/spool /var/spool/mqueue
[*]
[*]# chown root / /etc /etc/mail /usr /var /var/spool /var/spool/mqueue
ok,接下来就可以进入源码目录树开始编译了。
[*]# ./Build -c
-c选项能删除上次编译产生的文件。
[*]# ./Build install
编译完成后就可以进行安装。~~!
页: [1]
查看完整版本: sendmail的安装