邮件服务器_SMTP认证控制和Webmail系统

简介:

邮件服务器_SMTP认证控制和Webmail系统


本文来自Linux网络服务_邮件服务器-Redhat Enterprise 5.9的扩展:

基本配置地址:http://murongqingqqq.blog.51cto.com/2902694/1372049


第一部分:SMTP认证控制

邮件服务器_SMTP认证控制

   白话说来:如果没有SMTP认证控制,所有人都可以通过你的邮件服务器向其他域发送邮件,这时就会被其他邮件服务器视为垃圾邮件,那么你所搭建的邮件服务器很可能会变成一个垃圾邮件服务器,有了SMTP认证控制,只有进行了身份验证的账号才能向其他域发送邮件!!!


第一步:启动saslauthd服务

配置文件为/etc/sasl2/smtpd.conf

配置可参考/usr/lib64/sasl2/smtpd.conf

[root@server1 ~]# service saslauthd start

启动 saslauthd:                                           [确定]

[root@server1 ~]# vim /etc/sasl2/smtpd.conf     //本身不存在,需要创建

[root@server1 ~]# cat /etc/sasl2/smtpd.conf

pwcheck_method:saslauthd

[root@server1 ~]# service saslauthd restart

停止 saslauthd:                                           [确定]

启动 saslauthd:                                           [确定]

[root@server1 ~]# chkconfig --list saslauthd

saslauthd       0:关闭  1:关闭  2:关闭  3:关闭  4:关闭  5:关闭  6:关闭

[root@server1 ~]# chkconfig saslauthd on

[root@server1 ~]# testsaslauthd -u hunter -p 123 -s smtp

0: OK"Success."

[root@server1 ~]#


第二步:调整postfix配置,启用认证

只需在main.cf文件的末尾添加下面内容即可:

[root@server1 ~]# vim /etc/postfix/main.cf

[root@server1 ~]# tail -6 /etc/postfix/main.cf  //添加下面内容即可

mynetworks= 127.0.0.1      //设置本地网络

smtpd_sasl_auth_enable= yes        //启用SASL认证

smtpd_sasl_security_options= noanonymous       //阻止匿名发信

smtpd_recipient_restrictions= permit_mynetworks,   //设置收件人过滤

permit_sasl_authenticated,

reject_unauth_destination  //后面这三行是一行的内容,分开写需要另一起行加空格

[root@server1 ~]# service postfix restart

关闭 postfix:                                             [确定]

启动 postfix:                                             [确定]

[root@server1 ~]#


第三步:测试SMTP认证

使用telnet工具:连接到25,执行认证发信指令

在使用SMTP认证的时候,需要获得BASE64编码的认证字串

发件人用户名、密码:

   [root@server1 ~]# printf"nick" | openssl base64

bmljaw==            //获得BASE64的用户编码

   [root@server1 ~]# printf"123" | openssl base64

MTIz        //获得的密码123的BASE64编码

   [root@server1 ~]#

示例1:启动了SMTP认证后,没有进行认证,不允许向外域发送邮件:

[root@server1 ~]# telnet mail.tarena.com 25

Trying192.168.1.100...

Connected tomail.tarena.com (192.168.1.100).

Escape character is'^]'.

220 mail.tarena.comESMTP Postfix

mailfrom:nick@tarena.com

250 2.1.0 Ok

rcptto:test@qq.com

554 5.7.1 <test@qq.com>: Relayaccess denied     //被拒绝发送外域邮件

quit

221 2.0.0 Bye

Connection closed byforeign host.

[root@server1 ~]#


示例2:认证通过后,允许向外域发送:

[root@server1 ~]# telnet mail.tarena.com 25

Trying192.168.1.100...

Connected tomail.tarena.com (192.168.1.100).

Escape character is'^]'.

220 mail.tarena.comESMTP Postfix

helomail.tarena.com        //向邮件服务器打招呼

250 mail.tarena.com

auth login      //进行认证登录

334 VXNlcm5hbWU6

bmljaw==            //通过BASE64获得的认证用户名

334 UGFzc3dvcmQ6

MTIz        //这个就是通过BASE64编码获得的认证用户密码

235 2.0.0Authentication successful

mailfrom:hunter@tarena.com

250 2.1.0 Ok

rcpt to:test@qq.com

250 2.1.5 Ok        //返回这个结果,证明了认证通过之后,允许向外域发送邮件

...     //因为test@qq.com是随便写的,根本不存在,下面输入的为未连接等错误信息。



第二部分:搭建Webmail系统

Linux下常见网站邮箱程序

   SquirrelMail(小松鼠)

   ExtMail

   OpenWebmail

   OpenWebmail

   RoundCube


第一步:部署squirrelmail套件

在httpd服务器上安装:

   yum安装squirrelmail软件包

