Postfix(3.3.0)とDovecot(v2.2.33.2)を備えた新しいメールサーバーはまだ機能していません。数年前に前回インストールしたときから、今では構成が大幅に変更されています。 Dovecotでは、プロトコルは別の方法で管理されます。 Ubuntu 18.04.1x64で実行されています。
現在、サーバーはメールを送信するだけで、受信はしていません。設定に問題があるはずですが、見つかりません。
私は(私が見る限り)奇妙なメッセージなしで詳細なロギングを試みました。それ以外の場合、「service dovecotstatus」は次のアラートを出します:starting up without any protocols
これが問題でしょうか?
netstat -ltnp
Active Internet connections (only servers)
Proto Recv-Q Send-Q Local Address Foreign Address State PID/Program name
tcp 0 0 127.0.0.1:10023 0.0.0.0:* LISTEN 1038/postgrey --pid
tcp 0 0 127.0.0.1:10024 0.0.0.0:* LISTEN 1217/amavisd-new (m
tcp 0 0 127.0.0.1:10025 0.0.0.0:* LISTEN 2551/master
tcp 0 0 127.0.0.1:3306 0.0.0.0:* LISTEN 963/mysqld
tcp 0 0 0.0.0.0:80 0.0.0.0:* LISTEN 937/nginx: master p
tcp 0 0 0.0.0.0:465 0.0.0.0:* LISTEN 2551/master
tcp 0 0 127.0.0.53:53 0.0.0.0:* LISTEN 644/systemd-resolve
tcp 0 0 0.0.0.0:22 0.0.0.0:* LISTEN 880/sshd
tcp 0 0 0.0.0.0:25 0.0.0.0:* LISTEN 2551/master
tcp 0 0 0.0.0.0:443 0.0.0.0:* LISTEN 937/nginx: master p
tcp6 0 0 2a03:b0c0:0:1010::10023 :::* LISTEN 1038/postgrey --pid
tcp6 0 0 ::1:10023 :::* LISTEN 1038/postgrey --pid
tcp6 0 0 ::1:10024 :::* LISTEN 1217/amavisd-new (m
tcp6 0 0 :::80 :::* LISTEN 937/nginx: master p
tcp6 0 0 :::465 :::* LISTEN 2551/master
tcp6 0 0 :::22 :::* LISTEN 880/sshd
tcp6 0 0 :::25 :::* LISTEN 2551/master
tcp6 0 0 :::443 :::* LISTEN 937/nginx: master p
ufwステータス
To Action From
-- ------ ----
Nginx Full ALLOW Anywhere
OpenSSH ALLOW Anywhere
443/tcp ALLOW Anywhere
587/tcp ALLOW Anywhere
25/tcp ALLOW Anywhere
465/tcp ALLOW Anywhere
993/tcp ALLOW Anywhere
995/tcp ALLOW Anywhere
123/tcp ALLOW Anywhere
2812/tcp ALLOW Anywhere
110/tcp ALLOW Anywhere
143/tcp ALLOW Anywhere
Nginx Full (v6) ALLOW Anywhere (v6)
OpenSSH (v6) ALLOW Anywhere (v6)
443/tcp (v6) ALLOW Anywhere (v6)
587/tcp (v6) ALLOW Anywhere (v6)
25/tcp (v6) ALLOW Anywhere (v6)
465/tcp (v6) ALLOW Anywhere (v6)
993/tcp (v6) ALLOW Anywhere (v6)
995/tcp (v6) ALLOW Anywhere (v6)
123/tcp (v6) ALLOW Anywhere (v6)
2812/tcp (v6) ALLOW Anywhere (v6)
110/tcp (v6) ALLOW Anywhere (v6)
143/tcp (v6) ALLOW Anywhere (v6)
サービスdovecotステータス
dovecot.service - Dovecot IMAP/POP3 email server
Loaded: loaded (/lib/systemd/system/dovecot.service; enabled; vendor preset: enabled)
Active: active (running) since Fri 2018-08-10 16:28:55 CEST; 7s ago
Docs: man:dovecot(1)
http://wiki2.dovecot.org/
Main PID: 3122 (dovecot)
Tasks: 4 (limit: 1152)
CGroup: /system.slice/dovecot.service
├─3122 /usr/sbin/dovecot -F
├─3132 dovecot/anvil
├─3133 dovecot/log
└─3136 dovecot/config
Aug 10 16:28:55 domain.tld systemd[1]: Started Dovecot IMAP/POP3 email server.
Aug 10 16:28:55 domain.tld dovecot[3122]: master: Dovecot v2.2.33.2 (d6601f4ec) starting up without any protocols (core dumps disabled)
ログのこのエントリ(「プロトコルなしで起動する」と表示されている)が大きな手がかりです。
Aug 10 16:28:55 domain.tld dovecot[3122]: master: Dovecot v2.2.33.2 (d6601f4ec) starting up without any protocols (core dumps disabled)
Dovecotはインストールに設定されているプロトコルを認識していないため、そのまま起動しているようです。
そして ServerFaultの回答に対するこのコメントによる :
Debianには
!include_try /usr/share/dovecot/protocols.d/*.protocol
設定があります。これらのプロトコルは、対応するパッケージ、たとえばdovecot-pop3d
をインストールすることで自動的に有効になります。
つまり、dovecot-pop3d
パッケージをインストールする必要があることを教えてくれます これはDovecotの公式Ubuntuページで確認されています :
インストールは非常に簡単です。次のパッケージをインストールするだけです。
- dovecot-imapd
- dovecot-pop3d
たとえば、apt-getを使用します。
Sudo apt-get install dovecot-imapd dovecot-pop3d
したがって、次のようなパッケージをインストールすることをお勧めします。
Sudo apt-get install dovecot-imapd dovecot-pop3d
それを行ってから/usr/share/dovecot/protocols.d/
ディレクトリを確認すると、そこに.protocol
ファイルがいくつか表示されます。それを行った後、Dovecotを再起動するだけで、問題はありません。