|
由于大家在配置邮件服务器过程当中很难找一个完整的配置手册,特写此文权当抛砖引玉,设计目标,要求能防垃圾、防病毒、支持pop3,imap,smtp,web收发
Sendmail+cyrus-sasl+dovecot+openwebmail+mailscanner
所用软件包
sendmail.8XXXXXX.rpm
sendmail-cf.8XXXX.rpm
cyrus-sasl-2.1.19-5.rhel4.i386.rpm
dovecot-0.99.11-2.rhel4.1.rpm
httpd-2.0.52-12.ent.rpm
修改sendmail.mc 加入SMTP认证
vi /etc/mail.sendmail.mc
将
dnl TRUST_AUTH_MECH(`DIGEST-MD5 CRAM-MD5 LOGIN PLAIN')dnl
dnl define(`confAUTH_MECHANISMS', `DIGEST-MD5 CRAM-MD5 LOGIN PLAIN')dnl
DAEMON_OPTIONS(`Port=smtp,Addr=127.0.0.1, Name=MTA')
改为
TRUST_AUTH_MECH(`DIGEST-MD5 CRAM-MD5 LOGIN PLAIN')dnl
define(`confAUTH_MECHANISMS', `DIGEST-MD5 CRAM-MD5 LOGIN PLAIN')dnl
DAEMON_OPTIONS(`Port=smtp,Addr=0.0.0.0, Name=MTA')
在 Sendmail 上面启用 ORDB 网站提供的防垃圾邮件功能,请依照底下的步骤进行即可:
# 在 MAILER 之前加入这一行,请注意,底下是『同一行』:
FEATURE(`dnsbl', `relays.ordb.org', `"Email blocked using ORDB.org - see <http://ORDB.org/lookup/?host="$& {client_addr}">"')
执行m4 生成sendmail.cf
m4 /etc/mail/sendmail.mc > /etc/mail/sendmail.cf
写入自己的域名
vi /etc/mail/local-host-name
在最后一行写上自己的域名如 163.com
重启sendmail
/etc/init.d/sendmail restart
修改/etc/dovecot.conf文件:
#protocols = imap imap3
更改为:
protocols = imap imap3 pop3 pop3s
/etc/init.d/dovecot restart
这样就有一个可以收发电子邮件的服务器了
加入openwebmail功能,可以使用户通过web来收发电子邮件
请到http://www.openwebmail.org下载以下软件包,最好是下载rpm包,这样安装更简单,如果比较熟悉linux软件安装的人员,也可以下载.tar.gz包
perl-Text-Iconv-1.4-1.2.el4.rf.i386.rpm
perl-suidperl-5.8.5-12.1.1.i386.rpm
perl-Compress-Zlib-1.34-1.2.el4.rf.i386.rpm
perl-CGI-SpeedyCGI-2.22-1.2.el4.rf.i386.rpm
perl-5.8.5-12.1.i386.rpm
openwebmail-2.51-1.i386.rpm
请用 rpm -ivh perl*rpm 来安装
再用 rpm -ivh openwebmail-2.51-1.i386.rpm 安装openwebmail
cd /var/www/cgi-bin/openwebmail/
./openwebmail-tool.pl --init
修改 /var/www/cgi-bin/openwebmail/etc/openwebmail.conf 文件:
domainnames auto
更改为:
domainnames easy.com (更改为自己定义的域名)
default_language en
更改为:
default_language zh_CN.GB2312 (更改为简体中文版接口)
default_iconset Cool3D.Englist
更改为:
default_iconset Cool3D.Chinese.Simplified (更改为中文3D按键)
修改/var/www/cgi-bin/openwebmail/etc/defaults/openwebmail.conf文件:
authpop3_server localhost
更改为:
authpop3_server 192.168.1.253 (更改pop3服务器的地址)
修改/var/www/cgi-bin/openwebmail/etc/defaults/dbm.conf文件:
dbmopen_ext none
更改为:
dbmopen_ext .db
dbmopen_haslock no
更改为:
dbmopen_haslock yes
继续运行openwebmail-tool.pl文件:
./openwebmail-tool.pl --init
Send the site report?(Y/n) y (输入y,然后按回车键)
sending report...
Thank you.
touch /var/log/openwebmail.log
chcon -u system_u /var/log/openwebmail.log
chcon -t httpd_sys_script_rw_t /var/log/openwebmail.log
chcon -t httpd_unconfined_script_exec_t /var/www/cgi-bin/openwebmail/openwebmail*
说明一下这个部分
touch /var/log/openwebmail.log <==这是产生一个log檔
chcon -u system_u /var/log/openwebmail.log <==这是修改档案使用者权限
chcon -t httpd_sys_script_rw_t /var/log/openwebmail.log <==这是修改写入权限
chcon -t httpd_unconfined_script_exec_t /var/www/cgi-bin/openwebmail/openwebmail* <==这是修改档案由什么套件专用
这些都是因为SELinux造成的,原本档案、目录权限只有使用档案前面那串(rwxrwxrwx),在使用SELinux后,会多出一种管理context type,context type会限制该目录、档案的使用原则,所以,在使用有安装SELinux时,常常会出现apach、ftp明明都设定好了,却还是不能使用,多半出问题,都是SELinux在做怪。
在ie中输入以下地址:
http://mail.easy.com/cgi-bin/openwebmail/openwebmail.pl
Sendmail 的防毒机制
可以使用 Mailsacnner + Clam Antivirus 来做具防毒功能的服务器
使用套件: clamav-0.65-1.1.i386.rpm
clamav-db-0.65-1.1.i386.rpm
MailScanner-4.30.3-2.rpm.tar.gz
1.取得MailScanner
http://www.sng.ecs.soton.ac.uk/mailscanner/
点选Download 选取您的版本并储存
2.解压缩档案 小弟抓的是4.30.3-2版
#tar zxvf MailScanner-4.30.3-2.rpm.tar.gz
3.安装MailScanner
#cd MailScanner-4.30.3-2
#./Update-MakeMaker.sh
#./install.sh
完成MailScanner 的安装
4.取得防毒软件 Clam AntiVirus
由rpmfind.org 下载 clamav套件
关键词 clamav and clamav-db
下载: http://rpmfind.net/
5.安装clamav套件
#rpm -ivh clamav-db-0.65-1.1.i386.rpm
#rpm -ivh clamav-0.65-1.1.i386.rpm
6.修改Mail Scanner 设定让Mail Scanner 和 Clam Anti Virus结合
#vi /etc/MailScanner
#vi MailScanner.conf
找寻 Virus Scanner = none
改成 Virus Scanner = clamav
储存后离开 (:wq)
7.让MailScanner 接手Sendmail的工作启动防毒机制
#service sendmail stop
#chkconfig sendmail off
#chkconfig --level 2345 MailScanner on
#service MailScanner start
8.建立一个clam uptedate的log以查询升级状况
#touch /var/log/clam-update.log
#chmod 600 /var/log/clam-update.log
#chown clamav /var/log/clam-update.log
9.测试升级clamav 并写入到log
#freshclam -d -c 6 -l /var/log/clam-update.log
10.将自动升级clam写入crontab中
#crontab -e
0 * * * * /usr/bin/freshclam --quiet -l /var/log/clam-update.log |
|