最近没有关注分管的邮件服务器运行情况(收发邮件一直正常,导致也未引起重视)。
结果上班的第三天,一大早同事就反馈邮件能发出去,但是收不到。立马测试了下,果然有问题。
立马SSH登录到邮件服务器,使用postqueue -p命令一列,有一个邮箱账户密码中秋期间被暴力破解了,这些天发送了巨大量的垃圾邮件。
赶紧把被黑的账户密码修改了,安全起见,还把这个账户禁用了,但是邮件队列中此账户还是有大量的垃圾邮件在往外发送。
接下来把被黑的账户的邮箱队列全部清空,命令如下(请把xxx@xxx.com替换成你邮箱系统被黑的邮箱帐号):
# mailq | awk "/xxx@xxx.com/ {print $1}" | tr -d "*" | xargs -n 1 postsuper -d
如果被黑账户的邮件队列较多,这个可能需要较长时间,并且建议多执行几次。
另外,建议上面的命令再配合postsuper -d ALL deferred这条命令(删除所有退信)使用。
注意:
此问题所讲到的邮件服务器用的是使用Extmail的EMOS搭建,使用postfix发送邮件,希望对出现类似问题的朋友有帮助。
用其他软件搭建的邮件系统,可能上面的方法不适用。
显示信件列表:postqueue -p
显示信件內容:postcat -q Queue_ID
刪除各別信件:postsuper -d Queue_ID
全部刪除:postsuper -d ALL
扣住信件:postsuper -h Queue_ID
回复:postsuper -H Queue_ID
重新排程:
postsuper -r Queue_ID
postsuper -r ALL
清除信件:
postqueue -f (全部)
postqueue -s 主机名称(个别对象)
要查看Postfix的当前主要配置文件的存放路径:
postconf -n