アフィリエイト広告を利用しています
ファン
最新記事
写真ギャラリー
カテゴリーアーカイブ
日別アーカイブ
<< 2016年03月 >>
    1 2 3 4 5
6 7 8 9 10 11 12
13 14 15 16 17 18 19
20 21 22 23 24 25 26
27 28 29 30 31    

広告

この広告は30日以上更新がないブログに表示されております。
新規記事の投稿を行うことで、非表示にすることが可能です。
posted by fanblog

2016年03月28日

sendmailによる送信者アドレス(from:ヘッダー)による規制A

前回記事の続き。
引き続き、sendmailで、送信者アドレス(from:ヘッダー)による規制を検証してみる。

参照URL

前回記事のSubject:ヘッダの内容をベースに調査を進め、設定をアレンジして検証を行う。

sendmail.mcアクセス規制設定

sendmail.mcに下記の通り、送信者アドレス(from:ヘッダー)による規制用のローカルルールセットを追加する。
LOCAL_CONFIG

F{PartFrom} -o /etc/mail/from_rejects
HFrom: $>CheckFrom

LOCAL_RULESETS

SCheckFrom
R$* $={PartFrom} $* $: REJECTFROM
R$* REJECTFROM $* $#error $: "553 Rejected , indicates spam.Caused by from: header."


送信者アドレス(from:ヘッダー)による規制用リストファイル作成

アクセス制御対象を下記のとおり、記載する。(/etc/mail/from_rejects)
各文字の先頭は必ず、タブ文字を挿入する。また、文字列の一致は「含む」の考え方

[root@mx-ns mail]# cat /etc/mail/from_rejects
brown
james
[root@mx-ns mail]#


sendmail.mcファイルコンパイル

[root@mx-ns mail]# m4 /etc/mail/sendmail.mc > /etc/mail/sendmail.cf

sendmail再起動

[root@mx-ns mail]# service sendmail restart
sm-client を停止中: [ OK ]
sendmail を停止中: [ OK ]
sendmail を起動中: [ OK ]
sm-client を起動中: [ OK ]
[root@mx-ns mail]#


送信者アドレス(from:ヘッダー)による規制制御の動作確認


・メールサーバ側での単体テスト

sendmailテストモード(-bt)で起動し、先述のリストファイルに記述されている内容(ここでは、「james、brown」)を含む送信者アドレスにすると、「553 Rejected , indicates spam Caused by from: header.」がリターンされ、
リストファイルに記述されていない内容(ここでは、「test@log.simalab.com」)をむ送信者アドレスにすると、拒否されず、そのままリターンされることを確認。
[root@mx-ns mail]# sendmail -bt
ADDRESS TEST MODE (ruleset 3 NOT automatically invoked)
Enter

> Chefk^\終了
[root@mx-ns mail]# sendmail -bt
ADDRESS TEST MODE (ruleset 3 NOT automatically invoked)
Enter

> CheckFrom james※アクセス規制対象
CheckFrom input: james
CheckFrom returns: $# error $: "553 Rejected , indicates spam.Caused by from: header."
> CheckFrom brown@sample.com※アクセス規制対象
CheckFrom input: brown @ sample . com
CheckFrom returns: $# error $: "553 Rejected , indicates spam.Caused by from: header."
> CheckFrom test@log.simalab.com※アクセス規制対象外
CheckFrom input: test @ log . simalab . com
CheckFrom returns: test @ log . simalab . com




送受信テスト(アクセス制御)


前回記事の検証環境のとおり、送受信テストを実施する。

・送信(メールクライアント)側

※メールクライアント側でfrom:ヘッダーを詐称するため、telnetでメールサーバに接続


[ment@log ~]$ telnet 192.168.3.21 25
Trying 192.168.3.21...
Connected to 192.168.3.21.
Escape character is '^]'.
220 mx-ns.simalab.com ESMTP Sendmail 8.14.4/8.14.4; Sun, 20 Mar 2016 11:49:19 +0900
HELO localhost
250 mx-ns.simalab.com Hello [192.168.3.6], pleased to meet you
MAIL FROM:test@log.simalab.lom(エンベロープ)
250 2.1.0 test@log.simalab.lom... Sender ok
RCPT TO:testuser@simalab.com(エンベロープ)
250 2.1.5 testuser@simalab.com... Recipient ok
DATA
354 Enter mail, end with "." on a line by itself
From: james@example.com(fromヘッダー(アクセス制御対象)
To:testuser@simalab.com(toヘッダー)
this is from header test(本文)
.
553 5.0.0 Rejected , indicates spam.Caused by from: header.(553がリターンされ、アクセス拒否成功)



受信(メールサーバ)側のログ

メールサーバ側のログ(送信者アドレス(from:ヘッダー)でのアクセス制御が成功していることを確認)

Mar 20 11:50:15 mx-ns sendmail[7380]: u2K2nJ7u007380: ruleset=CheckFrom, arg1= james@example.com, relay=[192.168.3.6], reject=553 5.0.0 Rejected , indicates spam.Caused by from: header.
Mar 20 11:50:33 mx-ns sendmail[7380]: u2K2nJ7u007380: from=test@log.simalab.lom, size=73, class=0, nrcpts=1, msgid=<201603200249.u2K2nJ7u007380@mx-ns.simalab.com>, proto=SMTP, daemon=MTA, relay=[192.168.3.6]
Mar 20 11:50:33 mx-ns sendmail[7380]: u2K2nJ7u007380: to=testuser@simalab.com, delay=00:01:00, pri=30073, stat=Rejected , indicates spam.Caused by from: header.





(送信者アドレス(from:ヘッダー)による規制用リストファイル( /etc/mail/from_rejects)編集時


送信者アドレス(from:ヘッダー)による規制用リストファイル( /etc/mail/from_rejects)は、今回はmakemapコマンドなどで、バイナリ形式にしていないため、当該ファイル編集時は、下記のとおり、sendmailの再読み込みを行わないと反映されなかったため、注意。

[root@mx-ns mail]#  service sendmail reload


日本語(ダブルバイト文字)件名による規制


送信者アドレス(from:ヘッダー)による規制用リストファイル( /etc/mail/subjects_rejects)に日本語(ダブルバイト文字)名を挿入し、動作検証を行ったものの、意図した動作は得られなかったため、そこにも注意。

設定ファイル一式


・検証で利用した設定ファイル一式

https://github.com/shi4669/ServerConfig/tree/master/sendmail/etc/mail
続きを読む...
タグ:sendmail
検索
最新コメント
タグクラウド
プロフィール
さんの画像

アラフォー世代です。コンピュータ関連を中心に、戯言をグダグダと書き綴ってます。
プロフィール
×

この広告は30日以上新しい記事の更新がないブログに表示されております。