postfix电子邮件服务器配置

上传人:妈**** 文档编号:103986151 上传时间:2022-06-09 格式:DOCX 页数:56 大小:5.33MB
收藏 版权申诉 举报 下载
postfix电子邮件服务器配置_第1页
第1页 / 共56页
postfix电子邮件服务器配置_第2页
第2页 / 共56页
postfix电子邮件服务器配置_第3页
第3页 / 共56页
资源描述:

《postfix电子邮件服务器配置》由会员分享,可在线阅读,更多相关《postfix电子邮件服务器配置(56页珍藏版)》请在装配图网上搜索。

1、编号:时间:2021年x月x日书山有路勤为径,学海无涯苦作舟页码:第56页 共56页postfix+dovecot+openwebmail安装设置 Postfix实验名称: postfix电子邮件服务器配置实验目的:实现postfix电子邮件服务器的基本环境配置,在些基础上提高postfix防垃圾邮件能力、防电子邮件包含病毒及保护postfix的安全措施(拒绝服务攻击);如何定期地去清理日志及利用工具查看日志,即是:postfix+dovecot+cyrus-sasl+openwebmail/squirrelmail+mailScanner+Antivirus+spamAssassin(解释:

2、dovecot提供imap、pop3服务(在新版本的redhat linux 中dovecot代替了imap软件包);cyrus-sasl提供认证功能的;openwebmail/squirrelmail都是提供webmail服务,其中squirrelmail是redhat自带的,在第三张光盘;而openwebmail则是第三方软件;mailScanner好像是邮件扫描用的,主要与Antivirus(防病毒)结合;spamAssassin是用来处理垃圾邮件的,判断邮件是否为垃圾邮件)实验内容:1.设置服务器的IP地址为10.2.46.129/24,首先DNS为10.2.46.129,关闭防火墙(

3、便于测试)2. 安装dns服务器所需要的软件包:bind-utils(第一张光盘)、bind、bind-libs(第一张光盘)、bind-chroot(第二张光盘)、caching-nameserver(第四张光盘)3. 配置dns服务器的主机记录、邮件记录及测试4.安装postfix(第三张光盘)和postfix-pflogsumm(依赖于perl-Date-Calcperl-Bit-Vectorperl-Carp-Clan)软件包-所有包都在第二张光盘5. dovecot及cyrus-sasl(Cyrus-sasl的功能就是实现密码验证机制)一般在系统安装时,都安装上去了6.配置postf

4、ix的主配置文件main,cf及其它文件的配置,如:virtual、access(访问文件)、master.cf(控制文件)7. 安装openwebmail/squirrelmail、mailScanner、Antivirus、spamAssassin及它们相关的配置8.在实验中遇到的问题时,如何解决,记录解决的方法,做好实验的总结实验过程:一、设置服务器的IP地址,关闭iptables及SElinux#service network restart#service iptables restart#ifconfig eth0二、DNS配置#vi named.conf#vi named.zon

5、es#vi 123.zone#vi 123.localDNS测试:先关闭防火墙、selinux,开启dns服务#chkconfig -level 345 named on三、postfix的基本配置及启用SMTP认证机制1、设置服务器的主机名为#vi /etc/sysconfig/network #reboot -重启后主机名就是,可以用#hostname来查看2、由于之前用过sendmail,所以在安装启动postfix时,停止sendmail服务,最好就是卸载sendmail。这里我停止sendmail服务3、安装postfix-pflogsumm和postfix软件包,由于postfix

6、-pflogsumm依赖于perl-Date-Calcperl-Bit-Vectorperl-Carp-Clan,所以先安装这些软件包安装好后在/etc/postfix/目录下,就有相应的配置文件了主要文件: /etc/postfix/master.cf是控制文件 /etc/postfix/main.cf是主配置文件 /etc/postfix/virtual是虚拟域名文件 /etc/aliases是别名配置文件 /etc/access允许那些网段、区域邮件进行转发4编辑/etc/postfix/main.cf#vi /etc/postfix/main.cf指定运行Postfix邮件系统的主机名

7、称指定Postfix邮件系统使用的域名指定发件人所在的域名注意:这里的$mydomain是一个变量,myorigin的值等于前面赋予配置文件main.cf默认开启的,必须注释,否则inet_interfaces = all就不生效指定Postfix邮件系统监视的网络接口指定Postfix接收邮件时收件人的域名注意:这里的mynetworks_style的值class =与伺服器位于同一级IP网路的主机都可以使用代转服务subnet =所在网域的任一个IP都可以使用代转服务host =仅开放localhost为信任?可代转的主机指定您所在的网络地址10.2.46.0/245.保存并退出,重启po

