硬件环境:
服务器型号:IBM X336
CPU型号: Intel(R) Xeon(TM) CPU 3.80GHz *2颗
内存型号: 2G*4根
硬盘型号:SCSI 73G*2块
软件配置:
系统:CentOS5.6 x86_64
软件:Nginx1.0.4+PHP5.3.6(FPM-FCGI)+Mysql5.5.3
Linux系统最小安装,在此就不多说了。此机器主要功能是对外进行图片访问,由于公司需要邮件系统进行邮件发送和接收,考虑Qmail配置太复杂,sendmail配置也麻烦所以就选择postfix作为邮件处理系统。
1.PostFix安装配置
2.dovecot安装配置
3.防火墙配置
4.测试邮件发送
1.PostFix安装配置
第一步:首先进行安装postfix
yum -y install postfix
第二步:配置main.cf文件
[iyunv@kiccleaf ~]# vim /etc/postfix/main.cf
myhostname = mail.kiccleaf.com
mydomain = kiccleaf.com
myorigin=$mydomain
inet_interfaces = all
mydestination = $myhostname, localhost.$mydomain, localhost,$mydomain
relay_domains = $mydestination
mynetworks = 192.168.1.0/28, 127.0.0.0/8,60.191.49.228/24 #填写自己的公网ip
home_mailbox = Maildir/
#smtpd_banner = $myhostname ESMTP $mail_name ($mail_version) ← 找到这一行,接此行添加如下行:
smtpd_banner = $myhostname ESMTP unknow ← 添加这一行,不显示SMTP服务器的相关信息
#Add end
smtpd_sasl_auth_enable = yes
smtpd_sasl_local_domain = $myhostname
smtpd_sasl_security_options = noanonymous
smtpd_recipient_restrictions = permit_mynetworks, permit_sasl_authenticated, reject_unauth_destination
message_size_limit = 15728640
第三步:配置smtpd.conf
[iyunv@kiccleaf ~]# vim /usr/lib64/sasl2/smtpd.conf
有的默认地址可能不是这个,具体find一下
pwcheck_method: saslauthd
改成
pwcheck_method: auxprop
第四步:配置postfix随系统启动
[iyunv@kiccleaf ~]# chkconfig saslauthd on
[iyunv@kiccleaf ~]# chkconfig --list saslauthd
saslauthd 0:off 1:off 2:on 3:on 4:on 5:on 6:off
[iyunv@kiccleaf ~]# chkconfig postfix on
[iyunv@kiccleaf ~]# chkconfig --list postfix
postfix 0:off 1:off 2:on 3:on 4:on 5:on 6:off
第五步:启动postfix服务
[iyunv@kiccleaf ~]# /etc/rc.d/init.d/saslauthd start
Starting saslauthd: [ OK ]
[iyunv@kiccleaf ~]# /etc/rc.d/init.d/postfix start
Starting postfix: [ OK ]
第六步:对postfix进行测试
telnet localhost 25
Trying 127.0.0.1...
Connected to localhost.localdomain (127.0.0.1).
Escape character is '^]'.
220 kiccleaf.com ESMTP unknow
ehlo localhost
250-kiccleaf.com
250-PIPELINING
250-SIZE 15728640
250-VRFY
250-ETRN
250-AUTH PLAIN LOGIN
250-ENHANCEDSTATUSCODES
250-8BITMIME
250 DSN
quit
221 2.0.0 Bye
Connection closed by foreign host.
第七步:添加配置,用户和密码
[iyunv@kiccleaf ~]# mkdir /data/Maildir
[iyunv@kiccleaf ~]# chmod 700 /data/Maildir
[iyunv@kiccleaf ~]# mkdir /home/leaf/Maildir
[iyunv@kiccleaf ~]# chmod 700 /home/leaf/Maildir
[iyunv@kiccleaf ~]# chown leaf. /home/leaf/Maildir
[iyunv@kiccleaf ~]# saslpasswd2 -u mail.kiccleaf.com -c leaf #添加帐号leaf
Password: #输入密码
Again (for verification): #输入重复密码
[iyunv@kiccleaf ~]# chgrp postfix /etc/sasldb2
[iyunv@kiccleaf ~]# chmod 640 /etc/sasldb2
[iyunv@kiccleaf ~]# alternatives --config mta
There are 2 programs which provide 'mta'.
Selection Command
-----------------------------------------------
*+ 1 /usr/sbin/sendmail.sendmail
2 /usr/sbin/sendmail.postfix
Enter to keep the current selection[+], or type selection number: 2 #选择postfix作为邮件服务
2.接下去安装pop3接收服务dovecot
第一步:dovecot服务安装
yum -y install dovecot
第二步:编辑dovecot.conf文件
找到#protocols = imap imaps pop3 pop3s行添加或是修改:
protocols = imap pop3
老版本CentOS5.5版本是以default_mail_env作为配置
mail_location = maildir:~/Maildir
第三步:配置dovecot随系统启动
[iyunv@kiccleaf ~]# chkconfig dovecot on
[iyunv@kiccleaf ~]# chkconfig --list dovecot
dovecot 0:off 1:off 2:on 3:on 4:on 5:on 6:off
第四步:启动dovecot服务
[iyunv@kiccleaf ~]# /etc/rc.d/init.d/dovecot start
Starting Dovecot Imap: [ OK ]
第五步:对dovecot进行测试
telnet localhost 110
Trying 127.0.0.1...
Connected to localhost.localdomain (127.0.0.1).
Escape character is '^]'.
+OK Dovecot ready.
quit
+OK Logging out
Connection closed by foreign host.
3.防火墙配置
[iyunv@kiccleaf ~]# vim /etc/sysconfig/iptables
#添加以下三个端口25,110,143
-A INPUT -m state --state NEW -m tcp -p tcp --dport 25 -j ACCEPT
-A INPUT -m state --state NEW -m tcp -p tcp --dport 110 -j ACCEPT
-A INPUT -m state --state NEW -m tcp -p tcp --dport 143 -j ACCEPT
#重启防火墙
[iyunv@kiccleaf ~]# service iptables restart
Flushing firewall rules: [ OK ]
Setting chains to policy ACCEPT: filter [ OK ]
Unloading iptables modules: [ OK ]
Applying iptables firewall rules: [ OK ]
Loading additional iptables modules: ip_conntrack_netbios_n[ OK ]
#查看监听端口列表
[iyunv@kiccleaf ~]# netstat -an
Active Internet connections (servers and established)
Proto Recv-Q Send-Q Local Address Foreign Address State
tcp 0 0 127.0.0.1:9000 0.0.0.0:* LISTEN
tcp 0 0 0.0.0.0:2188 0.0.0.0:* LISTEN
tcp 0 0 0.0.0.0:110 0.0.0.0:* LISTEN
tcp 0 0 0.0.0.0:143 0.0.0.0:* LISTEN
tcp 0 0 0.0.0.0:80 0.0.0.0:* LISTEN
tcp 0 0 0.0.0.0:58008 0.0.0.0:* LISTEN
tcp 0 0 127.0.0.1:25 0.0.0.0:* LISTEN
tcp 0 0 192.168.1.9:22 192.168.1.22:2850 ESTABLISHED
4.测试邮件发送
为了方便Foxmail作为客户端进行配置,填写ip为pop3,smtp,填写帐号名称及密码,进行发送测试,在此用php编写简要的发送代码进行测试。
<?php
$to = '53045936@qq.com';
$subject = 'the subject test';
$message = 'hello!测试用例!';
$headers = 'From: leaf@kiccleaf.com' . "\r\n" .
'Reply-To: leaf@kiccleaf.com' . "\r\n" .
'X-Mailer: PHP/' . phpversion();
mail($to, $subject, $message, $headers);
?>
至此邮件系统的发送和接收都已经配置完成
出处:http://www.kiccleaf.com/?p=94
&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&
另外:
使postfix邮件服务器支持多域名
需求:
假设现在我有两个这样的域名 kavin.com 和 kavin.cn。现在 kavin.com 作为主域名已经成功地在ip地址为 125.168.2.16 的服务器上配置了postfix。即可以通过 abc@kavin.com 发送和接收邮件。现在希望 kavin.cn 域名也指向该服务器,并可以通过 abc@kavin.cn 发送和接收邮件,并且两个域名对应的用户是一致的,即发送给 abc@kavin.com 的邮箱的用户实际上也是给 abc@kavin.cn 邮箱的用户的邮件,而同一个用户abc可以选择使用 abc@kavin.com 或者 abc@kavin.cn 发送邮件,而接收方看到的是不同的域名发出来的邮件。
够啰嗦了,好,马上开始吧。
一、对postfix的虚拟域名相关选项进行设置
$ vi /etc/postfix/main.cf
virtual_alias_maps=hash:/etc/postfix/virtual
二、定义虚拟域名转换规则
$ vi /etc/postfix/virtual //在文件末尾添加上下面两行
kavin.cn anything
@kavin.cn @kavin.com
三、更新虚拟域名规则
$ postmap /etc/postfix/virtual
四、重启postfix
$ service postfix restart
&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&
另外一些有用的postfix维护命令,一遍日常的检测和维护:
mailq :会列出当前在postfix发送队列中的所有邮件
postsuper -d ALL:删除当前等待发送队列的所有邮件,包括发送失败的退信
当然还有很多,就不一一列举了,大家可以网上搜索扩展,Good Luck!
==========================
记得开通域名mx记录
运维网声明
1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网 享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com