Centos 7 上的 Postfix / Dovecot 无法连接到存储服务器

Centos 7 上的 Postfix / Dovecot 无法连接到存储服务器

注意:我没有手动安装任何这些,所有这些都是通过 Virtualmin sh 安装脚本安装的。我已经通过他们的脚本重新安装了 4 次,每次都遇到同样的问题。但似乎没有人遇到过这个问题?

无法让 postfix 与 Dovecot 结合工作,我对此还很陌生,但这是我能想到的可以提供帮助的数据。

任何帮助将不胜感激,

主要问题最初是 Postfix 甚至无法运行,然后我在 /etc/postfix/main.cf 中更改了以下行并在末尾添加了 =。

允许我的网络访问,拒绝未授权目的地,等等。

按照另一个人的指导,因为这些变量没有初始化,所以它可以再次运行。

现在,我已经运行了 Postfix,但无法“连接到存储服务器”。如果我使用错误的登录凭据,则会收到“登录失败”的提示。如果我使用正确的凭据,则会收到来自 Roundcube 的“无法连接到存储服务器”的提示,这表明 Dovecot 运行正常,但在与 Postfix 通信的某个过渡过程中出现了中断。(我猜)

我不知道接下来该去哪里。

我已经排除了与不相关的其他程序的任何数据,如果我可能遗漏了某些内容,请告诉我。

但是我在任何日志或提取的数据中都没有看到来自 Postfix 的任何内容。

SS-图尔潘

tcp    LISTEN     0      0                *:25                           *:*                   users:(("master",pid=596,fd=13))
tcp    LISTEN     0      0                *:993                          *:*                   users:(("dovecot",pid=881,fd=38))
tcp    LISTEN     0      0                *:995                          *:*                   users:(("dovecot",pid=881,fd=25))
tcp    LISTEN     0      0               :::110                         :::*                   users:(("dovecot",pid=881,fd=24))
tcp    LISTEN     0      0               :::143                         :::*                   users:(("dovecot",pid=881,fd=37))
tcp    LISTEN     0      0               :::25                          :::*                   users:(("master",pid=596,fd=14))

ss -anlp | grep :25

tcp    LISTEN     0      0         *:25                    *:*                   users:(("master",pid=574,fd=13))
tcp    LISTEN     0      0        :::25                   :::*                   users:(("master",pid=574,fd=14))
tcp    LISTEN     0      0         *:25                    *:*                   users:(("master",pid=574,fd=13))
tcp    LISTEN     0      0        :::25                   :::*                   users:(("master",pid=574,fd=14))

以下是( ps aux | grep sasl )结果

root       148  0.0  0.0  71192   976 ?        Ss   03:11   0:00 /usr/sbin/saslauthd -m /run/saslauthd -a pam -n 2 -r
root       149  0.0  0.0  71192   720 ?        S    03:11   0:00 /usr/sbin/saslauthd -m /run/saslauthd -a pam -n 2 -r
root      3135  0.0  0.0   8988   928 pts/0    S+   04:11   0:00 grep --color=auto sasl
[root@dns ~]# ps auxw | grep saslauth
root       148  0.0  0.0  71192   976 ?        Ss   03:11   0:00 /usr/sbin/saslauthd -m /run/saslauthd -a pam -n 2 -r
root       149  0.0  0.0  71192   720 ?        S    03:11   0:00 /usr/sbin/saslauthd -m /run/saslauthd -a pam -n 2 -r
root      3137  0.0  0.0   8988   936 pts/0    S+   04:12   0:00 grep --color=auto saslauth

Postfix 的信息不应该也在这里吗?

maillog 的最新日志

Dec 21 03:11:40 dns postfix/postfix-script[583]: starting the Postfix mail system
Dec 21 03:11:40 dns postfix/master[596]: daemon started -- version 2.10.1, configuration /etc/postfix
Dec 21 03:11:46 dns dovecot: master: Dovecot v2.2.10 starting up for imap, pop3 (core dumps disabled)
Dec 21 03:11:47 dns spamd[432]: spamd: server started on IO::Socket::IP [127.0.0.1]:783, IO::Socket::IP [::1]:783 (running version 3.4.0)
Dec 21 03:11:47 dns spamd[432]: spamd: server pid: 432
Dec 21 03:11:48 dns spamd[432]: spamd: server successfully spawned child process, pid 890
Dec 21 03:11:48 dns spamd[432]: spamd: server successfully spawned child process, pid 891
Dec 21 03:11:48 dns spamd[432]: prefork: child states: IS
Dec 21 03:11:48 dns spamd[432]: prefork: child states: II
Dec 21 04:53:52 dns dovecot: imap: Error: user (username): Mail access for users with UID 503 not permitted (see first_valid_uid in config file, uid from userdb lookup).
Dec 21 04:53:52 dns dovecot: imap: Error: Invalid user settings. Refer to server log for more information.