8、stfix服务,如果DNS服务器开启了,此时你就会发现在启动postfix服务时,很慢很慢,甚至启动失败;如果关闭DNS服务器,再启动postfix服务时,就可启动了。但是实验中要用到DNS域名解释。出现此问题的原因主要是:对于redhat的linux默认的mta是sendmail(之前用过sendmail电子邮件服务),所以要设置mta是postfix才行,就是使用alternatives -config mta 然后选择postfix(当然你系统要已经安装了postfix)就可以使用postfix来作默认的mta了。 #chkconfig -level 345 postfix on6.此时

9、就可以发邮件了,但还不能收邮件;在新版本的linux里已经用dovecot代替了pop3、imap4,dovecot接收邮件软件包,包含了pop3 imap4等协议,所以还必须安装dovecot和启用dovecot服务,其中dovecot依赖于perl-DBI、mysql,有的还会提示libpq.so.4 is needed by dovecot-1.0-1.2.rc15.el5.i386;还需安装postgresql-libs。这里采用在安装系统时,就安装好的dovecot,#service dovecot restart域者#vi /etc/dovecot.conf #protocols

10、= imap imaps pop3 pop3s前面的#去掉,再#service dovecot restart也可以。#netstat -antl 7.安装好cyrus-sasl(Cyrus-sasl的功能就是实现密码验证机制)后,修改#vi /etc/sysconfig/saslauthd通过shadow来认证登录用户 #service saslauthd restart 测试一下是否成功 #testsaslauthd -u root -p root用户密码 若看到0: OK Success. ,那么启动密码验证机制就成功了#saslauthd -v 可以查看saslauthd有支持哪些密码

11、管理机制8.开启smtpd认证机制(1)SMTPd_sasl_auth_enable:设置是否要启动sasl认证的意思,如果设置,Postfix会主动去加载cyrus sasl的函数库,而该函数库会依据/usr/lib/sasl2/SMTPd.conf的设置来连接到正确的管理账号与密码的服务,即saslauthd。(2)broken_sasl_auth_Clients:这是针对早期非正规MUA的设置项目,因为早期软件开发商在开发MUA时没有参考通信协议标准,所以造成在SMTP认证时可能会发生的一些困扰。例如MS的Outlook Express第4版就是这样,后来的版本应该没有这个问题。所以这个

12、设置值您也可以不设置。(3)SMTPd_sasl_security_options:要取消哪些登录方式的意思。可以取消匿名登录的可能性,所以设置为noanonymous即可。由于saslauthd使用的是plaintext,所以不能设置noplaintext,这里需要留意。(4)smtpd_sasl_local_domain:确认已经通过认证的网域(5)SMTPd_recipient_restrictions:最重要的就是这个。sasl认证可以放在第二行,在局域网的可信任区域的后面加以认证。上述代码的设置意义是:局域网内的MUA不需要认证也能够进行Relay,而非局域网内的其他来源才需要进行S

13、MTP认证。 smtp认证机制测试是否成功 可以用Outlook Express来测试,也可以用telnet 测试,方法:telnet命令可以连接到Postfix服务器的25号端口,也就是发信服务器端口,然后输入几个命令,就可以知道配置是否成功了。由于telnet用的明文的密码,而postfix的SMTP用户身份认证采用的不是明文方式,所以首先要计算出用户名和密码,通过perl命令就可以很快计算出来:用户名为lili、密码为123的等价模式 经过编码后的用户名bGlsaQ经过编码后的密码为MTIz#telnet 25 同时也可以通printf “lili” |openssl base64和pr

14、intf “123” |openssl base64计算出用户名和密码。如果在测试时,出现出现:535 5.7.8 Error: authentication failed: another step is needed in authentication表示输入的BASE64编码有问题9.到此时配置的基本环境已经起来了,可以进行测试了提示解释失败解释方法:# vi /etc/resolv.conf #service network restart 10.新建两个用户分别是redhat和rongli,利用outlookup进行测试 同样方法,邮箱rongliredhat此时查看#tail /v

