- 论坛徽章:
- 1
|
這東西講起來有點複雜, 我想你大概很難懂,我記得我以前曾看過直接寫在 sendmail.cf 中的
不過現在找不到了
我自己實現的方法是用 mimedefang (和 mailscanner 角色有點像但完全不一樣)
- # 來信不是 twnic 相關 IP Address
- if ($ip !~ /$my_network/) {
- if ($sender=~/<>/) {
- # Mail From 不能為 <>,若是記錄下來
- my $sql="insert into SPAM(MAIL_FROM,RCPT_TO,IP,USERNAME,REASON,PATTEN,SUBMIT) values('$hostname','','$RelayAddr','abelyang','發信軟體','Sender=<>',1)";
- mysql_query($sql);
- return ('REJECT',"we did not accept the empty address <>");
- }
- ....
- }
复制代码
若你真的要做到, 我一時間可以想到的方法是
1. 在 sendmail.cf 找到 ^HR 的行 ,
- HReceived: $?sfrom $s $.$?_($?s$|from $.$_)
- $.$?{auth_type}(authenticated$?{auth_ssf} bits=${auth_ssf}$.)
- $.by $j ($v/$Z)$?r with $r$. id $i$?{tls_version}
- (version=${tls_version} cipher=${cipher} bits=${cipher_bits} verify=${verify})$.$?u
- for $u; $|;
- $.$b
- HX-Envelope-From: <$g> # <---這行是加的
复制代码
另在外 SA 中設一條 rule (要自己加)
- # /usr/share/spamassassin/ 任一檔案
- # mail header 中若為 X-Envelope-From: <>
- header EMPTY_SENDER X-Envelope-From =~ /<>/
- # 描述
- describe EMPTY_SENDER Null envelope sender
- #給幾分
- score EMPTY_SENDER 10
复制代码 |
|