/ 中存储网

sendmail+BerkeleyDB的安装步骤

2014-07-13 20:08:27 来源:中存储网

       因为sendmail自身的安全性不足,配置又复杂,因而不用好久了,既然这次需求,就记录一下安装过程吧

1 下载Berkeley DB -- 新的Berkeley DB包, Sendmail通过利用该数据库的功能, 才能有效的抵挡邮件攻击(于http://www.oracle.com/technetwork/database/berkeleydb/downloads/index.html?ssSourceSiteId=ocomen  可以下载各种版本)

下载db-4.8.30

2 下载sendmail-8.14.5

3 先安装db-4.8.30

# tar db-4.8.30.tar

#cd dist

# setenv CC gcc

#cd build_unix 然后运行 ../dist/configure (这个要注意)

# make

# make install

缺省安装在/usr/local/BerkeleyDB/ 下,这个目录要记得,安装sendmail的时候要配置

4.安装openssl

# ./config --prefix=/usr/local --openssldir=/usr/local/openssl

5 安装sendmail ,tar开包后

#cd ./sendmail-8.14.5/devtools/Site

# vi site.config.m4

dnl ### Changes for PH_MAP support.
APPENDDEF(`confMAPDEF',`-DNEWDB')
APPENDDEF(`confLIBS', `-ldb')
APPENDDEF(`confINCDIRS', `-I/usr/local/BerkeleyDB.4.8/include')
APPENDDEF(`confLIBDIRS', `-L/usr/local/BerkeleyDB.4.8/lib')

这个配置是要sendmail编译的时候找最新你安装DB的头文件和库

# Build   编译通过,编译完成后会自动生成目录obj.SunOS.5.9.sun4(这个名字和你系统有关)

# mkdir  /usr/share/man/cat1,cat5,cat8三个目录

# Build install

至此安装完sendmail

5 另外

1)vi /.cshrc 添加 /usr/local/BerkeleyDB.4.8/lib和 /usr/local/BerkeleyDB.4.8/bin

2)如出来找不到libdb-*.*.so的报错,可到/usr/local/BerkeleyDB.*.*/lib找到所对应的文件,把对应的文件拷至/usr/lib就可以解决

3)如果报错找不到libgcc,而你明明已经安装了libgcc

cp /usr/local/lib/libgcc_s.so.1 到/usr/lib 下就OK了

4)配置文件缺省在/etc/mail下,运行/usr/lib/sendmail -bd -q1h 启动进程

5)修改access后,需要makemap hash access.db<access;修改sendmail.mc后

  m4 /etc/mail/sendmail.mc >/etc/mail/sendmail.cf