15、ar/log/maillog,就可以看到用户redhat和rongli登录postfix服务器的信息了,如下: 测试收发信 查看/var/log/maillog四、用tls加密SMTP会话1.进入目录/etc/pki/tls/certs,运行命令# openssl req -new -outform PEM -out smtpd.cert -newkey rsa:2048 -nodes -keyout smtpd.key -keyform PEM -days 365 -x5092.此时就会在当前目录下生成smtpd.cert和smtpd.key文件,移动smtpd.key到/etc/pki/t

16、ls/private/目录下3.编辑/etc/postfix/main.cf文件,加入下面的内容smtpd_use_tls = yes 是启用tls加密smtp会话smtpd_tls_cert_file = /etc/pki/tls/certs/smtp.cert TLS需要的ssl证书存放位置smtpd_tls_key_file = /etc/pki/tls/private/smtpd.key TLS需要的ssl私钥存放位置4保存退出,并重新读取配置文件5测试当出现(250 STARTTLS )说明tls已经启用了五、使用ssl加密的方法接收邮件pop3及IMAP4协议都是采用明文方式进行数

17、据传输,不过可以通过SSL对其数据传输进行加密,在/etc/pki/tls/certs目录下输入以下命令生成密钥(dovecot.pem只是文件名可任意) 有空格 此时生成的密钥及证书,就在当前目录下的dovecot.pem。密钥及证书都在dovecot.pem里面, cp /etc/pki/tls/certs/dovecot.pem /etc/pki/tls/private/dovecot.pem就可以了#cat dovecot.pem 编辑/etc/dovecot.conf文件 在dovecot配置完成后可以通过mutt命令对pop3/pops及imap/iamps进行测试。具体方法如下:

18、1、使用POP3方法验证Dovecotmutt -f pop:/userserver:portmutt -f pops:/userserver:port输入命令可通过pop(如使用pops方式,将下图命令中pop改为pops即可)方式收取邮件,注意是接服务器名称。mutt -f pops:/redhat按“o”同意, 按“o” 输入密码: 使用IMAP4方法验证Dovecotmutt -f imap:/userserver:portmutt -f imaps:/userserver:port同样,输入命令可通过imap(如使用imaps方式,将下图命令中imap改为imaps即可)方式收取邮件

19、,注意是接服务器名称。mutt -f imaps:/redhat输入”o”同意开始通过imap连接服务器,测试也同上面的一样Outlook Express测试把用户的客户端软件outlook express的“工具”-“帐户”-“属性”-“高级” 出现这样的情况,可能是证书没有授权的原因,因为证书是自己做的,证书不是由证书颁发机构颁发的,但还可以继续使用这个服务器。六、以Web方式收发电子邮件 由于在sendmail配置时,用过了Openwebmail。所以想在postfix里使用一下SquirrelMai,Red Hat Enterprise Linux 5内置了Postfix的Web支持-

20、SquirrelMail,但在默认情况下并没有安装。1. 将Red Hat Enterprise Linux 5的第2、3张安装盘放入光驱,加载光驱后在光盘的Server目录下分别找到SquirrelMail的RPM安装包文件php-mbstring(第二张光盘) 和squirrelmail(第三张光盘),然后使用下面的命令安装。2.配置squirrelmailSquirrelMail的主配置文件为/etc/squirrelmail/config.php。要配置SquirrelMail,可以直接修改该文件的内容,但是使用SquirrelMail的配置工具来配置更方便、更直观,配置工具是:/us

21、r/share/squirrelmail/config/conf.pl#vi /etc/squirrelmail/config.php #/usr/share/squirrelmail/config/conf.plSquirrelMail的配置界面包括组织信息、服务器设置、目录设置、一般选项、界面主题、地址簿、插件、数据库、语言、设置IMAPservers、保存和退出等部分,这就要根据个人意向去设置了(主要的设置是在Server Settings)配置SquirrelMail的imap服务器,输入Ddovecot回车 配置Squirrelmail的缺省语言,选择“10” “1”zh_CN回车,

22、再选择“2” “GB2312” 回车 配置Squirrelmail的域名和smtp服务器,选择“2” “1” 输入域名回车“3” “2” 回车 保存配置,选择主菜单s保存,配置将保存在创建squirremail别名#vi /etc/httpd/conf.d/squirrelmail.conf添加如下内容(默认存在,无需设置)alias /webmail /usr/share/squirrelmail启动apache服务,使squirrelmail别名生效#service httpd start3.测试:打开SquirrelMail的登录界面,如下用redhat用户登录后,记住账号是:redha

