设为首页 收藏本站
查看: 1155|回复: 0

[经验分享] 搭建Linux下邮件服务器extmail+postfix+clamav所有软件

[复制链接]

尚未签到

发表于 2015-11-24 08:53:35 | 显示全部楼层 |阅读模式
  搭建Linux下邮件服务器extmail+postfix+clamav
  部分软件简介:
  1、AMP ---apache(web服务) 、mysql(数据库)、php(非必需) 的简称
  2、postfix --mta 邮件系统核心
     3、amavisd-new  提供内容过滤http://www.amavis.org/
  4、clamav -- 杀毒软件 http://packages.sw.be/clamav/
  5、extmail --webmail程序
  6、extman --与extmail集成的后台管理程序
  

  *    procmail  maildrop过滤规则软件
  

  http://search.cpan.org/

  

  安装clamav
rpm -ivh lcms-1.15-1.2.2.i386.rpm
rpm -ivh libwmf-0.2.8.4-10.1.i386.rpm
rpm -ivh ImageMagick-6.2.8.0-3.el5.4.i386.rpm

[iyunv@mail /home/down]#tar zxvf clamav-0.91.2.tar.gz
[iyunv@mail /home/down]#cd clamav-0.91.2
[iyunv@mail /home/down/clamav-0.91.2]#./configure --prefix=/usr/local/clamav --with-dbdir=/usr/local/share/clamav --disable-zlib-vcheck --sysconfdir=/etc/clamav
[iyunv@mail /home/down/clamav-0.91.2]#make
[iyunv@mail /home/down/clamav-0.91.2]#make install

新建相关的文件及目录
[iyunv@mail /home/down/clamav-0.91.2]#mkdir /var/log/clamav
[iyunv@mail /home/down/clamav-0.91.2]#chown -R amavis:amavis /var/log/clamav
[iyunv@mail /home/down/clamav-0.91.2]#chown -R amavis.amavis /usr/local/share/clamav
[iyunv@mail /home/down/clamav-0.91.2]#mkdir /var/run/clamav
[iyunv@mail /home/down/clamav-0.91.2]#chmod 700 /var/run/clamav
[iyunv@mail /home/down/clamav-0.91.2]#chown amavis.amavis /var/run/clamav
[iyunv@mail /home/down/clamav-0.91.2]#mv /etc/clamav/freshclam.conf /etc/clamav/freshclam.conf.old
[iyunv@mail /home/down/clamav-0.91.2]#vi /etc/clamav/freshclam.conf

DatabaseDirectory /usr/local/share/clamav
UpdateLogFile /var/log/clamav/freshclam.log
LogVerbose yes
LogSyslog yes
LogFacility LOG_MAIL
PidFile /var/run/freshclam.pid
DatabaseOwner amavis
DatabaseMirror db.CN.clamav.net
DatabaseMirror database.clamav.net
DatabaseMirror database.clamav.net

[iyunv@mail /home/down/clamav-0.91.2]#mv /etc/clamav/clamd.conf /etc/clamav/clamd.conf.old
[iyunv@mail /home/down/clamav-0.91.2]#vi /etc/clamav/clamd.conf

LogFile /var/log/clamav/clamd.log
LogSyslog yes
LogFacility LOG_MAIL
LogVerbose yes
PidFile /var/run/clamav/clamd.pid
DatabaseDirectory /usr/local/share/clamav
LocalSocket /var/run/clamav/clamd.socket
StreamMaxLength 20M
User amavis
ScanELF yes
ScanPDF yes
ScanMail yes
PhishingSignatures yes


配置库文件及开机自启动
[iyunv@mail /home/down/clamav-0.91.2]#cp contrib/init/RedHat/clamd /etc/rc.d/init.d/clamd
[iyunv@mail /home/down/clamav-0.91.2]#cp contrib/init/RedHat/clamav-milter /etc/rc.d/init.d/clamav-milter
[iyunv@mail /home/down/clamav-0.91.2]#chkconfig --add clamd
[iyunv@mail /home/down/clamav-0.91.2]#chkconfig --add clamav-milter
[iyunv@mail /home/down/clamav-0.91.2]#chkconfig --level 2345 clamd on
[iyunv@mail /home/down/clamav-0.91.2]#chkconfig --level 2345 clamav-milter on
[iyunv@mail /home/down/clamav-0.91.2]#echo "/usr/local/clamav/lib" >> /etc/ld.so.conf
[iyunv@mail /home/down/clamav-0.91.2]#ldconfig -v
[iyunv@mail /home/down/clamav-0.91.2]#vi /etc/rc.d/init.d/clamd
progdir="/usr/local/clamav/sbin"  //19行

启动服务及添加自动任务
[iyunv@mail /home/down/clamav-0.91.2]#crontab –e
37 * * * * /usr/local/clamav/bin/freshclam

