iptables で簡単OP25B対策

独自ドメインのメールアドレスを使いたい諸氏にとって接続プロバイダの OP25B というやつはうっとおしい障壁です。
自分のサーバーがVPSか専用サーバーで、root権限があるのなら、最も簡単なOP25B対策方法を紹介します。

それは iptables のポートリダイレクトを使う方法です。

前提条件として iptables は普通に使える環境であるものとします。

■ ポートリダイレクト

iptables の nat の設定で PREROUTING REDIRECT を使います。

書き方はいたって簡単。

/etc/sysconfig/iptables


# *filter の COMMIT の後に以下を追加

*nat
:PREROUTING ACCEPT [0:0]
:POSTROUTING ACCEPT [0:0]
:OUTPUT ACCEPT [0:0]
-A PREROUTING -p tcp -m tcp --dport 587 -j REDIRECT --to-ports 25
COMMIT

これだけです。
このサーバーの 587 ポートに接続に来たら内部では 25 に来たことになり、SMTPが普通に使えます。

めでたしめでたし。

※これができないVPSもたまにあるようです。
※さくらのVPSはできることを確認済みです。

iptables インストールと設定

サーバー内の設定だけでできるファイアウォール iptables の基本設定について書きます。

■ インターネットの脅威

インターネット上に公開されたサーバーはファイアウォールなしの場合、必ず(#ここ強調します。例外なく100%) クラッキング(ハッキング)やDoS攻撃などアタックされるものです。

サーバー運営初心者の方々は、はじめ結構なめてますが、アタックは必ず来ます。多ければ連日。

私もかつて初めてサーバーというものを自分で構築したとき、それは目立たないひっそりとした自宅サーバーなのに、まだろくにホームページも公開していないのに、たった数日でクラッキング(ハッキング)されて内部のプログラム/usr/binの中などがすり替えられました。
そのとき思ったものです。…. 怖い … インターネット怖い~。

アタックそのものが来ないようにする方法はありませんが、破られないように防ぐ方法はあります。
(家を建ててドアがあれば、コソ泥にドアノブを触らせないようにはできないけど鍵は掛けられます)

何か最低限のセキュリティ対策は必要です。

■ ファイアウォール

ファイアウォールとは、予め決めたIPアドレスとポートのみに接続を許すように制限することです。

専用機器を使ったファイアウォールのサービスは通常有料で金額も少々お高いです(毎月数千円~数万円)。

しかし専用機器を使ったファイアウォールがなくてもサーバーには iptables という機能が備わっており、自分でファイアウォールが立てられます。

無料でサーバー内の設定だけでできるファイアウォール、これはしておいて損は無いです。

少なくとも使わないポートは閉じて、必要に応じて SSH などの危険なものは数分間に数回しか許さない、などの対策もあればなおよいでしょう。

続きを読む