はじめに

PostifxはもともとSMTPとしてSendmailの代替として考案されたもの

SMTP(Simple Mail Transfer Protoco)

メール転送プロトコル

http://ja.wikipedia.org/wiki/Simple_Mail_Transfer_Protocol

MUA (Mail User Agent)

メッセージの読み書きに利用するソフトウエア OSXのMail, MSのOutlook Express, Thunderbirdなど

MTA (Mail Transfer Agent)

  • MUA -> MTAへメッセージを渡す。
  • メッセージを受け付けるかを判断
  • 他の配信先へリレーを許可する

install(Cent OS)

sendmailを削除することでpostfixがdefault MTAとして認識される。 もし、sendmailを残す場合にはsystem-switch-mail system-switch-mail-gnomeをインストールする必要がある

dovecotはmysqlとperlに依存関係があるので、もしインストールされてないならこのタイミングでインストールされる。

yum updateはして置こう

sendmailを削除する場合(おすすめ)

yum install postfix dovecot 
yum remove sendmail

sendmailを残す場合

yum install postfix dovecot system-switch-mail system-switch-mail-gnome

sendmailを残す場合MTA設定方法

http://blog.jicoman.info/2013/08/postfix_install/

sudo alternatives --config mta

chkconfig postfix on
chkconfig dovecot on
/etc/init.d/postfix start
/etc/init.d/dovecot start

設定

http://centossrv.com/postfix.shtml

設定を確認

postconf -d

Dovecot SASLが使えるかどうか確認。

postconf -a

/etc/postfixの master.cf, main.cfが主な設定ファイル

postfix

main.cf

myhostname = mail.example.com
mydomain = example.com
myorigin = $mydomain
inet_interfaces = all # メールを受け取るinterface指定 
mydestination = $myhostname, localhost.$mydomain, localhost, $mydomain
mynetworks = 192.168.0.0/24, 127.0.0.0/8
relay_domains = # 空白にすることによって untrustedなネットワークに対してopen relayしなくなる
home_mailbox = Maildir/
smtpd_banner = $myhostname ESMTP unknown # 追加(メールサーバーソフト名の隠蔽化)
message_size_limit = 10485760 # 追加(受信メールサイズ制限 : 受信メールサイズを10MB=10*1024*1024に制限)
SASL(Simple Authentication and Security Layer)認証

http://www.postfix-jp.info/trans-2.3/jhtml/SASL_README.html

基本的にSMTPには認証がない

認証機能を利用するためにはSASLを使用する

Cyrus SASL & TLS

postfixのmain.cf修正

# 以下を最終行へ追加(SMTP-Auth設定)
smtpd_sasl_auth_enable = yes
smtp_sasl_password_maps = hash:/etc/postfix/sasl_passwd
smtp_sasl_mechanism_filter = plain
smtpd_sasl_local_domain = $myhostname
smtpd_recipient_restrictions =
    permit_mynetworks
    permit_sasl_authenticated
    reject_unauth_destination

dovecot

/etc/dovecot.conf

listen = *
protocols = imap pop3 lmtp

/etc/dovecot/conf.d/10-mail.conf

mail_location = maildir:~/Maildir #

/etc/dovecot/conf.d/10-master.conf

/etc/aliases

http://d.hatena.ne.jp/riocampos+tech/20080112/p4

# Person who should get root's mail
root:       yourmail@yourdomain.com

その他

main.cf spam関連

smtpd_client_restrictions =
        permit_mynetworks,
        check_client_access hash:/etc/postfix/access,
#        reject_rbl_client all.rbl.jp,
#        reject_rbl_client bl.spamcop.net,
#        reject_rbl_client list.dsbl.org,
#        reject_rbl_client sbl-xbl.spamhaus.org,
    permit

smtpd_helo_required = yes
smtpd_helo_restrictions =
        permit_mynetworks,
        check_helo_access hash:/etc/postfix/access,
        reject_invalid_hostname,
        reject_unknown_hostname,
        reject_non_fqdn_hostname,
    permit

smtpd_sender_restrictions =
        permit_mynetworks,
        check_sender_access hash:/etc/postfix/access,
    reject_unknown_sender_domain,
        reject_non_fqdn_sender

smtpd_recipient_restrictions =
        permit_mynetworks,
        permit_sasl_authenticated,
    check_recipient_access hash:/etc/postfix/access,
        reject_non_fqdn_recipient,
        reject_unauth_destination
        permit_auth_destination,
        reject

smtpd_recipient_restrictions

  • reject_unknown_client : 逆引きの 名前解決 のできない ノード からのメールの受信を拒否する設定です

出先からのメール送信を可能にする。

  • SMTP AUTH構築 を利用する場合、あるいは POP/IMAP before SMTPの構築 を利用する場合には それぞれのアプリケーションに迎合する記述を "permit_mynetworks" と "reject_unauth_destination" の間に記述します。

用語

SMTP AUTH "SMTP Authentication"

「エス・エム・ティー・ピー・オース」呼び、日本語では「 SMTP 認証」と呼ばれます。 MUA が MTA にメール送信を行う際に、MTA側がユーザー認証を行う仕組みを指します。 SMTP AUTHを利用するには、MTAとMUAの双方がその仕組みに対応している必要があって普及に時間がかかっていますが、未対応の古いMUA(2000年代前半頃までにリリースされたもの)のユーザーの減少に伴い、ユーザー認証のスタンダードな手段になりつつあります。 しかし現在ではまだMUAの種類を選ばない POP/IMAP before SMTP 、あるいは両者が併用されているケースが大部分です。

POP/IMAP before SMTP

一般利用が少ない IMAP を省略して POP before SMTP 、更に省略して、 PbS と呼ばれることもあります。 メールサーバー の運用において、ユーザーからの POP3 やIMAP4による受信要求の成功をもって、その ノード に対して動的にメール中継許可を与える技術です。 メールの送信時に直接ユーザー認証を行う SMTP AUTH の標準化までのつなぎの技術とされています。 POP/IMAP before SMTPを利用してメール送信を行う場合、ユーザーは送信前に一度受信操作を行なわなければならないという欠点がありますが、SMTP AUTHに対応していない古い MUA でも利用可能という利点があるため、 ISP のメールサーバーで今でも多く採用されている方式です。 POP/IMAP before SMTPを実装するためのプログラムとして、 drac や Pop-before-smtp などが使われます。

参考

results matching ""

    No results matching ""