Sun Java System Messaging Server 6 2005Q4 管理ガイド

認証ユーザーのメールを識別する

サイトには、物理的にネットワークの一部ではない「ローカル」のクライアントユーザーが存在することがあります。これらのユーザーがメールを送信すると、メッセージの送信は外部 IP アドレス (任意のインターネットサービスプロバイダ (ISP) など) から入ってきます。ユーザーが SASL 認証を処理できるメールクライアントを使用している場合には、外部接続と認証接続とを識別できます。その結果に基づいて、認証ユーザーによる送信を許可し、認証されていないユーザーによるリレー送信試行を拒否できます。認証されているかどうかに基づく接続の識別は、受信用 SMTP チャネル (通常、tcp_local チャネル) に saslswitchchannel キーワードを使うことで実現できます。

saslswitchchannel キーワードはチャネルの切り替え先を示す引数をとり、SMTP の差出人が認証されると、送信メッセージが指定した切り替え先チャネルから入ってくるようになります。

Procedure認証ユーザーによる送信であるかどうかを識別するには

手順
  1. 設定ファイルに新しい TCP/IP チャネル定義を別の名前で追加します。次に例を示します。

    tcp_auth smtp single_sys mx mustsaslserver noswitchchannel TCP-INTERNAL

    このチャネルでは、通常のチャネル切り替えは行われません。それよりも前のデフォルト行で、noswitchchannel が明示的あるいは暗黙に指定されているはずです。このチャネルには mustsaslserver が必要です。

  2. 次の例のように、maysaslserversaslswitchchannel tcp_auth を追加することにより、tcp_local チャネルを変更します。


    tcp_local smtp mx single_sys maysaslserver saslswitchchannel \
    tcp_auth switchchannel
    |TCP-DAEMON

    この設定では、ローカルのパスワードによって認証が可能なユーザーが送信した SMTP メールは tcp_auth チャネルから入ってくるようになります。認証されていない SMTP メールが内部ホストから送信された場合、そのメールは tcp_internal から入ってきます。それ以外の SMTP メールは、すべて tcp_local から入ってきます。