安装amavisd
[iyunv@mail /home/down]#tar zxvf amavisd-new-2.6.1.tar.gz
[iyunv@mail /home/down]#cd amavisd-new-2.6.1
[iyunv@mail /home/down/amavisd-new-2.6.1]#mkdir -p /var/amavis /var/amavis/tmp /var/amavis/var /var/amavis
[iyunv@mail /home/down/amavisd-new-2.6.1]#chown -R amavis:amavis /var/amavis
[iyunv@mail /home/down/amavisd-new-2.6.1]#chmod -R 750 /var/amavis
[iyunv@mail /home/down/amavisd-new-2.6.1]#cp amavisd /usr/local/sbin/
[iyunv@mail /home/down/amavisd-new-2.6.1]# chown root /usr/local/sbin/amavisd
[iyunv@mail /home/down/amavisd-new-2.6.1]#chmod 755 /usr/local/sbin/amavisd
[iyunv@mail /home/down/amavisd-new-2.6.1]#cp amavisd.conf /etc/
[iyunv@mail /home/down/amavisd-new-2.6.1]#chown root /etc/amavisd.conf
[iyunv@mail /home/down/amavisd-new-2.6.1]#chmod 644 /etc/amavisd.conf
[iyunv@mail /home/down/amavisd-new-2.6.1]#mkdir /var/virusmails
[iyunv@mail /home/down/amavisd-new-2.6.1]#chown amavis:amavis /var/virusmails
[iyunv@mail /home/down/amavisd-new-2.6.1]#chmod 750 /var/virusmails

配置amavisd.conf文件
[iyunv@mail /home/down]#vi /etc/amavisd.conf
max_servers=8;
$daemon_user = 'amavis';
$daemon_group = 'amavis';
$mydomain = 'mail.com';
$db_home = "$MYHOME/db";
$inet_socket_port = 10024;
$sa_tag_level_deflt = -100;
$sa_tag2_level_deflt = 6.3;
$sa_kill_level_deflt = $sa_tag2_level_deflt;
$virus_admin = "virusalert@$mydomain";
$sa_spam_subject_tag = '***SPAM*** ';
$notify_method = $forward_method;
$forward_method = 'smtp:127.0.0.1:10025';
$final_virus_destiny = D_DISCARD;
$final_banned_destiny = D_DISCARD;
$final_spam_destiny = D_PASS;
$virus_admin = "postmaster\@$mydomain"; # notifications recip.
$mailfrom_notify_admin = "postmaster\@$mydomain"; # notifications sender
$mailfrom_notify_recip = "postmaster\@$mydomain"; # notifications sender
$mailfrom_notify_spamadmin = "postmaster\@$mydomain"; # notifications sender
$mailfrom_to_quarantine = ''; # null return path; uses original sender if undef
['ClamAV-clamd',
&ask_daemon, ["CONTSCAN {}n", "/var/run/clamav/clamd.socket"],
qr/bOK$/, qr/bFOUND$/,
qr/^.*?: (?!Infected Archive)(.*) FOUND$/ ],


[iyunv@mail /usr]#/usr/local/sbin/amavisd debug
ERROR: MISSING REQUIRED BASIC MODULES:
  IO::Wrap
  IO::Stringy
  Unix::Syslog
  MIME::Words
  MIME::Head
  MIME::Body
  MIME::Entity
  MIME::Parser
  MIME::Decoder
  MIME::Decoder::Base64
  MIME::Decoder::Binary
  MIME::Decoder::QuotedPrint
  MIME::Decoder::NBit
  MIME::Decoder::UU
  MIME::Decoder::Gzip64
  Net::Server
  Net::Server::PreFork
BEGIN failed--compilation aborted at /usr/local/sbin/amavisd line 232.

[iyunv@mail /home/down]#perl -MCPAN -e shell
cpan> install IO::Wrap
cpan> install IO::Stringy
修正:用cpan 加模块名(如 cpan  Compress::Zlib),比较省事.
解决"Can't locate Crypt/OpenSSL/RSA.pm in @IN"报错的方法:cpan Crypt::OpenSSL::RSA即可.其它的perl模块可如法炮制.

错误:Can't locate BerkeleyDB

解决"Can't locate Crypt/OpenSSL/RSA.pm in @IN"报错的方法:cpan Crypt::OpenSSL::RSA即可.其它的perl模块可如法炮制.
解决方法:install BerkeleyDB

Problem in Amavis::DKIM code: Can't locate Mail/DKIM/Verifier.pm in @INC
cpan> install Mail::DKIM::Verifier
cpan> install Crypt::OpenSSL::RSA
cpan> install  Convert::TNEF
cpan> install Convert::UUlib
cpan> install  Archive::Zip
测试启动
[iyunv@mail /usr]#/usr/local/sbin/amavisd debug




测试启动spamassassin
[iyunv@mail /root]#vi /etc/mail/spamassassin/local.cf

# These values can be overridden by editing ~/.spamassassin/user_prefs.cf
# (see spamassassin(1) for details)

