dovecotでIMAPサーバdovecotでIMAPを受けつけるサーバを作ります。
IMAPの検証用に、外部へメール送信することがないようLAN内に閉じたPostfix構成としています。
もちろん、Postfixに中継の設定を加えれば外部へのメール送信は可能となります。
SELinuxの無効
SELinuxの確認
#getenforce
Enforcing
SELinuxの編集
#vi /etc/sysconfig/selinux
SELinux=disabled
OSの再起動
Postfixの構築
OSの初期段階で入っていなければPostfixをインストールし、Firewallを開放します。
Postfixのインストールと起動
# dnf install postfix
# systemctl enable postfix
# systemctl start postfix
Firewallの開放
# firewall-cmd --add-service=smtp --permanent
# firewall-cmd --reload
# firewall-cmd --list-service
cockpit dhcpv6-client smtp
ssh
インストールされたPostfixのmain.confへ、最低限のドメイン情報を設定します。
# vi /etc/postfix/main.cf
mydestination = $myhostname, localhost.$mydomain, example.local
inet_interface = all
inet_protocols = ipv4
mynetworks = localhost
home_mailbox = Maildir/ (MaildirというディレクトリにMaildir形式で保存)
この設定では、いずれからでも自ドメイン宛のメールは受信します。
中継許可アドレス(mynetworks)はlocalhostのみなので、他のノードからメールサーバを経由して外部へメール送信はできません。
IMAPを使用する想定なのでメールボックスは、ホームディレクトリへMaildirという名前で保存します。
メール保存形式は末尾にスラッシュを付けて、MailDir形式とします。
ちなみにhome_mailboxを指定すると類似設定のmail_spool_directoryは暗黙で無効になります。
Postfixを再起動し、ポートが開いていることを確認します。
# systemctl restart postfix
# ss -ant State Recv-Q Send-Q Local Address:Port Peer Address:Port Process
LISTEN 0 128 0.0.0.0:22 0.0.0.0:*
LISTEN 0 100 0.0.0.0:25 0.0.0.0:*
メールアカウントを作成する
メールサーバでメールを受け付けるために、メール用ユーザーを登録します。
# useradd user1 -s /sbin/nologin
# passwd user1pass
dovecotを構成する
dovecotをインストールし、Firewallのポートを開放します。
ここではIMAP(143)を許可しています。
dovecotxのインストール
# dnf install dovecot
Firewallの開放
# firewall-cmd --add-service=imap --permanent
# firewall-cmd --reload
# firewall-cmd --list-service
cockpit dhcpv6-client imap
imap ssh
dovecotの設定として、以下confファイルを修正します。
SSLを使用せず、パスワードを平文で通信することを許可しています。
IMAPプロトコルの限定
# vi /etc/dovecot/dovecot.conf
protocols = imap
listen = *
ユーザー認証(平文の許可)設定
# vi /etc/dovecot/conf.d/10-auth.conf
disable_plaintext_auth = no
auth_mechanisms = plain login
メールディレクトリにパス指定
# vi /etc/dovecot/conf.d/10-mail.conf
mail_location = maildir:~/Maildir
SSL使用の禁止
# vi /etc/dovecot/conf.d/10-ssl.conf
ssl = no
dovecotを起動して、ポート143が起動しているかを確認します。
dovecotの起動
# systemctl start dovecot
# systemctl enable dovecot
# ss -ant State Recv-Q Send-Q Local Address:Port Peer Address:Port Process
LISTEN 0 128 0.0.0.0:22 0.0.0.0:*
LISTEN 0 100 0.0.0.0:22 0.0.0.0:*
LISTEN 0 100 0.0.0.0:143 0.0.0.0:*
最後に、ThunderbirdでIMAPメールアカウントを追加し、メールの送受信試験を行います。
IMAPの試験をするとき、Thunderbirdの既存のPOPアカウントを使いまわさないようにしましょう。
ThunderbirdではPOPアカウントとIMAPアカウントは別物なので、アカウントを使いまわすと応答がないように見えます。
|