SMTP認証時の「認証接続ロックアウト機能」について
SMTP認証時の「認証接続ロックアウト機能」を使えば、たとえば外部からアカウントの不正利用やなりすまし、あるいは標的攻撃を目的とするような、SMTP認証のID/パスワードを総当たりで何十何百通りも試された場合、その動きを早めにブロック、サーバ側で完全抑止することができます。メールサーバ・SMTPサーバのセキュリティを大幅に高められると同時に、不用意にサーバ負荷が高まってしまうことを防止することにも役立ちます。
【基本機能と仕様】
- SMTP認証時の「認証接続ロックアウト機能」は、E-POSTコントロールセンターのメールサーバ管理から[システム管理メニュー]をクリック、[SMTP受信詳細]を開き、画面下部にある「認証失敗ロックアウトまでの接続回数」項目や「ロックアウト期間」項目を設定します。続いて[SMTP認証ロックアウト]ボタンクリックでテーブル情報ともなっている設定ファイル "rejectsmtpip.dat" を確認したり編集できるようになっています。
- SMTP認証時にID/パスワードが異なる理由で認証失敗、特定の同一IPアドレスからの接続回数が「認証失敗ロックアウトまでの接続回数」で設定された回数に達したとき、接続元IPアドレスと接続時間情報(シリアル値)を "rejectsmtpip.dat" ファイルにテーブル情報として追記で記録します。"rejectsmtpip.dat" ファイルはプログラムインストールフォルダ内に自動生成され、その内容は[SMTP認証ロックアウト]ボタンクリックで確認できます。
- 設定された「ロックアウト期間」=接続拒絶期間の間、epstrd サービスは該当IPアドレスからの接続を一切拒絶し、接続時に強制切断します。
- 設定された「ロックアウト期間」=接続拒絶期間をすぎると、自動的に再度接続が可能となります。再接続後、正しいID/パスワードで認証できれば問題はありませんが、認証失敗を繰り返し、再び設定された回数に達すると、再度テーブル情報として追記で記録、同様の接続ロックアウト処理が繰り返されます。
- メールサーバ管理者が "rejectsmtpip.dat" ファイルを編集し、記録された接続時間情報(シリアル値)部分をカット、接続元IPアドレスだけを残すと、該当IPアドレスからの接続は、永続的に拒絶されます。
- メールサーバ管理者が "rejectsmtpip.dat" ファイルを編集し、記録された接続元IPアドレスおよび接続時間情報(シリアル値)部分を行ごと削除すれば、該当IPアドレスからの接続はリセット扱いされます。
- 以下のエラー応答で拒絶されたときにはこの機能の対象外であり、「認証接続ロックアウト機能」は働きません。
(1) 接続元がEHLO命令を出さないときの 503 5.0.0 Need EHLO before AUTH のエラー応答を返すケース。
(2) SMTP認証を実施していないとき接続元から存在しないユーザーで試されたときの 550 5.1.1 xxxx ... User unknown. のエラー応答を返すケース。
(3) 接続しただけで切断したようなケース
- メールサーバ管理者が "rejectsmtpip.dat" ファイルを編集し、接続を許可したい接続元IPアドレスを "true" 指定する方法で該当IPアドレスからの接続を永続的に許可するようになります。(※下記D.の書式例参照)
【設定方法】
- E-POSTコントロールセンターのメールサーバ管理から[システム管理メニュー]をクリック、[サービス制御]をクリックして表示される「サービス制御」画面から epstrd サービス停止。
- E-POSTコントロールセンターのメールサーバ管理から[システム管理メニュー]をクリック、[SMTP受信詳細]を開き、「認証失敗ロックアウトまでの接続回数」を設定。設定値 "0" のときは認証ロックアウト機能は無効になっていることを表わしている。認証ロックアウトを有効にするには、"0" 以外の任意の回数、たとえば10回なら "10" を入力。
- 右にある「ロックアウト期間」を分単位で設定。設定値 "0" のときは認証ロックアウト期間無効=期間無制限を表す。設定するには、任意の分、たとえば30分なら "30" を入力。
- 最後に最下の[設定する]ボタンをクリック。
- E-POSTコントロールセンターのメールサーバ管理から[システム管理メニュー]をクリック、[サービス制御]をクリックして表示される「サービス制御」画面から epstrd サービス開始。
- E-POSTコントロールセンターのメールサーバ管理から[システム管理メニュー]をクリック、[SMTP受信詳細]を開くと表示される[SMTP認証ロックアウト]ボタンをクリック。
- "rejectsmtpip.dat" ファイルが表示され、設定直後は空の状態であることを確認。
【運用方法】
- しばらく運用を続ける。
- E-POSTコントロールセンターのメールサーバ管理から[システム管理メニュー]をクリック、[SMTP受信詳細]を開くと表示される[SMTP認証ロックアウト]ボタンをクリック。
- "rejectsmtpip.dat" ファイルが表示されるのを確認。運用を続けた結果、下記の記録例のように、SMTP認証ロックアウトとなったIPアドレスの記録がされており、同時にそれが拒否テーブルとなっているのを確認する。
- SMTP認証ロックアウトとなったIPアドレスについて、必要に応じて編集する。くわしくは下記。
【ロックアウト記録されたIPアドレスを扱う"rejectsmtpip.dat"ファイル運用上のポイント】
- "rejectsmtpip.dat" ファイルは蓄積されていく一方であるため、システム管理者がときどき目を配り過去の古いロックアウト記録は行ごと削除などのメンテナンス作業を行う。
- ロックアウト記録がされたIPアドレスについて永続拒否をしたいとき→接続元IPアドレスだけを残し、接続時間情報(シリアル値)部分をカットする。(→下記B.の書式例)
- ロックアウト記録がされたIPアドレスについてリセットしたいとき→記録された接続元IPアドレスおよび接続時間情報(シリアル値)部分を行ごと削除する。
- ロックアウト記録がされたIPアドレスについて永続許可をしたいとき→接続時間情報(シリアル値)部分をカットし代わりに "true" を追記して保存する。(→下記D.の書式例)
【"rejectsmtpip.dat"ファイル記録例】
SMTP認証接続の失敗が設定回数に達したものについて、"rejectsmtpip.dat"ファイルが自動生成され以下の通り記録されます。
接続元IPアドレス[TABコード]接続時間情報(シリアル値)or 論理値
-------------------------------------------------------
200.100.xxx.xxx[TAB]131093276603370000
210.110.xxx.xxx[TAB]131093277310880000
220.120.xxx.xxx[TAB] (→上記B.)
192.168.xxx.xxx[TAB]true ※(→上記D.)
:
:
-------------------------------------------------------
【参考】「認証接続ロックアウト機能」の設定ファイル「認証失敗ロックアウトまでの接続回数」「ロックアウト期間」
以下の設定ファイルをviエディタで作成、下記のように設定値を記述することでも可能です。設定後はサービスの再起動が必要です。
- 「認証失敗ロックアウトまでの接続回数」設定ファイル "AuthLockOut"
[メール作業フォルダ] (既定値 /var/spool/epms/)
→reg
→epost
→ims
→EPST5RS
→AuthLockOut.1 (数値) ロックアウトまでの回数
(デフォルト=0:無効)例:10回→10
- 「ロックアウト期間」設定ファイル "AuthLockOutTime"
[メール作業フォルダ] (既定値 /var/spool/epms/)
→reg
→epost
→ims
→EPST5RS
→AuthLockOutTime.1 (数値) ロックアウト期間:分単位
(デフォルト=0:無限)例:30分→30
(関連FAQ)
●〔新機能〕SMTP接続時の「IPロックアウト機能」について