Postfix Mail Server Manage ( 邮件服务器管理 )

原贴:http://blog.redzone.com.cn/read.php/16.htm

Postfix 配置文件 main.cf 中常用参数介绍

Postfix Mail Server Manage ( 邮件服务器管理 )

大 | 中 | 小
2008-1-19    03:47    0    349    疯狂老头 RedHat Linux 技术

@. 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

你可能感兴趣的:(linux,server,redhat,header,tools,邮件服务器)