确认添加的httpd配置


安装squirrelmail软件包的时候,会有关于httpd和php的软件包依赖,所以在安装squirrelmail之前最好安装apache服务器。


[root@server1 ~]# yum install squirrelmail -y

[root@server1 ~]# grep "^Include" /etc/httpd/conf/httpd.conf

Includeconf.d/*.conf       //确保httpd.conf配置文件包含conf.d的配置

[root@server1 ~]# tail -1 /etc/httpd/conf.d/squirrelmail.conf

Alias/webmail /usr/share/squirrelmail  //该文件中其实就这一行配置


第二步:配置squirrelmail

指定发信、授信服务器地址;

将config.php一下内容加以修改即可:

[root@server1 ~]#cat /etc/squirrelmail/config.php

....

$squirrelmail_default_language= 'zh_CN';       //改为中文

$domain                 = 'tarena.com';         //域名

$imapServerAddress      = '192.168.1.100';      //收信服务器

$imapPort               = 143;

$useSendmail            = true;

$smtpServerAddress      = '192.168.1.100';      //发信服务器

$smtpPort               = 25;

$sendmail_path          = '/usr/sbin/sendmail';

.......


第三步:通过浏览器访问Webmail系统

如下图所示,访问mail.tarena.com/webmail即可!

贴个图展示一下,小松鼠挺好看,哈哈!

wKioL1MdzRLjmdnaAAHeTzxoQa0945.jpg

wKiom1MdzTmxLljRAAMK4xwVJIU995.jpg




本文转自 murongqingqqq  51CTO博客,原文链接:http://blog.51cto.com/murongqingqqq/1372074

相关文章
|
1月前
|
安全 云计算
服务器系统资源不足怎么办
服务器系统资源不足怎么办
43 4
|
2月前
|
弹性计算 监控 数据库
制造企业ERP系统迁移至阿里云ECS的实例,详细介绍了从需求分析、数据迁移、应用部署、网络配置到性能优化的全过程
本文通过一个制造企业ERP系统迁移至阿里云ECS的实例,详细介绍了从需求分析、数据迁移、应用部署、网络配置到性能优化的全过程,展示了企业级应用上云的实践方法与显著优势,包括弹性计算资源、高可靠性、数据安全及降低维护成本等,为企业数字化转型提供参考。
70 5
|
3月前
|
监控 Java Linux
Linux系统之安装Ward服务器监控工具
【10月更文挑战第17天】Linux系统之安装Ward服务器监控工具
82 5
Linux系统之安装Ward服务器监控工具
|
2月前
|
缓存 监控 数据库
提高服务器响应速度是提升用户体验和系统性能的关键
提高服务器响应速度是提升用户体验和系统性能的关键
48 3
|
3月前
|
存储 监控 网络协议
服务器压力测试是一种评估系统在极端条件下的表现和稳定性的技术
【10月更文挑战第11天】服务器压力测试是一种评估系统在极端条件下的表现和稳定性的技术
191 32
|
1月前
|
存储 Oracle 安全
服务器数据恢复—LINUX系统删除/格式化的数据恢复流程
Linux操作系统是世界上流行的操作系统之一,被广泛用于服务器、个人电脑、移动设备和嵌入式系统。Linux系统下数据被误删除或者误格式化的问题非常普遍。下面北亚企安数据恢复工程师简单聊一下基于linux的文件系统(EXT2/EXT3/EXT4/Reiserfs/Xfs) 下删除或者格式化的数据恢复流程和可行性。
|
2月前
|
存储 安全 关系型数据库
Linux系统在服务器领域的应用与优势###
本文深入探讨了Linux操作系统在服务器领域的广泛应用及其显著优势。通过分析其开源性、安全性、稳定性和高效性,揭示了为何Linux成为众多企业和开发者的首选服务器操作系统。文章还列举了Linux在服务器管理、性能优化和社区支持等方面的具体优势,为读者提供了全面而深入的理解。 ###
|
3月前
|
NoSQL Linux PHP
|
3月前
|
算法 数据挖掘 Linux
服务器数据恢复—EXT3文件系统下邮件数据恢复案例
服务器数据恢复环境: 邮件服务器中有一组由8块盘组成的RAID5阵列, 上层是Linux操作系统+EXT3文件系统。 服务器故障: 由于误删除导致文件系统中的邮件数据丢失。
|
4月前
|
存储 弹性计算 运维
自动化监控和响应ECS系统事件
阿里云提供的ECS系统事件用于记录云资源信息,如实例启停、到期通知等。为实现自动化运维,如故障处理与动态调度,可使用云助手插件`ecs-tool-event`。该插件定时获取并转化ECS事件为日志存储,便于监控与响应,无需额外开发,适用于大规模集群管理。详情及示例可见链接文档。