版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
本文格式为Word版,下载可任意编辑——postfix图文配置文档ExtMailSolutionHOWTOforLinux
版权声明:
本文版权归所有,如其他个人、第三方网站或媒体报刊等需转载全文或节选,为支持我们的工作,请务必注明如下信息:
???
文档所有者:ExtmailDevTeam;
文章原始出处:http://./docs/extmail_solution_linux/项目首页:http://.
假使因此而给您带来麻烦,请您原谅,感谢合作。
变更说明
???????
0.212023-03-23:文档及其涉及软件的全面更新,Ray0.202023-11-26:增加对uidnumber/gidnumber说明,感谢elm
0.192023-11-25:增加对maildrop增加vuser/vgroup说明,感谢elm0.182023-09-04:修正一处输入错误,一处不明确的地方
0.172023-08-30:修正缺漏receive_override_options的bug0.162023-08-28:修正maildrop配置错误,感谢风云!0.152023-08-17:增加mysql/httpd开机自启动的支持
关于此文
?????
版本:0.21
作者:Hezhiqiang,Ray
项目主页:http://.个人主页:http://.最终更新:2023-3-20
本文档以2023-07-25的早期文档为蓝本,以RPM系统为基础(基于RPM系统具有便利、快捷,易快速复制和重现的优点。假使用户希望获得这些RPM包的源码包,可以与ExtmailDevTeam联系)。所涉及软件全部是OpenSource软件,版权以GPL为主,作为企业应用没有任何版权/法律问题。
编写本文的初衷,是给那些希望快速架设邮件系统而不想过多了解繁杂的系统知识的网管/用户,为了使软件之间的结合更紧凑,部分软件的配置及测试方面进行了加强改进,因此本文的一些操作步骤ExtmailDevTeam不保证在其他场合能完全适用,敬请注意。
本文档假设读者在CentOS4.x或RedHatEnterPriseLinux4.x平台上安装,并具有一定的Unix平台/Linux平台系统经验,懂得rpm基本命令及常规的系统操作,如文件的删除,目录创立,改名,和vi编辑器的基本使用等。
本文档假设待安装邮局的域名为并已在DNS设置MX记录指向。读者请根据自身实际状况予以修改。本文档所有内容均在Centos4.6系统安装、测试通过。
本文档由Extmail项目组负责解释,并根据Extmail项目的建设和发展,适时予以更新。如手册与实际项目状况有冲突,以文档听从实际为原则。
文档目录
???????????????
ExtMailSolution概述硬件配置操作系统安装
下载ExtMailSolution软件包MTA-Postfix配置配置Courier-Authlib安装maildrop配置Apache
安装Webmail-ExtMail安装管理后台-ExtMan
配置图形化日志系统-mailgraph_ext测试基本系统配置Cyrus-SASL安装Courier-IMAP内容/病毒过滤
准备工作ClamAVAmavisd-new配置Postfix测试
?反垃圾邮件-SpamLocker
准备工作配置/测试
与Postfix结合
??
最终测试附加信息
增加FCGI支持编译Courier-IMAP
???终止语已知BugsTODO列表
ExtMailSolution结构
ExtMailSolution是一个基于优秀开源软件的电子邮件系统解决方案,核心部件包括了Postfix,Amavisd-new,ClamAV,ExtMail和ExtMan,Courier系列软件。是一个功能相对比较齐全的免费电子邮件系统。以下是其主要的特性列表:
??????????????
支持SMTP/POP3/HTTP协议支持SMTP认证及ESMTP
可支持大容量邮箱(大于1GB)高速Web界面访问邮箱完整的Web管理后台在线服务端病毒过滤内建内容过滤
SMTP行为识别垃圾邮件支持大量反垃圾邮件技术图形化邮件日志分析
支持别名/多域/域管理员等支持网络磁盘/POP3邮件支持读/写HTML格式邮件支持定制模板及多语言
整个邮件解决方案由如下软件组成:功能模块操作系统(OS)内容CentOS4.6备注CentOS和RHEL是一样的,而且升级免费使用最新版本2.5.1可选openLDAP或NetScapeLDAP,本文以邮件传输代理(MTA)Postfix2.5.1数据库/目录服务MySQL4.1MySQL为蓝本邮件投递代理(MDA)maildrop2.0.xWeb帐户管理后台POP3服务器WebMail系统防病毒软件(Anti-Virus)ExtMan0.2.4Courier-IMAPExtMail1.0.4ClamAV0.92-2支持过滤和强大功能支持无限域名、无限用户只使用pop3部分,对于大部分企业而言完全足够支持多语言、全部模板化,功能基本齐全最热门的开源杀毒软件SMTP阶段反垃圾邮件工基于SMTP行为识别的Antispam软件,大量SpamLocker0.10具可选插件内容过滤器Amavisd-new2.5.4Content-Filter软件,支持与clamav/sa的挂接著名的SA,可以支持大量规则,但速度慢标准的SASL实现库,可以支持Courierauthlibauthlib是maildrop,courier-imap等服务的关键部件在ExtMan中已经包含了CentOS自带内容级别的反垃圾邮件SpamAssassin工具SMTP认证库其他数据认证库日志分析及显示Web服务器
CyrusSASL2.1xCourierAuthlib0.60mailgraph_extApache2.0.x硬件配置
要流畅地运行邮件系统,建议的硬件配置如下:
?????
物理内存:512M+推荐1024M;交换区:2倍物理内存大小;
CPU:PIII1G+推荐P4及其以上级别;主板:推荐Intel原装;
网卡:100M/1000M推荐3Com/Intel;
操作系统安装
本文档支持RedHatEnterprise4.x及CentOS4.x版本。要注意的是安装系统时,只安装如下的组件:
?
WebServer
要注意必需选中httpd-suexec软件包,否则下文的配置将失效
?
MYSQL数据库
注意必需选中mysql-server,libdbi-dbd-mysql,perl-DBD-mysql等模块,否则extmail将无法连接mysql
?VIM编辑器
猛烈建议安装vim-enhanced软件包,它支持main.cf彩色高亮语法分析
其余的Xwindows,打印,KDE/Gnore,服务器配置工具,网络工具,开发包等全部都不是必选组件。安装完毕进入操作系统后,为增加系统安全性,建议阻止root直接登陆,并增加一个非root帐户,例如sysadmin。这样无法以root账户直接登陆系统,必需先以sysadmin身份登陆再su到root执行。方法:
CentOS4.6安装步骤图解
以下将以详细的图解来介绍如何安装CentOS4.3
CentOS启动光盘的启动画面,直接回车即可。
系统提醒“是否需要校验CD媒质〞,请选择“Skip〞。
选择“English〞作为安装界面的语言。
安装类型请务必选择“Custom〞,以便之后详细选择要装的软件包。
磁盘分区设置请选择“ManuallypartitionwithdiskDruid〞(手工分区)。
如图,我们将/,/usr,/var,/var/spool/postfix等单独分成一个分区,注意:假使磁盘大小允许,请将/var/spool/vscan目录也单独成一个分区,该目录主要存放被过滤的临时邮件。
设置服务器IP地址及子网掩码,记得点选“Activateboot〞。
设置服务器网关及DNS,请将离你的服务器最近DNS服务器IP地址填入“PrimaryDNS〞。
防火墙配置时,开启防火墙(选EnableFireWall),并放行常规的服务(服务列表全选),最重要的是记得开启SELinux(选Active)
时区选“上海〞。
输入root帐户密码,建议使用较长的密码,并混杂数字与字母及特别字符。
进入软件组的选择对话界面后,我们只选择Editors组。
其次选择是WebServer及FTPServer组。
再次选择MySQLDataBase组,并点击右边的Details
在Details对话框里,确保libdbi-dbd-mysql,mysql-server,perl-DBD-MySQL等模块都被选中。extmail依靠这些软件包。
最终,确认一下所做的选择。其他没有被提到的软件模块/组全部都去掉。总共软件大小有900MB左右。
点Next后,安装系统提醒必需要准备好CentOS的第1,2,3张光盘。
系统进行初始化,磁盘分区等。
系统安装到后面时,需要换安装盘。请将盘2及盘3按提醒放入光驱。
ServerNameDocumentRoot/var//extsuite/extmail/html/ScriptAlias/extmail/cgi//var//extsuite/extmail/cgi/Alias/extmail//var//extsuite/extmail/html/ScriptAlias/extman/cgi//var//extsuite/extman/cgi/Alias/extman//var//extsuite/extman/html/#SuexecconfigSuexecUserGroupvuservgroup$final_virus_destiny=D_DISCARD;$final_banned_destiny=D_BOUNCE;$final_spam_destiny=D_PASS;$final_bad_header_destiny=D_PASS;注意上述4个设置中,对spam(垃圾邮件)默认会直接反弹(BOUNCE),现在修改为继续投递(PASS)但在信头中增加相关X-Spam-Status信息等。这样可以很便利的在extmail中设置将被标记为垃圾邮件的mail投递到“垃圾邮件箱〞中,便于用户翻查。
增加邮件别名
编辑/etc/postfix/aliases,增加如下信息,注意:默认的aliases数据库里已有一条
virusalert的别名,所以请删除,再输入下面的别名记录,并确保所有记录都是唯一的:
virusalert:rootspam.police:rootpostfix:test@
保存并执行newaliases命令生成新的别名数据库,这样所有的重新启动amavisd:/etc/rc.d/init.d/amavisdrestart
配置Postfix集成amavisd-new
vi/etc/postfix/master.cf增加如下内容:
:10025inetn-n--smtpd-ocontent_filter=-olocal_recipient_maps=-orelay_recipient_maps=-osmtpd_restriction_classes=-osmtpd_client_restrictions=-osmtpd_helo_restrictions=-osmtpd_sender_restrictions=-osmtpd_recipient_restrictions=permit_mynetworks,reject-omynetworks=/8-ostrict_rfc821_envelopes=yes-osmtpd_error_sleep_time=0-osmtpd_soft_error_limit=1001-osmtpd_hard_error_limit=1000-oreceive_override_options=编辑/etc/postfix/main.cf
#Content-Filtercontent_filter=smtp:[]:10024receive_override_options=no_address_mappings注意:receive_override_options这里必需增加,阻止地址展开/影射,否则假使遇到别名的时候会引起冗余邮件的产生。保存后servicepostfixrestart
测试Clamav
然后输入如下命令:每输入一行后等待1秒左右:
telnetlocalhost25Trying...Connectedtolocalhost.localdomain().Escapecharacteris'^]'.220ESMTPPostfix-bymailfrom:2502.1.0Okrcptto:2502.1.5Okdata354Enddatawith.X5O!P%@AP[4\\PZX54(P^)7CC)7}$EICAR-STANDARD-ANTIVIRUS-TEST-FILE!$H+H*.2502.0.0Ok:queuedasBC24E85260quit2212.0.0ByeConnectionclosedbyforeignhost.在邮件日志里,应当有相应的信息出现:
Mar2206:43:15localhostamavis[15405]:(15405-01)BlockedINFECTED
(Eicar-Test-Signature),[35]->,quarantine:virus-mI6vbjkWZ2Tz,Message-ID:,mail_id:mI6vbjkWZ2Tz,Hits:-,size:1757,474ms
假使看到类似这样的日志,说明Clamav+Amavisd-new工作正常。
SpamLocker配置与安装
安装需求
支持Linux/BSD或Solaris,HP-UX等操作系统Perl5.6+,建议Perl5.8.0以上Net::DNSPOSIXFcntlDigest::MD5Digest::SHA1Digest::HMACNet::IP解包软件
tar-zxvfsrc/slockd-0[1][1].10.tar.gz-Csrccp-rsrc/slockd-0.10/usr/local/slockd
安装相关Perl模块
由于slockd是以smtp特征检测为主的软件,因此很大程度依靠dns库,必需安装Net::DNS库才能正常工作。除此外还有诸如HMAC,MD5及SHA1,Net-IP等模块。
执行以下命令安装需要的模块,注意:这些模块在上文安装Amavisd-new时已经安装过,这里重复是为了强调slockd依靠这些软件包
rpm-ivhRPMS/perl-Digest-SHA1-2.07-5.i386.rpmrpm-ivhRPMS/perl-Digest-HMAC-1.01-2ext.i386.rpmrpm-ivhRPMS/perl-Net-IP-1.24-2ext.i386.rpmrpm-ivh--nodepsRPMS/perl-Net-DNS-0.57-1hzq.i386.rpm配置resolv.conf
请确认/etc/resolv.conf里的dns服务器是离你的邮件服务器最近,速度最快的dnsserver,slockd很依靠dns的好坏,因此给系统配置一个快速的dns能大幅度提高处理速度。以下给出一个配置仅供参考:nameserver8
上述dns服务器是广东电信的DNS服务器,对于非广东朋友,请改为离你最近的dns服务器ip
假使可能的话,请配置一个简单的bind9,成为本地的dnscacheserver,可以获得最高性能。这里略过这一步骤,但您必需确保dns的配置是正确并且可靠的,否则slockd将不能工作!
启动/测试
执行:
/usr/local/slockd/slockd-initstart
此时slockd将启动,并进入非daemon方式的监听模式,接受来自10030端口的请求,命令行下将显示如下调试信息:
Startingspamlockerdaemon:slockdstartingchild2908startingchild290908-0112:34:40[2908]:LoadingAPF::Plugin::localctrl08-0112:34:40[2909]:LoadingAPF::Plugin::localctrl08-0112:34:40[2908]:LoadingAPF::Plugin::anvil08-0112:34:40[2908]:LoadingAPF::Plugin::fqdn08-0112:34:40[2909]:LoadingAPF::Plugin::anvil08-0112:34:40[2908]:LoadingAPF::Plugin::dnsbl08-0112:34:40[2909]:LoadingAPF::Plugin::fqdn08-0112:34:40[2909]:LoadingAPF::Plugin::dnsbl08-0112:34:40[2908]:LoadingAPF::Plugin::hostname08-0112:34:40[2909]:LoadingAPF::Plugin::hostname开启另一个ssh/终端窗口,进入/usr/local/slockd/tools目录,输入:
perlpolicy_sig-hlocalhost-p10030--heloFOOBAR\\--ip--fromtest@--totest@此时,程序应当返回如下错误信息:
action=504:rejected,see/cgi/why?fqdn这表示slockd初步的正常工作了。
后台方式运行slockd
调试正确后,必需将slockd配置成后台服务进程(DaemonProcess)。vi/usr/local/slockd/config/main.cf将如下两个配置的解释去掉:
#uncommentthefollowinglineifyouneedtodaemonizesetsid1##logginglog_file/var/log/slockd.log然后在运行slockd的命令行窗口按ctrl+c,关闭方才运行的slockd。或者在另一个命令行窗口输入如下命令以杀死slockd进程:killallslockd然后执行:
/usr/local/slockd/slockd-initstart
自启动
输入如下的命令,将slockd启动参与到系统里,这样下一次服务器重新启动,就可以自动执行slockd了。
echo\配置Postfix
slockd调试正常后,必需配置postfix以使其开启对slockd的支持,编辑
/etc/postfix/main.cf,将check_policy_serviceinet::10030这一行记录增加到smtpd_recipient_restrictions里,例如:
smtpd_recipient_restrictions=permit_mynetworks,permit_sasl_authenticated,reject_non_fqdn_hostname,reject_non_fqdn_sender,reject_non_fqdn_recipient,reject_unauth_destination,reject_unauth_pipelining,reject_invalid_hostname,check_policy_serviceinet::10030最终,重新启动postfix以使配置生效servicepostfixrestart本卷须知:
上述配置是将slockd的查询放到最终,这也是进一步提高资源利用律的方法,由于有部分功能postfix已实现了,所以就先由postfix检测,假使检测不到再由slockd完成。
最终测试
现在通过简单的email收发来确认系统是否正常。发送测试邮件
输入以下命令,通过telnet方式给test@发送一封测试信件
telnetlocalhost25Trying..
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2024冷库租赁合同书范本(适用小型企业)
- 2024年度互联网广告技术服务合同
- 2024年买卖合同标的为新能源汽车
- 2024年度影视制作与发行承包合同
- 2024年度房地产商业综合体建设项目施工合同
- 公租房个人收入证明(12篇)
- 2024年度安置房社区文化活动合同
- 手机教学课件教学
- 2024年度品牌合作框架协议
- 2024年度特许经营合同标的及许可使用范围
- 海洋工程柔性立管发展概况
- 汉语教师志愿者培训大纲
- 护理导论 评判性思维
- SPC培训资料_2
- 学习适应性测验(AAT)
- ADS创建自己的元件库
- MATLAB仿真三相桥式整流电路(详细完美)
- 2019年重庆普通高中会考通用技术真题及答案
- 天秤座小奏鸣曲,Libra Sonatine;迪安斯,Roland Dyens(古典吉他谱)
- 钢筋混凝土工程施工及验收规范最新(完整版)
- 光缆施工规范及要求
评论
0/150
提交评论