SMTPサービスのデフォルト状態では、メールをほかのドメインへ送信する機能(中継機能)は無効にされている。組織内のコンピュータからのSMTP接続では、メールの中継機能を有効にしたいことが多い。メールの中継を許可するには、SMTPサービスで中継の設定を変更する。
対象OS:Windows Server 2003
TIPS「メール・サーバ用にSMTP/POP3サービスをインストールする」「POP3のメール・ボックスを作成する」では、Windows Server 2003にSMTP/POP3サービスをインストールして、メール・サーバ(SMTPとPOP3サーバ)としてセットアップする方法について解説した。そのままでもメール・サーバとして利用できるが、デフォルトでは外部のドメインへメールを送信することはできない。セキュリティ上、SMTPサービスをインストールした直後のままでは、外部ドメインへのメールの中継は禁止されているからだ。
例えばメール・サーバのドメイン(SMTPやPOP3サービスのインストール/セットアップ時に決定する)がexample.jpとなっている場合、〜@example.jpというメール・アドレス(つまりローカルのメール・ボックス)あてのメールはSMTPサービスで受け付け、配信されるが、〜@example.comといった外部ドメインあてのメールの送信は、SMTPサーバで拒否される。以下にSMTPのセッションの例のを挙げておく(これはTelnetコマンドでSMTPサービスに接続してテストしている例。Telnetコマンドの使い方はTIPS「Telnetクライアントの使い方」参照)。
C:\>telnet w2003r2mailsrv.example.jp smtp ……telnetでSMTPサービスへ接続してみる
220 w2003r2mailsrv.example.jp Microsoft ESMTP MAIL Service, Version: 6.0.3790.3959 ready at Fri, 2 Nov 2007 10:00:25 +0900 ……SMTPサービスの応答
helo w2003r2mailsrv ……HELOで接続クライアント名を渡す
250 w2003r2mailsrv.example.jp Hello [10.20.1.103] ……OK応答
mail from:<user01@example.jp> ……送信元メール・アドレスの指定
250 2.1.0 user01@example.jp....Sender OK ……OK応答
rcpt to:<user02@example.jp> ……同一ドメイン内のユーザーへの送信
250 2.1.5 user02@example.jp ……OK応答。これは許可された
rcpt to:<someone@otherdomain.example.com> ……外部ドメインのユーザーへの送信
550 5.7.1 Unable to relay for someone@otherdomain.example.com ……エラー応答。リレーできないという応答
quit ……終了コマンド
221 2.0.0 w2003r2mailsrv.example.jp Service closing transmission channel
外部ドメインのあて先をrcptコマンドで指定すると(rcptはメールのあて先を指定するコマンド)、このように「550 ……」というエラー・メッセージが戻ってくる(500番台のメッセージはエラーを表す)。
これを解消し、外部ドメインあてのメールを受け付けるようにするためには、SMTPサービスにおける中継/配信の設定を変更すればよい。
SMTPで外部ドメインあてのメールの送信(「中継」という)を許可する場合は、十分注意する必要がある。特にインターネットに向けて公開されているSMTPサーバにおいて、無条件に中継を許可してしまうと、どんなメールでも中継してしまうことになり、いわゆる「スパム・メールの踏み台(スパム・メールの送信元)」として利用されてしまう可能性がある。これを避けるには、無条件の中継は許可せず、例えば組織内から組織外へ送信する場合のみ中継を許可し、外部からの着信メールでは中継を許可しない(そのメール・サーバにあるメール・ボックスへ置くことは許可するが、そこからさらに別のSMTPメール・サーバへは送信しない)、といった設定にしておくのがよい。SMTPサービスにおける中継の許可方法はいくつかあるが、本TIPSではIPアドレスによって中継を許可/禁止する方法について解説する。
なお、より高機能でセキュアなメール・システムとするためには、IPアドレスによる制限だけでなく、SMTPサーバ・アクセス時の認証の必須化やDNSの逆引きによるクライアント・アドレスの詐称の禁止、ポート番号の変更(サブミッション・ポートの使用など。TIPS「スパム・メールの送信を制限するOutbound Port 25 Blockingとは」「サブミッション・ポートを利用してメールを送信する」などを参照)、メール・サーバと連携して動作するウイルス/スパム対策システムの導入、暗号化やアクセス制御の導入などの手法も併用するのが望ましい。Windows Server 2003のSMTPサービスで実施可能な対策については、今後も本TIPSで取り上げる予定である。
Windows Server 2003のSMTPサービスにおいて、メールの中継を許可するには、まずIISの管理ツールを起動し([すべてのプログラム]−[管理ツール]−[インターネット インフォメーション サービス (IIS) マネージャ]ツール)、SMTPサービスのプロパティを表示させる。
次に[アクセス]タブにある[中継]ボタンをクリックする。
上の画面にある(3)をクリックすると表示される[中継の制限]ダイアログでは、中継を許可するIPアドレス群を指定する。ここで許可されたIPアドレス(単一のアドレスやアドレス範囲)もしくはドメイン名のコンピュータからSMTP接続すると、メールの中継が許可される。なおSMTPサービスへの接続そのものをIPアドレスで制限したい場合は、上の(2)を使って制限する。
上の画面の(4)をクリックするとエントリを追加するためのダイアログが表示されるので、例えば組織内のネットワーク・アドレスなどを指定する。なおデフォルトではローカル・ループバック・アドレス(127.0.0.1)からの接続ですら中継は禁止されているので、必要ならばそのためのエントリも追加すること。ただし、ローカルのコンピュータがウイルスやワームなどに乗っ取られてメールを送信してしまう危険性も考えられるので、ローカル・ループバック・アドレスを利用する場合は十分注意すること。
■この記事と関連性の高い別の記事
Copyright© Digital Advantage Corp. All Rights Reserved.