ページへ戻る

− Links

 印刷 

SMTP-AUTH+Secure-IMAPで悩む :: Nest Of Hawk

xpwiki:SMTP-AUTH+Secure-IMAPで悩む

Gentoo Linuxな生活​/サーバ設定関連[1]

ページ内コンテンツ
  • 別に
  • 先に認証とTLSの説明
  • ではIMAPから
  • 次にPostfix

別に anchor.png[2]

SMTP-AUTHとか、imap-tlsとか、そこまでこだわる必要も無いような気もしますが、ノートPCとか持ってるので、うちのメールサーバが外から使えるとそれなりに便利だろうと思いまして、外部からの利用を考慮して導入しました。これがまた大変だった…1日なやんじゃいました。ではSMTP-AUTH+TLSとIMAP+TLSを。

Page Top

先に認証とTLSの説明 anchor.png[3]

認証ってのは簡単。ユーザ名とパスワードで使って良いかどうかを問い合わせる奴。ですがこのユーザ&パスワードは結構曲者で、コレ自体をナマでネットに流すと結構危険だったりします。なので、これは暗号化しておいた方がよいのです。ナマで流す方法を平文認証といい、なんらか暗号化されて送信する方法を暗号化認証といいます。この場合はパスワードのみを暗号化します。

コレと別にTLSというものがありまして、これはデータの通信路自体を暗号化します。

つまり、先の認証は、パスワードは暗号化されてもメールデータは平文のまま、TLSを使うとメールデータも暗号化されるというわけ。

Page Top

ではIMAPから anchor.png[4]

Cyrus-IMAPは既にパスワード暗号化はサポートされてます。TLSもサポート済でコンパイルされているので、Outlookなどのメールクライアントで「このサーバはセキュリティで保護された接続(SSL)が必要」にチェックマークを付けます。終了~♪

Page Top

次にPostfix anchor.png[5]

こちらも一応コンパイルはすんでいますので、設定だけです。既存の設定に以下を追加します。/etc/postfix/main.cfを開きます。

# SASL認証を許可
smtpd_sasl_auth_enable = yes←SASL認証をONにする

# SASL認証セキュリティ
smtpd_sasl_security_options = noanonymous, noplaintext←認証無し、平文認証は不許可

# TLS使用時SASL認証セキュリティ
smtpd_sasl_tls_security_options = noanonymous←TLSを使う場合は認証なしはだめ

# SASL認証するドメインを指定
smtpd_sasl_local_domain = $mydomain←SASL認証するのは自分のドメイン

# mynetwork,sasl認証を通ったものはiリレーする
smtpd_recipient_restrictions = permit_mynetworks,permit_sasl_authenticated, reject_unauth_destination

   ←自分のネットワーク、SASL認証を通過したやつは許可、設定に入っている通貨設定以外をはじく

#TLSの設定
smtpd_tls_cert_file = /etc/ssl/postfix/server.crt←キーファイルの設定
smtpd_tls_key_file = /etc/ssl/postfix/server.key
#
# Its DSA counterparts:
#smtpd_tls_dcert_file = /etc/ssl/postfix/server.pem
#smtpd_tls_dkey_file = /etc/ssl/postfix/server.csr
smtpd_tls_loglevel = 1
smtpd_use_tls = yes             ←TLSを有効にする
smtpd_tls_session_cache_database = sdbm:/etc/postfix/smtpd_scache
tls_random_source = dev:/dev/urandom

以上。次にmaster.cfを開き、

smtps     inet  n       -       n       -       -       
     smtpd -o smtpd_tls_wrappermode=yes -o smtpd_sasl_auth_enable=yes
tlsmgr    fifo  -       -       n       300     1       tlsmgr

のコメントをはずします。んが!このままだとエラーが発生します。上のmaster.cfでsmtps→ssmtpに書き換えてください。しばらく悩みました。

で、Outlookの設定を適切に行うと、うまくメールが転送できるはず。ただし、古いメールクライアント(Microsoft ExchangeやOutlookExpress5では、暗号化パスワードが使えなかったりするのでご注意♪


Last-modified: 2009-08-19 (水) 01:15:02 (JST) (5336d) by maruo