systemctl 状态后缀-l

 Active: active (running) since Wed 2016-12-21 03:11:40 UTC; 3h 24min ago
  Process: 161 ExecStart=/usr/sbin/postfix start (code=exited, status=0/SUCCESS)
  Process: 150 ExecStartPre=/usr/libexec/postfix/chroot-update (code=exited, sta                                                         tus=0/SUCCESS)
  Process: 119 ExecStartPre=/usr/libexec/postfix/aliasesdb (code=exited, status=                                                         0/SUCCESS)
 Main PID: 596 (master)
   CGroup: /system.slice/postfix.service
           |- 596 /usr/libexec/postfix/master -w
           |- 618 qmgr -l -t unix -u
           `-7229 pickup -l -t unix -u

Dec 21 03:11:35 dns systemd[1]: Starting Postfix Mail Transport Agent...
Dec 21 03:11:40 dns postfix/postfix-script[583]: starting the Postfix mail syste                                                         m
Dec 21 03:11:40 dns postfix/master[596]: daemon started -- version 2.10.1, confi                                                         guration /etc/postfix
Dec 21 03:11:40 dns systemd[1]: Started Postfix Mail Transport Agent.
Dec 21 05:04:04 dns postfix/smtpd[4801]: connect from rrcs-69-75-253-234.west.bi                                                         z.rr.com[69.75.253.234]
Dec 21 05:04:07 dns postfix/smtpd[4801]: warning: rrcs-69-75-253-234.west.biz.rr                                                         .com[69.75.253.234]: SASL LOGIN authentication failed: authentication failure
Dec 21 05:04:07 dns postfix/smtpd[4801]: disconnect from rrcs-69-75-253-234.west                                                         .biz.rr.com[69.75.253.234]
Dec 21 06:18:06 dns postfix/smtpd[6817]: connect from rrcs-69-75-253-234.west.bi                                                         z.rr.com[69.75.253.234]
Dec 21 06:18:08 dns postfix/smtpd[6817]: warning: rrcs-69-75-253-234.west.biz.rr                                                         .com[69.75.253.234]: SASL LOGIN authentication failed: authentication failure
Dec 21 06:18:08 dns postfix/smtpd[6817]: disconnect from rrcs-69-75-253-234.west                                                         .biz.rr.com[69.75.253.234]

这个尝试通过 postfi/smtpd 登录的远程地址不是我,这个“攻击者”与此有关系吗?

systemctl 状态 dovecot -l

 Active: active (running) since Wed 2016-12-21 03:11:46 UTC; 3h 25min ago
  Process: 872 ExecStartPre=/usr/libexec/dovecot/prestartscript (code=exited, status=0/SUCCESS)
 Main PID: 881 (dovecot)
   CGroup: /system.slice/dovecot.service
           |- 881 /usr/sbin/dovecot -F
           |- 886 dovecot/anvil
           |- 887 dovecot/log
           |-4184 dovecot/config
           `-4185 dovecot/auth

Dec 21 04:08:08 dns dovecot[887]: imap: Error: Invalid user settings. Refer to server log for more information.
Dec 21 04:40:10 dns auth[3830]: pam_unix(dovecot:auth): check pass; user unknown
Dec 21 04:40:10 dns auth[3830]: pam_unix(dovecot:auth): authentication failure; logname= uid=0 euid=0 tty=dovecot ruser=USERNAME rhost=::1
Dec 21 04:40:13 dns dovecot[887]: imap-login: Disconnected (auth failed, 1 attempts in 3 secs): user=<FULLUSERNAME>, method=PLAIN, rip=::1, lip=:                                             :1, secured, session=<ppp6vyNEHAAAAAAAAAAAAAAAAAAAAAAB>
Dec 21 04:40:29 dns dovecot[887]: imap-login: Login: user=<FULLUSERNAME>, method=PLAIN, rip=::1, lip=::1, mpid=3833, secured, ses                                             sion=<qptWwCNEiAAAAAAAAAAAAAAAAAAAAAAB>
Dec 21 04:40:29 dns dovecot[887]: imap: Error: user USERNAME: Mail access for users with UID 503 not permitted (see first_val                                             id_uid in config file, uid from userdb lookup).
Dec 21 04:40:29 dns dovecot[887]: imap: Error: Invalid user settings. Refer to server log for more information.
Dec 21 04:53:52 dns dovecot[887]: imap-login: Login: user=<FULLUSERNAME>, method=PLAIN, rip=::1, lip=::1, mpid=4187, secured, ses                                             sion=<odB38CNEKgAAAAAAAAAAAAAAAAAAAAAB>
Dec 21 04:53:52 dns dovecot[887]: imap: Error: user FULLUSERNAME: Mail access for users with UID 503 not permitted (see first_val                                             id_uid in config file, uid from userdb lookup).
Dec 21 04:53:52 dns dovecot[887]: imap: Error: Invalid user settings. Refer to server log for more information.

