torinaブログ

DjangoとBootstrap4で作成したブログ
Python, Django, Kivy, Bootstrap, Apache等のメモです
ソースコード

さくらVPS(CentOS 6)PostfixとDovecot

Linux PostfixとDovecot
約476日前 2015年11月1日19:41
SMTPメールサーバーPostfixとPOP3サーバーDovecotを設定
サーバのドメインがtorina.top
メールには mail.torina.topを使う

postfixの設定
vim /etc/postfix/main.cf

コメントアウトされてるか、既にあるので書き換える
disable_vrfy_command以下は、べたっと貼り付ける
inet_protocols = all にすると、logwatchのgmailへのメールが怪しい感じになるのでipv4にした
myhostname = mail.torina.top
mydomain = torina.top
myorigin = $mydomain
inet_interfaces = all
inet_protocols = ipv4
mydestination = $myhostname, localhost.$mydomain, localhost, $mydomain
home_mailbox = Maildir/

disable_vrfy_command = yes
smtpd_sasl_auth_enable = yes
broken_sasl_auth_clients = yes
smtpd_sasl_security_options = noanonymous
smtpd_sasl_local_domain = $myhostname
smtpd_sender_restrictions = reject_unknown_sender_domain
smtpd_client_restrictions = permit_mynetworks,reject_unknown_client,permit
smtpd_recipient_restrictions = permit_mynetworks,permit_sasl_authenticated,reject_unauth_destination

送信時パスワード設定
vim /etc/sasl2/smtpd.conf

pwcheck_method: auxprop  #変更
auxprop_plugin: sasldb  #追加
mech_list: plain login

vim /etc/postfix/master.cf

コメントアウトされてたら、#を消す
submission inet n - n - - smtpd
-o smtpd_sasl_auth_enable=yes
smtps inet n - n - - smtpd
-o smtpd_sasl_auth_enable=no  # デフォルトはyes

Dovecotの設定
yum -y install dovecot
vim /etc/dovecot/conf.d/10-auth.conf

disable_plaintext_auth = no  # SSL/TLS暗号化使用せず
auth_mechanisms = plain login  # PLAIN認証方式

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

mail_location = maildir:~/Maildir
valid_chroot_dirs = /home

vim /etc/dovecot/dovecot.conf

protocols =pop3

mkdir -p /etc/skel/Maildir/{new,cur,tmp}
chmod -R 700 /etc/skel/Maildir/


とりあえず
info@mail.torina.top
というアドレスをつくっとく。メール用のユーザです
useradd -s /sbin/nologin info
passwd info
saslpasswd2 -u mail.torina.top info
sasldblistusers2  #確認
chgrp postfix /etc/sasldb2
ls -l /etc/sasldb2  #確認


自動起動の設定
/etc/rc.d/init.d/saslauthd start
chkconfig saslauthd on
chkconfig --list saslauthd  #確認
/etc/rc.d/init.d/postfix restart
chkconfig postfix on
chkconfig --list postfix  #確認
/etc/rc.d/init.d/dovecot start
chkconfig dovecot on
chkconfig --list dovecot  #確認

ポート587と110は開放しておく(初期設定のiptablesをみてね)

一応確認
netstat -ant
0 0.0.0.0:587
0 0.0.0.0:110

となっているか見てみる。127.0.0.1になっている場合はどこかおかしいから見直そう

今回、infoというアカウントを作ったけど、これはこのままではメールが受信できない

具体的にはrootのMaildirにメールが届く

理由はinfoは既にエイリアスが設定されてるからなんですね。なので以下で対応する

vim /etc/aliases

infoの前に#をつけます
#info:          postmaster

newaliases

これでOK。後はさくらvpsの場合の設定

ドメイン→ゾーン編集へ

エントリ名:@
タイプ:MX
データ:10 torina.top.

エントリ名:mail
タイプ:A
データ:IPアドレスを入力

エントリ名:mail
タイプ:MX
データ:10 torina.top
mailのCNAMEはもう使わないと思います
あと、torina.top.のように最後にドットがあるのに注意
最後に、WindowsLiveメールを例に設定してみる
サンダーバードも同じようにできるけど、MacOSXのメーラーだと上手く行かないことあるから、がんばって!
メールアカウント追加画面から

電子メールアドレス:info@mail.torina.top
パスワード:入力したパスワード
表示名:お好きな名前
受信サーバー情報
サーバの種類:POP
サーバーのアドレス:mail.torina.top
ポート:110
次を使用して認証する:クリアテキスト

送信サーバー情報
サーバーのアドレス:mail.torina.top
ポート:587
認証が必要にチェック

こんな感じで