我的任务是将一个邮件服务器从一个盒子迁移到另一个盒子,到目前为止我已经配置Postfix
并且它正在工作。但是,Courierpop3d
服务器无一例外地失败了。
所以,我有 Courier服务器,它需要再次对数据库pop3d
进行用户身份验证。MySQL
/var/log/maillog
Oct 20 03:40:09 vps-1161420-22112 pop3d: Connection, ip=[::ffff:127.0.0.1]
Oct 20 03:40:15 vps-1161420-22112 pop3d: LOGIN: ip=[::ffff:127.0.0.1], command=USER
Oct 20 03:40:21 vps-1161420-22112 pop3d: LOGIN: ip=[::ffff:127.0.0.1], command=PASS
Oct 20 03:40:21 vps-1161420-22112 pop3d: LOGIN: ip=[::ffff:127.0.0.1], [email protected]
Oct 20 03:40:21 vps-1161420-22112 pop3d: LOGIN: ip=[::ffff:127.0.0.1], password=some-foo
Oct 20 03:40:21 vps-1161420-22112 authdaemond: received auth request, service=pop3, authtype=login
Oct 20 03:40:21 vps-1161420-22112 authdaemond: authmysql: trying this module
Oct 20 03:40:21 vps-1161420-22112 authdaemond: stopping authdaemond children
Oct 20 03:40:21 vps-1161420-22112 authdaemond: restarting authdaemond children
Oct 20 03:40:21 vps-1161420-22112 authdaemond: modules="authmysql", daemons=5
Oct 20 03:40:21 vps-1161420-22112 authdaemond: Uninstalling authmysql
Oct 20 03:40:21 vps-1161420-22112 authdaemond: Installing libauthmysql
Oct 20 03:40:21 vps-1161420-22112 authdaemond: Installation complete: authmysql
Oct 20 03:40:22 vps-1161420-22112 pop3d: LOGIN FAILED, [email protected], ip=[::ffff:127.0.0.1]
Oct 20 03:40:22 vps-1161420-22112 pop3d: authentication error: Input/output error
最后两行并没有说明 IO 错误实际上是什么。
我已经在文件中配置了 mysql 连接/etc/authlib/authmysqlrc
::
MYSQL_SERVER localhost
MYSQL_USERNAME postfix
MYSQL_PASSWORD some-password
....
other mysql settings
我已经验证我可以MySQL
使用那里的凭据连接到自己。
那么,有什么方法可以增加 or 的详细程度pop3d
吗authmysql
?我已经设置DEBUG_LOGIN=2
在authdaemonrc
文件中。
非常感谢!
我能够自己解决这个问题。
关键问题是我
courier-authlib
在我的开发箱上构建了二进制文件,但我的生产箱有mysql-5.5.*
,我的开发箱有mysql-5.6.*
.显然,lib文件之间的差异导致
authmysql
调用时崩溃......希望这对某人有帮助...