メールの読み書きができるようにする Debianでpostfixとdovecotをインストール
前回まででDDNSへの登録が済みましたが、メールの読み書きができるようにします。まずMTA Mail Transfer Agentであるpostfixをインストールします。
apt install postfix
途中でダイアログがでてきます。まずは、

標準的なネット環境でsmtpプロトコルで使う前提なので、上図のように”インターネットサイト”でOKです。つぎが、

ですが、ここではDDNSで登録したホスト名を入れておけばOKです。
ごちゃごちゃとインストールが進んで、
setting myhostname: debianalt.tkota1.kt.home.ne.jp
setting alias maps
setting alias database
changing /etc/mailname to ghost.mydns.jp
setting myorigin
setting destinations: $myhostname, ghost.mydns.jp, debianalt, localhost.localdomain, localhost
setting relayhost:
setting mynetworks: 127.0.0.0/8 [::ffff:127.0.0.0]/104 [::1]/128
setting mailbox_size_limit: 0
setting recipient_delimiter: +
setting inet_interfaces: all
setting inet_protocols: all
Postfix (main.cf) is now set up with a default configuration. If you need to
make changes, edit /etc/postfix/main.cf (and others) as needed. To view
Postfix configuration values, see postconf(1).
After modifying main.cf, be sure to run 'systemctl reload postfix'.
Running newaliases
Created symlink /etc/systemd/system/multi-user.target.wants/postfix.service → /lib/systemd/system/postfix.service.
メッセージにあるように、基本的にはこれでOKのはずですが、少しだけ手をいれる必要があります。
- いわゆるprovider(死語?)経由でネットにつながっている場合は、標準の25番ポートがsmtpのポートで使えないので、relayしないといけない。なのでその設定。
- smtp authのサポート
- gmailのアカウントに対しても迅速にメールが配送されるために
- spf
- dkim
- dmarc をサポート
smtp authのサポートのために、一旦postfix(メール送信)の設定から離れて、dovecot(メール受信)関係を先に入れます。dovecotのインストールは、
apt -y install dovecot-core dovecot-pop3d dovecot-imapd
pop3dとimapdを両方入れておきます。以下、
が正確なので、恐れながら引用しておきます。実際こちらを参考にして設定しました。タッチするファイルがバラバラで覚えるのが困難です。
vi /etc/dovecot/dovecot.conf
# 30行目 : コメント解除
listen = *, ::
root@mail:~# vi /etc/dovecot/conf.d/10-auth.conf
# 10行目 : コメント解除して変更 (プレーンテキスト認証も許可)
disable_plaintext_auth = no
# 100行目 : 追記
auth_mechanisms = plain login
root@mail:~# vi /etc/dovecot/conf.d/10-mail.conf
# 30行目 : Maildir 形式に変更
mail_location = maildir:~/Maildir
root@mail:~# vi /etc/dovecot/conf.d/10-master.conf
# 107-109行目 : コメント解除して追記
# Postfix smtp-auth
unix_listener /var/spool/postfix/private/auth {
mode = 0666
user = postfix
group = postfix
}
root@mail:~# systemctl restart dovecot
コメント