23、t,而不是redhat收发信测试:选择“撰写邮件”,还可以增加附件 发信箱“Sent” rongli用户登录 4.通过tls安全连接#/usr/share/squirrelmail/config/conf.pl ,选择“2”“A” “7” “y” 回车“5” “993” “回车” “B” “8” “y” 回车,之后保存退出#service httpd restart测试,不过可能连接过程有点慢Tls连接 七、安装防范病毒软件F-Prot Antivirus软件包安装和配置过程,可以通过迅雷下载F-Prot Antivirus软件包,下载地址:安装F-Prot Antivirus软件包前,请先启

24、动SpamAssassin服务器,其中SpamAssassin(SA)是较为流行的反垃圾邮件软件,SpamAssassin利用Perl语言来对邮件内容进行规则匹配,从而达到判断过滤垃圾邮件的目的。它的判断方式是基于评分的方式,也就是说如果这封邮件符合某条规则,则给与一定分值;当累计的分值超过了一定限度时,则判定该邮件为垃圾邮件。对Sendmail、Qmail、Postfix和Exim等各种邮件平台都适用。SpamAssassin的安装过程比较简单。而在RHEL5.0 默认已经安装了,如果没有安装, spamassassin是(在第二张光盘)#service spamassassin start

25、# rpm -ivh fp-linux-ws.rpm 出现上面的情况,并不是fp-linux-ws.rpm安装不成功,只是提示不能升级的F-Prot Antivirus病毒库而已,可以用#rpm q fp-linux-ws查看有没有安装了。若以后想对病毒库进行升级,可以输入如下命令进行升级#cd /usr/local/f-prot/tools/#./check-updates.pl由于我这里不能上网,所以升级不了,可以设定时间对病毒库进行升级,假如在星期日的5:00定时对病毒库进行升级方法如下#crontab -u root -e #crontab l u root -可以查看MailScan

26、ner软件包安装和配置过程 可以先到网上下载mailscanner软件包,之后进行解压安装,安装过程如下:#tar -zxvf MailScanner-4.80.4-1.rpm.tar.gz# cd MailScanner-4.80.4-1 如果不会安装,可以阅读# more README帮助文档# ./install.sh (执行MailScanner软件的安装命令)安装过程如下: 安装过程时间比较长,大概要30分钟左右,可以使安装在后台进行#./install.sh &更改incoming、quarantine两个目录相关用户和组的使用权限incomingquarantine修改/etc/

27、MailScanner/目录下的MailScanner.conf文件#vi /etc/MailScanner/MailScanner.conf 修改/etc/postfix/目录下的header_checks文件,新增加以下一行内容到文件中,详细内容如下#vi /etc/postfix/header_checks 修改/etc/postfix/目录下的main.conf文件 停止Postfix服务器,因为启动MailScanner服务时会自动启动Postfix服务器启动MailScanner服务器和设置开机时自动启动:病毒检测测试添加附件:H:portfixemail病毒.txt在发送后查看日

28、志/var/log/maillog 我做的测试不成功,是不是没有上网更新病毒库,所以扫不出病毒来?八、自动监控Postfix邮件服务器 安装源代码软件包Time-HiRes-1.9721.tar.gz File-Tail-0.99.3.tar.gz rrdtool-1.2.15.tar.gz mailgraph-1.14.tar.gz #tar zxvf Time-HiRes-1.9721.tar.gz#cd Time-HiRes-1.9721#perl Makefile.PL#make #make test#make install#cd .#tar zxvf File-Tail-0.99.

29、3.tar.gz#cd File-Tail-0.99.3#perl Makefile.PL#make #make test#make install#cd .#tar rrdtool-1.2.15.tar.gz#cd rrdtool-1.2.15#./configure#make#make install# make site-perl-install#tar zxvf mailgraph-1.14.tar.gz#cd mailgraph-1.14.tar.gz 修改配置文件/etc/init.d/mailgraph-init#service httpd restart#/etc/init.d

30、/mailgraph-init start在启动mailgrap-init时,会遇到上面的错误;解决方法:修改mailgraph.pl文件,保证RRDs.pm模块能包含进来。打开/usr/local/bin/mailgraph.pl文件,在第二行加上use lib /usr/local/rrdtool-1.2.15/lib/perl/;可以通过命令来查找RRDs.pm模块#find /usr -name “RRDs.pm” -print再启动mailgraph-init就不会出现刚才的错误了可是在访问会出现错误而查看web日志时,#tail -f /var/log/httpd/error_lo

