sendmailはデフォルトでバージョン情報をいくつかのバナーとして表示してしまう
これらの情報を隠蔽したい場合、以下の3箇所を修正する必要がある
今回使用したバージョンはsendmail-8.13.7
・ヘルプ
・ヘッダ
・グリーティングメッセージ
ここでは、ヘッダに関して隠蔽の方法を見ていく
デフォルトの状態でメールを送信すると受信側でのメールのヘッダには次のように記載される
Received: from test.co.jp (test1.test.co.jp [2.2.2.2]) by [サーバのフルホスト名] (8.13.7/8.13.7) with SMTP id k6J0bYeG028958 for <宛先メールアドレス>; Wed, 19 Jul 2006 09:37:51 +0900 (JST)
これに関するデフォルトのsendmail.cfは次の通り
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
sendmail.mcを使って変更する
次の内容をsendmail.mcに追加
1行にして追加しても良いし、上のように改行とスペースを使用しても問題無い
define(`confRECEIVED_HEADER',`$?sfrom $s $.$?_($?s$|from $.$_) $.$?{auth_type}(authenticated$?{auth_ssf} bits=${auth_ssf}$.) $.by $j (unknown)$?r with $r$. id $i$?{tls_version} (version=${tls_version} cipher=${cipher} bits=${cipher_bits} verify=${verify})$.$?u for $u; $|; $.$b')dnl
sendmail.cfを作成し直して、sendmailを再起動
この時のsendmail.cfは次の通り
HReceived: $?sfrom $s $.$?_($?s$|from $.$_) $.$?{auth_type}(authenticated$?{auth_ssf} bits=${auth_ssf}$.) $.by $j (unknown)$?r with $r$. id $i$?{tls_version} (version=${tls_version} cipher=${cipher} bits=${cipher_bits} verify=${verify})$.$?u for $u; $|; $.$b
メールを送信すると受信側でのメールのヘッダには次のように記載される
Received: from test.co.jp (test1.test.co.jp [2.2.2.2]) by [サーバのフルホスト名] (unknown) with SMTP id k6J0bYeG028958 for <宛先メールアドレス>; Wed, 19 Jul 2006 10:10:51 +0900 (JST)