@. Queue 管理
#mailq # 使用 mailq 检查曾经发经发送的电邮
-Queue ID-------Size------Arrival Time------Sender/Recipient-------
D7982233D37 2936 Fri May 6 00:18:16
[email protected]
#postcat /var/spool/postfix/deferred/1/17461233D42 # 把在 mail queue 内的电邮内容显示出来
#postsuper -d A1F23E009A # 删除 mail queue 内还未发送的信件
#postsuper -d ALL # 删除所有 mailq
@. Mail 邮件内容过滤管理
Postfix 的邮件的分析与过滤管理:采用 header_checks 及 body_checks 的方式,其为正规表示法 ( Regular Expression, RE ) 来进行设定,其方式是真对邮件的 Header 及 Body 去过滤,何谓 Header?即邮件上面的资讯 ( 包括 寄件者 From:、收件者 To:、地址、与信件标题 Subject: 等 )。何谓 Body?即是对方寄信给你的时所书写的内容。
#vi /usr/local/etc/postfix/main.cf
header_checks = regexp:/usr/local/etc/postfix/header_checks
body_checks = regexp:/usr/local/etc/postfix/body_checks
写法说明:
『.』:代表任意字符
『/』:代表跳脱字符,可以让后面接的一个字符变成一般字符;
『*』:代表重复零个或多个前一个 RE 的字符,例如『.*』则代表任意零个或多个字符的意思;
『^』:代表『这一行的第一个字符需要符合规则』的意思;
『$』:代表这一行的最后一个字符必须要符合这个字符的意思,
单一规则的设定标准:
/规则/ 动作 显示在登录档里面的讯息
/^Subject:.*A funny game/ DISCARD drop header deny
#vi /usr/local/etc/postfix/header_checks
# 范例:header_checks
/filename/=/".*src/.exe/ REJECT Virus filename is unavailable header
/filename/=/".*/.cpl/"/ REJECT Virus filename is unavailable header
/name/=/".*/.bat/"/ REJECT Virus filename is unavailable header
/name/=/".*/.scr/ REJECT Virus filename is unavailable header
/^Subject:.*Hello/,.*/,how/ are/ you.*/ DISCARD Virus drop the unavailable header
/^Subject:.*W32.*removal/ tools$/ DISCARD Virus drop the unavailable header
/^From:.*rayman/.com/.cn/ DISCARD Commercial unavailable header
/^From:.*/@263/.net/ DISCARD Commercial unavailable header
/^To:.*/.TXT@/ DISCARD Commercial unavailable header
/^To:.*apatite.*/
#vi /usr/local/etc/postfix/body_checks
范例:body_checks
/http/:////168/-news/.com/ DISCARD Commercial drop the unavailable body
/http/:////.*edms/.tv/ DISCARD Commercial drop the unavailable body
/mailto/:.*/@126/.com/ DISCARD Commercial drop the unavailable body
/mailto/:.*/@powererp/.org/ DISCARD Commercial drop the unavailable body
/0982/-281/-125/ DISCARD Commercial unavailable body
/www/.email104/.com/ DISCARD Commercial unavailable body
///nomail/.gif/"/ DISCARD Commercial nomail unavailable body
///nomail/.htm/"/ DISCARD Commercial nomail unavailable body
#postmap -q - regexp:/usr/local/etc/postfix/header_checks < /usr/local/etc/postfix/header_checks # 不需要重新启动 postfix,设定立刻生效
@. Mail 连线 IP 管理
挡 掉恶意 Spam 攻击的 IP 网段 CIDR (Classless Inter-Domain Routing) postfix 2.x 之后的版本应该都支援这个用法,它可直接编辑允许连线及不可连线的 IP 网段,挺不错用的 ^^ 可是有问题 .. 在我的机器上挂上就收不到信还是需要再 try 看看 ...
#vi /usr/local/etc/postfix/main.cf
smtpd_client_restrictions = cidr:/usr/local/etc/postfix/client.cidr
#vi /usr/local/etc/postfix/client.cidr
# Sapm IP Groups
220.163.0.0/16 DISCARD spam
218.62.0.0/16 DISCARD spam
218.63.0.0/16 DISCARD spam
61.159.0.0/16 DISCARD spam
#postmap -q - cidr:/usr/local/etc/postfix/client.cidr < /usr/local/etc/postfix/client.cidr
#postfix reload