postfix client 端强制勾选“SMTP发送服务器需身份验证”

简介:

使用postfix搭建好邮件服务端以后,使用foxmail 作为客户端的时候,默认情况下都是会勾选“发送服务器需要身份认证”,如果这个选项没有勾选的话,一些程序员可以利用这个漏洞,使用你邮件服务器端下的用户名,无需你用户名的 密码就可以肆意发送邮件,如图就是我这边的同事利用这个为勾选的漏洞,发送N多的邮件:


垃圾邮件的危害性不言而喻哈!下面就大致的说一下这个问题的解决办法:

Postfix SMTP认证需要通过Cyrus-sasl

通过在postfixmain.cf文件中,通过对相关CYRUS-SASL的配置,令每一个用户必须在客户端勾上“发送服务器需要身份验证”选项,否则无法发送邮件;

smtpd_sasl_auth_enable = yes  启用sasl认证

smtpd_recipient_restrictions = permit_mynetworks,permit_sasl_authenticated,reject_invalid_hostname,reject_non_fqdn_hostname,reject_unknown_sender_domain,reject_non_fqdn_sender,reject_non_fqdn_recipient,reject_unknown_recipient_domain,reject_unauth_pipelining,reject_unauth_destination,permit    

设置收件人过滤规则,permit是最重要的,

smtpd_sasl_local_domain = $myhostname  

smtpd_sasl_security_options = noanonymous

smtpd_sender_restrictions = permit_sasl_authenticated,reject

smtpd_sasl_application_name = smtpd

重新加载postfix文件,postfix程序在你postfix安装的目录下

/usr/local/postfix/sbin/postfix reload

此时,客户端用户如果没有勾选“SMTP发送服务器需要身份验证选项的话”,在发送邮件时会提示:

错误信息:Please check the email <xxxxx@xxxxxx.com>, server reply: 504 5.5.2

勾选上后,就可以正常发送邮件






      本文转自天真花语  51CTO博客,原文链接:http://blog.51cto.com/caibird/1228510,如需转载请自行联系原作者


相关文章
|
关系型数据库 MySQL 数据库
【Navicat 连接MySQL时出现错误1251:客户端不支持服务器请求的身份验证协议;请考虑升级MySQL客户端】
【Navicat 连接MySQL时出现错误1251:客户端不支持服务器请求的身份验证协议;请考虑升级MySQL客户端】
1111 0
|
2月前
|
存储 监控 NoSQL
Redis的实现二: c、c++的网络通信编程技术,让服务器处理多个client
本文讨论了在C/C++中实现服务器处理多个客户端的技术,重点介绍了事件循环和非阻塞IO的概念,以及如何在Linux上使用epoll来高效地监控和管理多个文件描述符。
38 0
|
7月前
|
存储 网络协议 Java
编写UDP版本的客户-服务器程序(echo server 和 echo client)
编写UDP版本的客户-服务器程序(echo server 和 echo client)
105 0
|
网络协议 Go API
php-websocket hyperf/websocket-server/client 客户端和服务器实时双向数据传输
php-websocket hyperf/websocket-server/client 客户端和服务器实时双向数据传输
361 0
|
Oracle 关系型数据库 数据库
远程连接服务器,出现身份验证错误,要求的函数不受支持。
远程连接服务器,出现身份验证错误,要求的函数不受支持。
119 0
|
关系型数据库 MySQL 数据库连接
【数据库报错系列】不建议不使用服务器身份验证建立SSL连接,必须默认建立SSL连接。
【数据库报错系列】不建议不使用服务器身份验证建立SSL连接,必须默认建立SSL连接。
|
Oracle 关系型数据库 数据安全/隐私保护
【已解决】身份验证错误,要求的函数不正确或登录windows2008服务器提示账号密码错误的解决方案
【已解决】身份验证错误,要求的函数不正确或登录windows2008服务器提示账号密码错误的解决方案
724 0
|
存储 网络协议 Linux
Postfix + Extmail 企业邮件服务器搭建
ExtMail套件用于提供从浏览器中登录、使用邮件系统的Web操作界面,而Extman套件用于提供从浏览器中管理邮件系统的Web操作界面。它以GPL版权释出,设计初衷是希望设计一个适应当前高速发展的IT应用环境,满足用户多变的需求,能快速进行开发、改进和升级,适应能力强的webmail系统。
764 0
Postfix + Extmail 企业邮件服务器搭建
|
关系型数据库 MySQL 数据安全/隐私保护
Client does not support authentication protocol requested by server 解决Navicat连接不上MySql服务器报错
Client does not support authentication protocol requested by server 解决Navicat连接不上MySql服务器报错
624 0
Client does not support authentication protocol requested by server 解决Navicat连接不上MySql服务器报错
|
C++ Python
【古月21讲】ROS入门系列(3)——客户端Client、服务器Server的编程实现+自定义服务数据编程实现
【古月21讲】ROS入门系列(3)——客户端Client、服务器Server的编程实现+自定义服务数据编程实现
278 0
【古月21讲】ROS入门系列(3)——客户端Client、服务器Server的编程实现+自定义服务数据编程实现