于源码目录树的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
编译完成后就能够进行安装。
5、sendmail配置
要sendmail正常运行,还需配置几个文档,首先最重要的就是sendmail.cf 文档了。他在源
码目录树下的cf/cf目录下有很多例子可参考。您能够拷贝使用。由于sendmail.cf中的语法
很复杂,所以不建议手工修改。我们能够以sendmail.mc文档配合sendmail-cf目录下的宏通
过m4预处理器自动生成。m4预处理器用来从一组宏文档中创建sendmail配置文档。宏文
件作为输入被读进来。宏被展开,然后写到一个输出文档。sendmail-cf目录一般放在/usr/share
目录下。其实sendmail-cf目录的内容和源码目录树下的cf目录的内容是相同的,所以,为
了确保sendmail-cf目录的内容和安装版本同步,要把源码目录树下的cf目录的内容拷贝到
/usr/share/sendmail-cf目录。
sendmail.mc配置文档内容如下:
divert(-1)
include(`/usr/share/sendmail-cf/m4/cf.m4')
VERSIONID(`linux setup for Red Hat Linux')dnl
OSTYPE(`linux')
dnl Uncomment and edit the following line if your mail needs to be sent out
dnl through an external mail server:
dnl define(`SMART_HOST',`smtp.your.provider')
define(`confDEF_USER_ID',``8:12'')dnl
undefine(`UUCP_RELAY')dnl
undefine(`BITNET_RELAY')dnl