# These should be safe assumptions and allow for simple visual sifting
# without risking lost emails.

required_hits 10.0
report_safe 1
rewrite_header Subject [SPAM]
required_hits 10.0
rewrite_subject 1
use_bayes 1
bayes_auto_learn 1
skip_rbl_checks 1
use_razor2 0
use_pyzor 0
ok_locales all

[iyunv@mail /root]#spamassassin -d --lint

如果出现以下错误,可把local.cf里的rewrite_subject 1注释掉,即在前面加#,不影响使用
[1034] warn: config: failed to parse line,skipping: rewrite_subject 1
[1034] warn: lint: 1issues detected, please rerun with debug enabled for more information

启动进程,并将其加入到自动启动队列
[iyunv@mail /root]#/usr/bin/spamd -d
[iyunv@mail /root]#echo "/usr/bin/spamd -d" >> /etc/rc.local

启动amavis并测试postfix ,正常情况下应出现下面的提示
[iyunv@mail /root]#/usr/local/sbin/amavisd
[iyunv@mail /root]#postfix start
postfix/postfix-script: starting the Postfix mail system

如果出现这个错误
[iyunv@mail /root]#telnet localhost 25
Trying 127.0.0.1...
telnet: connect to address 127.0.0.1: Connection refused
telnet: Unable to connect to remote host: Connection refused

[iyunv@mail /mnt/Server]#rpm -ivh xinetd-2.3.14-10.el5.i386.rpm
[iyunv@mail /mnt/Server]#rpm -ivh telnet-server-0.17-38.el5.i386.rpm
[iyunv@mail /mnt/Server]#service xinetd restart

[iyunv@mail /root]#tail -f /var/log/maillog
发现
Aug 28 01:54:15 mail postfix/smtpd[9450]: fatal: open database /etc/aliases.db:                  No such file or directory

[iyunv@mail /root]# postfix stop
postfix/postfix-script: stopping the Postfix mail system
postfix/postfix-script: waiting for the Postfix mail system to terminate
[iyunv@mail /root]#newaliases
[iyunv@mail /root]#cd /etc
[iyunv@mail /etc]#touch aliases.db
[iyunv@mail /etc]#chmod 755 aliases.db
[iyunv@mail /etc]#postalias aliases
[iyunv@mail /etc]#postfix start
postfix/postfix-script: starting the Postfix mail system


[iyunv@mail /etc]#telnet 127.0.0.1 25
Trying 127.0.0.1...
Connected to mail.com (127.0.0.1).
Escape character is '^]'.
220 Welcome to our redhat.mail.com ESMTP,Warning: Version not Available!
EHLO mail.com
250-redhat.mail.com
250-PIPELINING
250-SIZE 1433600
250-VRFY
250-ETRN
250-AUTH LOGIN PLAIN
250-AUTH=LOGIN PLAIN
250-ENHANCEDSTATUSCODES
250-8BITMIME
250 DSN
quit
221 2.0.0 Bye
Connection closed by foreign host.

[iyunv@mail /etc]#telnet 127.0.0.1 10025
Trying 127.0.0.1...
Connected to mail.com (127.0.0.1).
Escape character is '^]'.
220 Welcome to our redhat.mail.com ESMTP,Warning: Version not Available!
EHLO mail.com
250-redhat.mail.com
250-PIPELINING
250-SIZE 1433600
250-VRFY
250-ETRN
250-AUTH LOGIN PLAIN
250-AUTH=LOGIN PLAIN
250-ENHANCEDSTATUSCODES
250-8BITMIME
250 DSN
quit
221 2.0.0 Bye
Connection closed by foreign host.

运维网声明 1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com

所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其承担任何法律责任,如涉及侵犯版权等问题,请您及时通知我们,我们将立即处理,联系人Email:kefu@iyunv.com,QQ:1061981298 本贴地址:https://www.yunweiku.com/thread-142866-1-1.html 上篇帖子: 在Debian 4.0 rc3上安装postfix+sasl 验证及防垃圾SPAM机制 下篇帖子: mutt+postfix+fetchmail在Linux(fedora)下实现邮件收发。
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

扫码加入运维网微信交流群X

扫码加入运维网微信交流群

扫描二维码加入运维网微信交流群,最新一手资源尽在官方微信交流群!快快加入我们吧...

扫描微信二维码查看详情

客服E-mail:kefu@iyunv.com 客服QQ:1061981298


QQ群⑦:运维网交流群⑦ QQ群⑧:运维网交流群⑧ k8s群:运维网kubernetes交流群


提醒:禁止发布任何违反国家法律、法规的言论与图片等内容;本站内容均来自个人观点与网络等信息,非本站认同之观点.


本站大部分资源是网友从网上搜集分享而来,其版权均归原作者及其网站所有,我们尊重他人的合法权益,如有内容侵犯您的合法权益,请及时与我们联系进行核实删除!



合作伙伴: 青云cloud

快速回复 返回顶部 返回列表