这回是被 Yast 的邮件服务器坑了

Yast的邮件服务器有两个模式,标准模式和高级模式。

标准模式貌似就是配置Postfix发信的域名之类的,
没什么大用,而且也没有安装配置POP3和IMAP服务器,
更没有WebMail。这个虽然用处不大,但顶多配置错了postfix起不来,
没什么大碍。

第二个高级模式就太坑了。
首先它会要求安装所需的包:pam_ldap、nss_ldap、cyrus-sasl-saslauthd。
然后建议创建证书、设置一个本地LDAP服务器、配置专用LDAP服务器。

接着要求安装:yast2-ldap-server、openldap2、yast2-ca-management。
然后是配置CA证书,
再配置LDAP服务器,
一步又一步,设置到最后看起来要要完成的时候,
出现错误,LDAP服务器起不来,挂掉了。

搞失败了正常,但是系统重启后发现悲剧了。

系统进不去,而且安全模式也进不去。

最后无语了,系统按正常模式启动,在卡住的位置,
按了Ctrl+Alt+F1,
字符界面挂机挂了十几分钟,
居然看到了Emergency mode,
要求输入root密码登录。

捣腾了好久,最后看到 /var/log/message文件里:
2013-04-13T21:14:00.596307+08:00 iloveliuqing dbus-daemon: nss_ldap: failed to bind to LDAP server ldap://localhost: Can’t contact LDAP server
2013-04-13T21:14:00.597423+08:00 iloveliuqing dbus-daemon: nss_ldap: reconnecting to LDAP server (sleeping 16 seconds)…
2013-04-13T21:14:02.371664+08:00 iloveliuqing kdm_config[667]: nss_ldap: failed to bind to LDAP server ldap://localhost: Can’t contact LDAP server
2013-04-13T21:14:02.373105+08:00 iloveliuqing kdm_config[667]: nss_ldap: reconnecting to LDAP server (sleeping 16 seconds)…
2013-04-13T21:14:07.992275+08:00 iloveliuqing systemd[1]: Failed to register to bus: Did not receive a reply. Possible causes include: the remote application did not send a reply, the message bus security policy blocked the reply, the reply timeout expired, or the network connection was broken.
2013-04-13T21:14:10.888368+08:00 iloveliuqing avahi-daemon[573]: nss_ldap: failed to bind to LDAP server ldap://localhost: Can’t contact LDAP server
2013-04-13T21:14:10.889071+08:00 iloveliuqing avahi-daemon[573]: nss_ldap: reconnecting to LDAP server (sleeping 32 seconds)…
2013-04-13T21:14:11.583824+08:00 iloveliuqing nscd: nss_ldap: failed to bind to LDAP server ldap://localhost: Can’t contact LDAP server
2013-04-13T21:14:11.584262+08:00 iloveliuqing nscd: nss_ldap: reconnecting to LDAP server (sleeping 32 seconds)…

上面这一大段重复了N遍,
原来卡死在这了,
nss_ldap一直连不上LDAP服务器,然后一直重连再重连,
桌面就进不去。

最后过了十几分钟,系统被迫进入了紧急模式(Emergency mode),
才等到能用root登陆。
而且这时候安全模式也是挂掉的。相当坑。
最后是怒了,把
pam_ldap、nss_ldap、cyrus-sasl-saslauthd,
yast2-ldap-server、openldap2、yast2-ca-management
这几个包全用yast删除干净,重启然后就好了。

哎,Yast其他的模块都挺好使,
就是邮件服务器模块比较坑,
弄不好系统都进不去,
以后折腾邮件服务器的还是不要用Yast邮件服务器模块的好。

有没有办法把 LDAP 起来?(不知道它是何物)

哈哈,终于有人步我的后尘了。想当初我也是这么实诚地去折腾 Yast Mail Server 来来回回折腾了三次才整明的 suse 的配置模式。现在 MailServer 正常工作中。。

U may refer to this article…
novell.com/coolsolutions/feature/16264.html

谢谢,openSUSE 网站里找不到,原来要去 SLES 网站才有。

弱弱的问下,你的邮件服务器连接的客户都是 ldap 认证的?要不是用 ldap 的为何要开启这个服务?莫非你本地配置了 ldap?

我神马都不会,装个耍耍而已。

LDAP 这个东东 是这家公司好多人啊。要分不同部门,不同的组,然后 mysql 明显不做不到那样子的分类。所以 LDAP 就用上了,还有就是 LDAP 可以和微软的 AD 互通的,大公司用的 windows 服务器可以用 AD 扩展,互相通信。

作为个人或者提供多域名邮箱之类的服务压根用不着。mysql 就足够了。

配置 Postfix+mysql+extmail+extman+courier+maildrop 时,要注意到 /etc/sysconfig/postfix 这个配置、不要和 /etc/postfix/main.cf 文件相冲突,如果冲突的话会以 /etc/sysconfig/postfix 为准。那么不管你怎么改 main.cf 你的问题依旧。其它的配置流程和其它的教程是一样的。

不过 sles 不自带 maildrop 也不自带 courier 需要加一个 obs 的 mail 源,才可以。

祝成功。

如果搭建 email 服务器(SMTP+POP3,不包含 webmail 支持), 我推荐以下组合: Postfix + Dovecot,其中 Postfix 发邮件,Dovecot 用来 POP3 和 IMAP。在 Kubuntu 环境可以轻松搞定(我不是来踢馆的啊,以前一直用 kubuntu),今天才在 vbox 中装 openSUSE,不好给出 openSUSE 中的具体步骤。