|
MSAとMTAは概念上の区別だけではなく、分離して設定することにも利点がある。それは、メールサーバのリレー設定が単純明快になり、ポリシーを正しく実装するのが容易になるということだ。
一般にMTAとMSAでは、メールを受け取り次に中継するための条件は異なることが多い。MSAでは、宛先にかかわらず特定の送信者からのメールのみを受け取り中継する。MTAには、送信者にかかわらず特定の受信者宛のメールを受け取り中継したり、特定のホストからのメールを無条件に中継したりとさまざまな形態がある。
具体例をあげてみよう。
example.jpのMXレコードが向いているMTAで必要な設定は、送信元のドメインやIPアドレスにかかわらず、example.jp宛のメールであれば受け取り、それ以外のメールははじく、という設定である。
example.jpのユーザが利用するMSAで必要な設定は、宛先にかかわらず、example.comのユーザからの発信であると認証された場合のみメールを受け取りMTAに引き渡し、それ以外のメール送信はすべて拒否する、という設定である。ユーザの認証には、たとえば「SMTP
AUTH」を利用する。
それぞれのルールはそれほど複雑なものではないが、もしこれを1つのMTAで実現しようとすると、とたんに設定が複雑になる。MTAとMSAが機能的に分離していれば、それぞれに対して適切にアクセスを制御できるというわけだ。
最近ではMSAは25番ポートではなく、Message Submission(RFC2476)用に定義された587番ポートを利用することが多くなってきている。Message
Submissionは利用するポートは異なるが、プロトコルはSMTPそのものである。ポートを分けることにより、1台のサーバでMTAとMSAの機能が分離できるというわけだ。
MTAとMSAを分離し、それぞれに対し必要最小限のリレーを許可するように設定することで、運用しているサーバがオープンリレーとなってしまう危険性を回避することが可能になる。また、MTAとMSAではサーバのチューニングのポイントも異なってくる。
|