我正在尝试在端口400上启动第二个slapd实例,并且/var/log/syslog从标题报告错误。
到目前为止,我采取的步骤是:
/etc/default/slapd到/etc/default/slapd2,看起来像这样:http://pastebin.com/QKA436v8
http://pastebin.com/sqVzZ1jA
这是/var/log/syslog的输出:
Jun 6 12:39:39 luka-VB-Ubuntu slapd2[3138]: @(#) $OpenLDAP: slapd (Ubuntu) (Sep 15 2015 18:19:13) $#012#011buildd@lgw01-53:/build/openldap-2QUgtL/openldap-2.4.31/debian/build/servers/slapd
Jun 6 12:39:39 luka-VB-Ubuntu slapd2[3138]: ldif_read_file: Permission denied for "/etc/ldap2/slapd.d/cn=config.ldif"
Jun 6 12:39:39 luka-VB-Ubuntu slapd2[3138]: slapd stopped.
Jun 6 12:39:39 luka-VB-Ubuntu slapd2[3138]: connections_destroy: nothing to destroy.
Jun 6 12:39:39 luka-VB-Ubuntu kernel: [11912.288340] audit: type=1400 audit(1465209579.742:68): apparmor="DENIED" operation="open" profile="/usr/sbin/slapd" name="/etc/ldap2/slapd.d/cn=config.ldif" pid=3138 comm="slapd2" requested_mask="r" denied_mask="r" fsuid=117 ouid=117
编辑:
这些是该文件及其所在目录(/etc/ldap2/slapd.d/)的许可权:
drwxr-xr-x 3 openldap openldap 4096 Jun 6 15:16 ./
drwxr-xr-x 5 root root 4096 Jun 1 14:23 ../
drwxr-x--- 3 openldap openldap 4096 Jun 1 14:23 cn=config/
-rw------- 1 openldap openldap 480 Jun 6 15:16 cn=config.ldif
这些是用于cn = config/目录的:
drwxr-x--- 3 openldap openldap 4096 Jun 1 14:23 .
drwxr-xr-x 3 openldap openldap 4096 Jun 6 15:16 ..
-rw-rw-rw- 1 openldap openldap 436 Jun 1 14:23 cn=module{0}.ldif
drw-rw-rw- 2 openldap openldap 4096 Jun 1 14:23 cn=schema
-rw-rw-rw- 1 openldap openldap 378 Jun 1 14:23 cn=schema.ldif
-rw-rw-rw- 1 openldap openldap 396 Jun 1 14:23 olcBackend={0}hdb.ldif
-rw-rw-rw- 1 openldap openldap 513 Jun 1 14:23 olcDatabase={0}config.ldif
-rw-rw-rw- 1 openldap openldap 657 Jun 1 14:23 olcDatabase={-1}frontend.ldif
-rw-rw-rw- 1 openldap openldap 1131 Jun 1 14:23 olcDatabase={1}hdb.ldif
等效的默认文件的权限如下(/etc/ldap/slapd.d/):
drwxr-xr-x 3 openldap openldap 4096 Mar 18 13:51 ./
drwxr-xr-x 5 root root 4096 May 31 16:49 ../
drwxr-x--- 3 openldap openldap 4096 Mar 18 14:06 cn=config/
-rw------- 1 openldap openldap 478 Mar 18 13:51 cn=config.ldif
对于cn = config/:
drwxr-x--- 3 openldap openldap 4096 Mar 18 14:06 .
drwxr-xr-x 3 openldap openldap 4096 Mar 18 13:51 ..
-rw------- 1 openldap openldap 436 Mar 18 13:51 cn=module{0}.ldif
drwxr-x--- 2 openldap openldap 4096 Mar 18 13:51 cn=schema
-rw------- 1 openldap openldap 378 Mar 18 13:51 cn=schema.ldif
-rw------- 1 openldap openldap 396 Mar 18 13:51 olcBackend={0}hdb.ldif
-rw------- 1 openldap openldap 513 Mar 18 13:51 olcDatabase={0}config.ldif
-rw------- 1 openldap openldap 657 Mar 18 13:51 olcDatabase={-1}frontend.ldif
-rw------- 1 openldap openldap 1131 Mar 18 14:06 olcDatabase={1}hdb.ldif
最佳答案
我刚在Ubuntu 1604上遇到了同样的问题。查看日志,结果发现这是一个限制条件。
slapd[10245]: ldif_read_file: Permission denied for "/home/vagrant/ldap/slapd.d/cn=config.ldif"
kernel: [77635.949937] audit: type=1400 audit(1489959083.939:65): apparmor="DENIED" operation="open" profile="/usr/sbin/slapd" name="/home/vagrant/ldap/slapd.d/cn=config.ldif" pid=10245 comm="slapd" requested_mask="r" denied_mask="r" fsuid=0 ouid=113
如果您遇到相同的错误,则需要编辑
/etc/apparmor.d/usr.sbin.slapd
以包括路径,或者仅使用以下命令禁用配置文件:ln -s /etc/apparmor.d/usr.sbin.slapd /etc/apparmor.d/disable/
service apparmor reload
如果您安装了
aa-disable slapd
,则apparmor-utils
会执行相同的操作。如果您仍然想看到警告,请使用aa-complain slapd
。关于linux -/etc/ldap2/slapd.d/cn=config.ldif的权限被拒绝,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/37655509/