1. 2.1pwcheck_method: saslauthdCopied!
1.1saslauthd_enable="YES"Copied!最后,启动 saslauthd 守护进程:1# service saslauthd startCopied!这个服务将充当sendmail
使用 FreeBSD 的passwd
数据库来完成身份验证时的代理人角色。这避免了为每个需要使用 SMTP 身份验证的用户建立对应的用户名和口令的麻烦,也确保了登录与邮件的口令一致。
1.现在编辑 /etc/make.conf 文件,添加如下行:1SENDMAIL_CFLAGS=-I/usr/local/include/sasl -DSASL2SENDMAIL_LDADD=/usr/local/lib/libsasl2.soCopied!
1.重新编译sendmail
运行如下命令:1# cd /usr/src/lib/libsmutil2# make cleandir && make obj && make3# cd /usr/src/lib/libsm4# make cleandir && make obj && make5# cd /usr/src/usr.sbin/sendmail6# make cleandir && make obj && make && make installCopied!如果 /usr/src 和共享库没有大的变化并且它们都必须可用,sendmail
编译应该没有任何问题。
1.sendmail
被重新编译和安装后,编辑你的 /etc/mail/freebsd.mc 文件或本地.mc
文件。许多管理员选择使用跟 hostname(1) 一样的唯一的.mc
文件输出。添加这些行在这个文件:1dnl set SASL options2TRUST_AUTH_MECH(`GSSAPI DIGEST-MD5 CRAM-MD5 LOGIN')dnl3define(`confAUTH_MECHANISMS', `GSSAPI DIGEST-MD5 CRAM-MD5 LOGIN')dnlCopied!这些选项配置有不同的方法,对于sendmail
验证用户。如果你想要使用除pwcheck
之外的方法,请参考 Sendmail 文档。
1.最后,在 /etc/mail 运行 make(1) 。它将建立你的新.mc
文件并建立一个.cf
文件命名为freebsd.cf
或者本地的.mc
文件。接着使用命令make install restart
,这将复制文件到sendmail.cf
,并且正确的重新启动sendmail
。更多有关这个过程的信息,你可以参考 /etc/mail/Makefile 文件。
sendmail
的 LogLevel 到 13 并且查看 /var/log/maillog 中的信息。