Smtp exim如何在日志文件上显示密码

Smtp exim如何在日志文件上显示密码,smtp,centos,exim,dovecot,Smtp,Centos,Exim,Dovecot,我想调试所有身份验证会话 例如,在/var/log/exim/mainlog上显示这样的身份验证错误 (xx)[x.x.x.x]:535的登录验证器失败不正确 身份验证数据(set_id=xxx) (xx)[x.x.x.x]:535的登录验证器失败不正确 身份验证数据(set_id=xxx) (xx)[x.x.x.x]:535的登录验证器失败不正确 身份验证数据(set_id=xxx) 但是我也想这样显示密码 (xx)[x.x.x.x]:535的登录验证器失败不正确 身份验证数据(set_id=

我想调试所有身份验证会话

例如,在/var/log/exim/mainlog上显示这样的身份验证错误

(xx)[x.x.x.x]:535的登录验证器失败不正确 身份验证数据(set_id=xxx)

(xx)[x.x.x.x]:535的登录验证器失败不正确 身份验证数据(set_id=xxx)

(xx)[x.x.x.x]:535的登录验证器失败不正确 身份验证数据(set_id=xxx)

但是我也想这样显示密码

(xx)[x.x.x.x]:535的登录验证器失败不正确 身份验证数据(set_id=xxx,set_pwd=yyy)登录身份验证程序 (xx)[x.x.x.x]:535身份验证数据不正确失败 (set_id=xxx,set_pwd=yyy)登录身份验证程序(xx)失败 [x.x.x.x]:535不正确的身份验证数据(set\u id=xxx,set\u pwd=yyy

我更改了dovecot配置并添加

auth_verbose = yes
auth_debug = yes
auth_debug_passwords = yes
但是/var/log/exim/mainlog仍然不显示密码,/var/log/mainlog不提供任何有关smtp的信息


那么,如何用清除的文本密码捕获身份验证错误。

我刚刚找到了一个解决方案

我更改了dovecot.conf passdb选项,如

passdb {
  driver = checkpassword
  args = /etc/dovecot/chk.sh
}
并在bash.log文件上为write args编写bash脚本


Exim的配置选项应在
Exim.conf
中编辑,因为dovecot.conf只影响dovecot的工作方式。它们是两个独立的程序

据我所知,没有办法直接将Exim配置为在日志文件中以明文形式记录密码。您可以做的是添加如下所示的行

server_debug_print = "running smtp auth $1 $2"

exim.conf
中的正确验证器下(或所有验证器),然后运行
exim-d
,启用调试模式(但也使exim在前台运行,所有调试输出都转到标准输出)

这肯定行不通吗?dovecot传递给checkpassword脚本的$1是“reply”程序的名称;用户名和密码通过文件描述符传入。。。
server_debug_print = "running smtp auth $1 $2"