如何让 Centos 6 上的 openldap 将任何内容写入其日志文件

如何让 Centos 6 上的 openldap 将任何内容写入其日志文件

我在 Centos 6 服务器上的 openldap 日志文件中没有收到任何信息。这是我的配置方式。SELinux 目前已禁用。

首先创建一个文件夹,用于存储日志文件。

mkdir /var/log/slapd
chmod 755 /var/log/slapd/
chown ldap:ldap /var/log/slapd/

然后进行配置。

ldapsearch -D "cn=admin,cn=config" -w secret -b cn=config cn=config
dn: cn=config
changetype:modify
replace: olcLogFile
olcLogFile: /var/log/slapd/slapd.log
-
replace: olcLogLevel
olcLogLevel: conns filter config acl stats shell
EOF

为了安全起见,我重新启动了服务

service openldap restart

它确实创建了文件,但没有向文件中写入任何内容。当然,我对 LDAP 服务器进行了一些搜索和更新,因此它会获取连接和记录内容。

$ ls -alh
total 12K
drwxr-xr-x. 2 ldap ldap 4.0K Oct 25 14:27 .
drwxr-xr-x. 6 root root 4.0K Oct 25 14:10 ..    
-rw-r--r--. 1 ldap ldap    0 Oct 25 14:33 slapd.log

我的 LDAP 设置可以在这里找到(现在在我自己的服务器上稍作修改)

如何在 Centos 6 上配置 LDAP 以最安全和正确的方式进行用户身份验证?

答案1

我还没有尝试过olcLogFile,但默认情况下,OpenLDAP 会将所有信息记录到 rsysloglocal4设施中。

将以下行添加到/etc/rsyslog.conf或 /etc/rsyslog.d/ldap.conf:

local4.*                        /var/log/ldap.log

重新启动rsyslog服务并检查此日志。

答案2

olcLogFile仅在 Windows 上使用,因为它缺少系统日志。

登录系统的方式与@quanta 回答的方式相同。

答案3

由于olcLogFile这个答案是不正确的,我必须纠正这一点。

引用相关部分slapd-config(5)

olcLogFile: <filename>
            Specify a file for recording debug log messages. By default
            these messages only go to stderr and are not recorded any‐
            where else. Specifying a logfile copies messages to both
            stderr and the logfile.

相关内容