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

[经验分享] centos sendmail 邮件服务器配置

[复制链接]

尚未签到

发表于 2015-11-25 11:34:23 | 显示全部楼层 |阅读模式
  http://www.cnblogs.com/fjsbf/archive/2010/01/26/1656706.html
  
  
二、SendMail常规配置

SendMail运行过程是读取/etc/mail/sendmail.cf配置文件,但该文件配置比较复杂,所以一般是配置/etc/mail/sendmail.mc,然后通过以下命令生成sendmail.cf文件(每次修改sendmail.mc后都必须通过使用该命令后再重启sendmail服务,否则配置不会生效)。 网管网bitsCN_com

m4 /etc/mail/sendmail.mc > /etc/mail/sendmail.cf


在/etc/mail/sendmail.mc文件对格式要求非常严格:




每句左边不能有空格
区分大小写
注释在最左边加dnl
每句必须以dnl结束
增加的语句,不能在最后一行
语句中的引号,如下图  
  
  
DSC0000.jpg


  网管网bitsCN_com

1、安装bind及相关软件包。


  
  


      
yum -y install sendmail-cf.i* sendmail-doc.i*  

  
2、SendMail在默认只侦听127.0.0.1,此处要修改为侦听指定网络接口或0.0.0.0(本机所有IP)



DSC0001.jpg   
  
3、增加本服务器可处理的FQDN或区域名(只有在列表的本服务器才处理)。这需要修改/etc/mail/local-host-names文件。

DSC0002.jpg

  

4、执行以下步骤后SendMail即可收发邮件。


DSC0003.jpg


到此一个最简单的邮件系统已经通过SendMail实现了,下面来看看如何通过telnet命令测试邮件系统是否可以正常工作。


DSC0004.jpg   网管网bitsCN_com

在linux字符模式中收取当前用户收件箱内容使用mail命令。


DSC0005.jpg

  
三、SendMail其它配置 www.bitsCN.net

1、SendMail本地别名 中国网管联盟www_bitscn_com

SendMail可以通过本地别名实现以下功能邮件转发、邮件组等功能,配置时用户必须是本地邮件用户。实现时需要编辑/etc/aliases文件,其方法如下图:



DSC0006.jpg





user1的邮件转发一份user2。
user3的邮件转发给user4,user3收不到。
发送给hr(系统中没有这个用户)的邮件user5及user6可收到。  
  
  

2、SendMail虚拟别名



SendMail可以通过本地别名实现以下功能邮件转发等功能,配置时用户可以任意,该功能可以将邮件转发到外部区域。实现时需要编辑/etc/mail/virtusertable文件,其方法如下图:
DSC0007.jpg   bitscn_com  
  
  


1:发送给user5@example.zqin邮件转发到onlyzq@gmail.com  
  

2:发送给admin@test.zqin的邮件转发到administrator@test.zqin  

3:所有发送给temp.zqin区域的邮件全部转发到user6@example.zqin  

4:所有发送给tmp.zqin的邮件转到对应%1@gmail.com,%1表示收件人。  
  
  
3、SendMail地址伪装

SendMail对本服务器所有发出的邮件进行地址伪装(自动修改发件人地址)。 网管网bitsCN_com

全局伪装 中国网管联盟www、bitsCN、com

