この文書の現在のバージョンと選択したバージョンの差分を表示します。
|
linux:postfix:dovecot-sasl [2010/11/17 07:33] miyako |
linux:postfix:dovecot-sasl [2010/11/22 01:40] (現在) miyako |
||
|---|---|---|---|
| ライン 1: | ライン 1: | ||
| ====== Postfix + Dovecot @SMTP-AUTH ====== | ====== Postfix + Dovecot @SMTP-AUTH ====== | ||
| - | PostfixとDovecotは親和性が良い。ウンウンSMTP-AUTHの認証をDovecotが引受けてくれるのだ。 | + | PostfixとDovecotは親和性が良い。ウンウン |
| + | |||
| + | SMTP-AUTHの認証をDovecotが引受けてくれるのだ。 | ||
| 環境は例によってCentOS5.5 | 環境は例によってCentOS5.5 | ||
| ライン 17: | ライン 19: | ||
| </code> | </code> | ||
| + | バーチャル用のシステムユーザを作成 | ||
| + | <code> | ||
| + | groupadd -g 5000 vuser | ||
| + | useradd -g vuser -u 5000 vuser | ||
| + | mkdir /home/vuser/vhosts/ | ||
| + | chmod -R 771 /home/vuser/ | ||
| + | chown -R vuesr:vuser /home/vuser/ | ||
| + | </code> | ||
| Postfixインストール | Postfixインストール | ||
| ライン 27: | ライン 37: | ||
| Postfixが肝心のdovecot認証が使える状況か確認する | Postfixが肝心のdovecot認証が使える状況か確認する | ||
| <code> | <code> | ||
| - | postcont -a | + | postconf -a |
| cyrus | cyrus | ||
| ライン 81: | ライン 91: | ||
| </code> | </code> | ||
| + | ローカルのバーチャルドメインを登録するファイルを作成する | ||
| + | <code> | ||
| + | vi /etc/postfix/virtual_domains | ||
| + | |||
| + | ドメイン名 required to prevent relay access denied errors | ||
| + | |||
| + | ドメイン名の右辺はダミーなのでなんでも構わないです | ||
| + | |||
| + | ハッシュに変換します | ||
| + | postmap /etc/postfix/virtual_domains | ||
| + | </code> | ||
| + | |||
| + | バーチャルユーザを作成する | ||
| + | <code> | ||
| + | ファイルをインクルードする事は出来ないのでドメイン毎にファイルを作成する場合はハッシュに変換する前にマージする | ||
| + | vi /etc/postfix/vmailbox | ||
| + | |||
| + | ユーザ名@ドメイン名 ドメイン名/ユーザ名/Maildir/ | ||
| + | |||
| + | ハッシュに変換します | ||
| + | postmap /etc/postfix/vmailbox | ||
| + | </code> | ||
| + | |||
| + | Submissionポートを利用可能にする | ||
| + | <code> | ||
| + | vi /etc/postfix/master.cf | ||
| + | |||
| + | Submission行のコメントを外す | ||
| + | submission inet n - n - - smtpd | ||
| + | </code> | ||
| + | |||
| + | Sendmailを停止してMTAをPostfixへ変更する | ||
| + | <code> | ||
| + | service sendmail stop | ||
| + | chkconfig sendmail off | ||
| + | chkconfig --list sendmail | ||
| + | |||
| + | alternatives --config mta | ||
| + | 選択 コマンド | ||
| + | ----------------------------------------------- | ||
| + | *+ 1 /usr/sbin/sendmail.sendmail | ||
| + | 2 /usr/sbin/sendmail.postfix | ||
| + | |||
| + | Enter を押して現在の選択 [+] を保持するか、選択番号を入力します:2 | ||
| + | </code> | ||
| + | |||
| + | dovecotをインストール | ||
| + | <code> | ||
| + | yumでサクッとインストール | ||
| + | |||
| + | yum -y install dovecot | ||
| + | </code> | ||
| + | |||
| + | 設定ファイルを修正 | ||
| + | <code> | ||
| + | cd /etc/ | ||
| + | vi dovecot.conf | ||
| + | |||
| + | 設定箇所 | ||
| + | auth default { | ||
| + | mechanisms = digest-md5 cram-md5 plain login | ||
| + | passdb passwd-file { | ||
| + | args = /home/vuser/dovecot-passwd | ||
| + | } | ||
| + | userdb passwd-file { | ||
| + | args = /home/vuser/dovecot-passwd | ||
| + | } | ||
| + | user = root | ||
| + | |||
| + | socket listen { | ||
| + | client { | ||
| + | path = /var/spool/postfix/private/auth | ||
| + | mode = 0660 | ||
| + | user = postfix | ||
| + | group = postfix | ||
| + | } | ||
| + | } | ||
| + | </code> | ||
| + | **ここでハマった!!mechanismsの設定でPlainだけだとSMTP-AUTHの認証が通らない事に気づくのに1日以上かかった(--;)** | ||
| + | |||
| + | |||
| + | /usr/lib/sasl2/smtpd.confの設定やsaslauthのサービスは起動する必要は無いと思う。。。たぶん | ||
| + | |||
| + | バーチャルドメイン用のディレクトリを作成する | ||
| + | <code> | ||
| + | cd /home/vuser/ | ||
| + | mkdir vhosts | ||
| + | chmod 755 vhosts | ||
| + | chown vuser:vuser vhosts | ||
| + | </code> | ||
| + | |||
| + | dovecot用のパスワードファイルを作成する | ||
| + | <code> | ||
| + | cd /home/vuser/ | ||
| + | vi dovecot-passwd | ||
| + | |||
| + | ユーザ名@ドメイン名:{Plain}パスワード:5000:5000::/home/vuser/vhosts/%d/%u/Maildir/ | ||
| + | </code> | ||
| + | |||
| + | サービスを起動 | ||
| + | <code> | ||
| + | service postfix start | ||
| + | service dovecot start | ||
| + | |||
| + | chkconfig postfix on | ||
| + | chkconfig dovecot on | ||
| + | |||
| + | ■ 確認 | ||
| + | chkconfig --list postfix | ||
| + | postfix 0:off 1:off 2:on 3:on 4:on 5:on 6:off | ||
| + | |||
| + | chkconfig --list dovecot | ||
| + | dovecot 0:off 1:off 2:on 3:on 4:on 5:on 6:off | ||
| + | </code> | ||