需要注意的是:当我运行“ss”时,我收到很多“无法打开 netlink 套接字:不支持协议”的消息,显然是因为 Centos7 不支持 netlink 对 ss 执行的所有功能。因此,我收集的一些数据可能没有用。请告诉我您可能需要什么,我会提供。

更新: Postfix 又瘫痪了。哈哈,有新信息。

 Active: failed (Result: exit-code) since Wed 2016-12-21 08:35:18 UTC; 25s ago
  Process: 9028 ExecStop=/usr/sbin/postfix stop (code=exited, status=1/FAILURE)
  Process: 12229 ExecStart=/usr/sbin/postfix start (code=exited, status=1/FAILURE)
  Process: 12226 ExecStartPre=/usr/libexec/postfix/chroot-update (code=exited, status=0/SUCCESS)
  Process: 12222 ExecStartPre=/usr/libexec/postfix/aliasesdb (code=exited, status=0/SUCCESS)
 Main PID: 596 (code=killed, signal=TERM)

Dec 21 08:35:15 dns systemd[1]: Starting Postfix Mail Transport Agent...
Dec 21 08:35:16 dns postfix/postfix-script[12298]: starting the Postfix mail system
Dec 21 08:35:16 dns postfix/master[12300]: fatal: open lock file /var/lib/postfix/master.lock: unable to set exclusive lock: Resource temporarily unavailable
Dec 21 08:35:17 dns postfix/master[12299]: fatal: daemon initialization failure
Dec 21 08:35:18 dns postfix/postfix-script[12301]: fatal: mail system startup failed
Dec 21 08:35:18 dns systemd[1]: postfix.service: control process exited, code=exited status=1
Dec 21 08:35:18 dns systemd[1]: Failed to start Postfix Mail Transport Agent.
Dec 21 08:35:18 dns systemd[1]: Unit postfix.service entered failed state.
Dec 21 08:35:18 dns systemd[1]: postfix.service failed.

提前感谢你的帮助。问候,凯尔

答案1

据我从提供的信息所知,Postfix(或 Virtualmin 安装)没有任何问题。

您的 Postfix 被 SIGTERM 终止;它看起来不像是崩溃了,而是被告知要关闭。我猜是 OOM 终止程序将它踢出,因为系统上没有足够的内存来运行您要运行的所有程序。

您有多少内存?这个系统是否是具有所谓“突发 RAM”和数量少得多的“保证 RAM”的 VPS。在具有“突发 RAM”的系统中,这只意味着您永远无法指望您的系统是稳定的……进程将被随机终止,而您对此无能为力,因为进程和内核不知道如何处理突然消失的 RAM;但有些主机超卖内存并以这种方式宣传。而且,它可能只是一个具有超卖内存的 VPS,而没有将其标记为“突发 RAM”。

您通常可以在内核日志中找到 OOM 错误(内存不足)错误(只需运行 dmesg 即可查看最近的内核日志条目)。

如果您确实在内核日志中发现内存不足错误,则需要执行以下一项或多项操作:

  1. 添加更多内存。如果你想运行一切Virtualmin 管理(包含 AV/垃圾邮件的邮件、网络、数据库、邮件列表等)。不是因为 Virtualmin 很大...它可以小到大约 11-12MB,而是因为它管理的一些服务非常大,特别是 ClamAV。如果您需要释放内存,但需要所有主要服务,那么放弃 ClamAV 可能是最划算的选择。
  2. 减少正在运行的服务的数量和/或大小。
  3. 添加交换,可以是分区或文件。这可能是也可能不是一个合理的解决方案。如果您的系统忙于所有服务(例如,邮件、网络和数据库都在努力工作),那么交换只会将问题从“服务有时停止工作”转变为“服务都非常慢”。但是,它会阻止系统因内存问题而杀死 Postfix。

我们在这里有一个减少内存使用的指南:https://www.virtualmin.com/documentation/system/low-memory

编辑:另外,我不确定安装后配置中出现的错误该如何解决。我上次在 CentOS 上进行的测试安装没有出现此问题,但如果可以重现,请提交错误报告并附上重现步骤,以便我修复它。可能(甚至很可能)这是由导致所有其他问题的系统同一问题引起的。安装对内存的要求很高,因为需要同时安装和启动许多软件包。

相关内容