全局伪装针对所有本区域用户,此功能需修改/etc/mail/sendmail.mc文件,下面的例子中所有发住外部区域的邮件收件人所有区域自动修改为zhangqin.com:



  


      
MASQUERADE_AS(`zhangqin.com’)dnl      #复制修改为要伪装的域名
FEATURE(masquerade_envelope)dnl       #这句有例句就在第一句的下几行,取消注释即可
FEATURE(masquerade_entire_domail)dnl   #这句有例句就在第一句的下几行,取消注释即可 www.bitsCN.net
  
指定用户伪装




指定用户的地址伪装,该功能只能用于收件人是外部域。这个可以和全局地址伪装同时使用。下面的例子中将所有user7@example.zqin发出的邮件发件人修改为zhangqin@rhel.com
修改/etc/mail/sendmail.mc文件。  
  
  
  


      
FEATURE(genericstable)dnl                    #需要输入,genericstable文件需要新建
MASQUERADE_AS(`always_add_domain’)dnl     #这句配置文件中有,不需修改
GENERICS_DOMAIN_FILE(`/etc/mail/local-host-names’)dnl     #需要输入 bitscn_com
  
建立用户列表。

DSC0008.jpg



在lost-hosts-names中加入虚拟区域名称
DSC0009.jpg

4、SendMail访问控制

通过/etc/access可以对通过SendMail的邮件流进行控制,其对邮件流通过的动作主要有以下几种:




From:发件人是其它域,收件人是当前域
To:发件人是当前域,收件人是其它域
Connect:发件人、收件人都是其它域  
  
  

中继限制可用动作: bitscn.com



REJECT:拒收并发退信通知
OK:无条件接收,当与REJECT发生冲突时优生
RELAY:接收,当与REJECT发生冲突时REJECT优先
DISCARD:拒绝
ERROR:550 your message:拒绝,返回特定通知 网管网bitsCN.com  
  
  
下图是一个/etc/access文件的例子:


DSC00010.jpg


  
四、Dovecot常规配置



SendMail只能实现SMTP协议的功能,而目前在使用邮件系统时很多用户还是习惯使用类似foxmail的一些邮件客户端软件,这些软件通常都支持pop3、IMAP4等协议。如果希望在RHEL中实现pop3、IMAP4需要使用dovecot。
安装  
  
  

1、安装dovecot软件包。 中国网管论坛bbs.bitsCN.com


  


  yum -y install dovecot.i*   

  

2、dovecot配置比较简单,通常只需修改Dovecot修改支持的协议即可。在/etc/dovecot.conf中已有,只需取消注释即可(如下图)。


DSC00011.jpg 中国网管论坛bbs.bitsCN.com

3、启动dovecot并将其设置为自动运行。


  


  service dovecot restart
chkconfig dovecot on   

  

五、配置POPs&IMAPs




pop3及IMAP4协议都是采用明文方式进行数据传输,不过可以通过SSL对其数据传输进行加密
。配置方法如下: www.bitsCN.net  
  
  
1、在/etc/pki/tls/certs目录下输入以下命令生成密钥(dovecot.pem只是文件名可任意)。www.bitsCN.net

DSC00012.jpg

编辑/etc/dovecot.conf文件,加入下图内容:


DSC00013.jpg


在dovecot配置完成后可以通过mutt命令对pop3/pops及imap/iamps进行测试。具体方法如下:


1、使用POP3方法验证Dovecot




mutt -f pop://user@server[:port]  
  

mutt -f pops://user@server[:port]  
  

输入命令可通过pop(如使用pops方式,将下图命令中pop改为pops即可)方式收取邮件,注意是接服务器名称。


  


  mutt -f pop://user2@golf.example.zqin  
  

中国网管论坛bbs.bitsCN.com

输入用户密码


DSC00014.jpg


进入后可看到该用户的邮件


DSC00015.jpg   feedom.net

在上、下移动选择邮件回车可查看。



2、使用IMAP4方法验证Dovecot  
  

mutt -f imap://user@server[:port]
mutt -f imaps://user@server[:port] 网管网bitsCN_com  
  
输入命令可通过imap(如使用pops方式,将下图命令中pop改为pops即可)方式收取邮件,注意是接服务器名称。


  


mutt -f imap://user2@golf.example.zqin  
  

输入”o”同意开始通过imap连接服务器

DSC00016.jpg


进入后输入用户密码,可看到该用户的邮件

DSC00017.jpg

六、OpenWebMail常规配置

  
对于一个完整的邮件系统,提供用户通过浏览器访问是一个必不可少的功能,而使用OpenWebMail为用户提供该功能也是很不错的选择。不过在RHEL中默认并没有提供OpenWebMail的软件包,只有从www.openwebmail.com网站或从其它rpm包下载网站下载。OpenWebMail需要使用到apache、perl-Text-Iconv、perl-suidper软件包。

1、安装OpenWebMail及相关软件包。


  


yum -y install httpd.i*
rpm -ivh perl-Text-Iconv-1.5-1.fc8.i386
rpm -ivh perl-suidperl-5.8.8-41.fc8.i386
rpm -ivh openwebmail-2.51-5.i586  
  

2、将配置文件/var/www/cgi-bin/openwebmail/etc/dbm.conf的内容修改为以下内容。



  


db_ext    .db
dbmopen_ext   .db
dbmopen_haslock  no  
  

中国网管论坛bbs.bitsCN.com

3、使用以下命令初始化OpenWebMail。




4、修改相关默认配置,编辑/var/www/cgi-bin/openwebmail/etc/openwebmail.conf文件。



default_language zh_cn gb2312            将预设语言改为简体中文。
default_iconset Cool 3D.Chinese.Simplified  将原有的English改为Chinese.Simplified,才能显示中文图标。
domainnames example.zqin                更改为自己定义的域名。
smtpserver 192.168.0.14                   更改smtp服务器的地址。
authpop3_server 192.168.0.14              更改pop3服务器的地址。
auth_module  auth_unix.pl                将用户认证方式改为使用/etc/passwd及/etc/shadow文件。  
  
  



通过http://mail.example.zqin/cgi-bin/openwebmail/openwebmail.pl就可以访问到openwebmail了(如下图)。
  
  
  
  bitscn.com

5、很显然这个地址太长了,可以/etc/httpd/conf/httpd.conf文件中增加如下内容后,可通过http://mail.example.zqin/mail就可以访问了。



  


ScriptAlias  /mail     /usr/local/apache/cgi-bin/openwebmail/openwebmail.pl bitscn_com
  

6、设置用户配额,在/var/www/cgi-bin/openwebmail/etc/openwebmail.conf中最尾几行是配额的例子,下面是相关参数的作用。 中国网管联盟www.bitscn.com



quota_module            quota_unixfs.pl       quota的模板,由于邮件帐户还是Linux帐户,所以选它
spool_limit             5120                    邮箱限定5M
quota_limit             10240                 所有空间(包括邮箱)限定10M
quota_threshold         70                  空间使用达到配额的70%就提示
delmail_ifquotahit      no                  是否在空间使用超出配额时删除旧的邮件 中国网管联盟www.bitscn.com
delfile_ifquotahit       no                   是否在空间使用超出配额时删除旧的文件 中国网管联盟www.bitscn.com  
  
  
到此整个邮件环境已搭建完成,不过这些只能算是第一步,对于一个成熟的邮件系统还有很多工作要做。永远都要记住邮件系统是貌似简单但实际维护量非常大的应用系统。比如防止垃圾邮件、病毒邮件、用户行为控制等等,这些将会在后继的文章中为大家讲解。

  

在上、下移动选择邮件回车可查看。

  

运维网声明 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-143363-1-1.html 上篇帖子: AIX sendmail 通过其他邮箱发送邮件 下篇帖子: CentOS 6.0 启用sendmail
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

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

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

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

扫描微信二维码查看详情

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


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


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


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



合作伙伴: 青云cloud

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