31、g,还是出现上面的问题根据日志,可以看出Cant locate RRDs.pm in INC,而INC是一个很多路径的集合,在这些路径里,都找不到这RRDs.pm,所以解决方法就做一个软件链接RRDs.pm,具体情况如下:再测试,还会遇下面的问题,找不到RRDs模块,即是RRDs.so,找到RRDs.so,再做一个软链接#service httpd restart再测试,就可以了编辑/var/log/www/cgi-bin/mailgraph.cgi#service httpd restart 在网上查看了一些资料,出现错误的还有一种情况,就是Cant locate File/Tail.pm

32、in INC,这时就要上网下载安装File:Tail,不过前面已经安装了,也可以这样安装#cpancpan install Time:HiRescpan install File:Tailcpan exit或者#perl -MCPAN -e shellcpan install File:Tail)九、自动向管理员发送日志分析文件 -参考 安装postfix-pflogsumm软件包,如果没有安装,可以到第二张光盘里找到,也可以到网上找源代码。Logrotate是系统自身带的一个日志轮循程序,它的执行程序所在的目录是/usr/sbin/logrotate ,是专门对各种系统日志; Red Hat

33、 Linux 缺省的crontab 来每天运行logrotate(syslogd,mail)进行轮循的程序logrotate 的配置文件是 /etc/logrotate.conf。 主要参数:compress 通过gzip 压缩转储以后的日志nocompress 不需要压缩时,用这个参数copytruncate 用于还在打开中的日志文件,把当前日志并截断nocopytruncate 备份日志文件但是不截断create mode owner group 转储文件,使用指定的文件模式创建新的日志文件nocreate 不建立新的日志文件delaycompress 和 compress 一起使用时,转

34、储的日志文件到下一次转储时才压缩nodelaycompress 覆盖 delaycompress 选项,转储同时压缩。errors address 专储时的错误信息发送到指定的Email 地址ifempty 即使是空文件也转储,这个是 logrotate 的缺省选项。notifempty 如果是空文件的话,不转储mail address 把转储的日志文件发送到指定的E-mail 地址nomail 转储时不发送日志文件olddir directory 转储后的日志文件放入指定的目录,必须和当前日志文件在同一个文件系统noolddir 转储后的日志文件和当前日志文件放在同一个目录下prerotat

35、e/endscript. 在转储以前需要执行的命令可以放入这个对,这两个关键字必须单独成行postrotate/endscript. 在转储以后需要执行的命令可以放入这个对,这两个关键字必须单独成行daily 指定转储周期为每天weekly 指定转储周期为每周monthly 指定转储周期为每月rotate count 指定日志文件删除之前转储的次数,0 指没有备份,5 指保留5 个备份tabootext + list 让logrotate 不转储指定扩展名的文件,缺省的扩展名是:.rpm-orig, .rpmsave, v, 和 size size 当日志文件到达指定的大小时才转储,Size

36、可以指定 bytes (缺省)以及KB (sizek)或者MB (sizem).修改/etc/logrotate.con配置文件,添加以下内容修改配置文件/etc/logrotate.d/syslog -去掉/var/log/maillog建立一个脚本/usr/local/sbin/postfix_report.sh,其中管理员的邮箱是postfix设置定时发送邮件给管理员#crontab e u postfix这样用户每天的9点会自动收取日志文件到时管理员邮箱了十、postfix电子邮件服务器的其他设置 这里所说的其他设置,就是上面没有提到的一些设置,例如:用户发信信件容量不能超过多少、用户邮箱容量限制(磁盘配额)、别名、虚拟域等等,都没有弄。一个电子邮件服务器要的涉及内容太多了总结与体会:在这次实验中,遗憾的是防病毒测试没有成功,我做了很多的检查,最后还是不知是什么原因?在日志里又没有提示什么错误。我想应该是我没有mailScanner工作原理,很多设置参数都不太懂。第 56 页 共 56 页

展开阅读全文
温馨提示:
1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
2: 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
3.本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
关于我们 - 网站声明 - 网站地图 - 资源地图 - 友情链接 - 网站客服 - 联系我们

copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!