arcanum_jp’s blog

おっさんの日記

メールサーバー勉強

先日のメールサーバーの学習について、もうちょっと突っ込んでみた。


 メールサーバーは、MTA,MDA,MRAで構成されるが、自分のサーバーにメールが送信されてきたときの関連は以下の通り。(この中では、DNSとリモートMDAについてはめんどくさいので無視しています。)




 メール自体はMTA同士が認証機能のないSMTPプロトコルで転送しあいます。自分のサイトに来たメールはMDAに渡し、各ユーザのメールボックスまで運んでもらいます。自分のサイトではない場合、次のMTAに渡します(リレーする)または、スパムとして握りつぶします。ここまでがメールサーバーの動き。


 各ユーザーはメールを見るために、MUAを使い、MRAにメールの受信を依頼します。このとき使われるプロトコルがPOP(今はPOP3と言い切ってもいい?)です。POP3自身は認証があります。メールを出すときは、MURはMRAに依頼を出すのではなく、直接MTAに依頼を出します。


 調べたら実際のメールサーバーでは以下のような構成らしい。(sendmailとQPopperを例に取ります)




 次にJamesの場合を例に取ります。
 


 Jamesの場合は明確にMTAとMDAが分かれていいるわけではないみたいなので、この図もどうかなと思ったのですが、ケース1は、ひとつのサーバー筐体に1つのJamesがSMTPとPOPの機能を動かしている場合。僕もいまから構築するケースとか、個人で運用するレベルはコレで十分でしょう。ケース2は、多分できるのか?と言ったレベルで書いているのですが、(config.xmlの内容からするとこう考えてしまう)SMTPとPOPサーバを別々に起動するパターン。



 やっとこれでメールサーバーの構成がおぼろげに分かってきた感じがすると書いてみたりする。