ошибка: Automatically removed objectClass from template as it is not defined in the schema

Я устанавливаю openldap с phpldapadmin на 2 разных сервера CENTOS 7 с конфигурацией следующим образом:

openldap сервер:

firewall-cmd --permanent --add-service=ldap
firewall-cmd --permanent --add-port=389/tcp
firewall-cmd --reload
yum install -y openldap openldap-clients openldap-servers
slappasswd

установите пасс и обратите внимание на хэш

в: /etc/openldap/slapd.d/cn=config/olcDatabase={2}bdb. ldif

Change:

olcSuffix: dc=mydomain,dc=com

olcRootDN: cn=user,dc=mydomain,dc=com

olcRootPW: {SSHA}therandomhashfromslappswd

in /usr/share/openldap-servers/slapd. ldif

Изменение:

Строка 134: n=auth" прочитан

dn. base="cn=user,dc=mydomain,dc=com" read by * none Line 144:

olcSuffix: dc=mydomain,dc=com Line 145: olcRootDN:

cn=user,dc=mydomain,dc=com

add:

olcRootPW: {SSHA}therandomhashfromslappswd

in /etc/openldap/ldap. conf

change:

BASE dc=mydomain,dc=com

URI ldap://hostname.domain.local

Run:

slaptest -u

config file testing succeeded

I receive checksum error as following, but i ignore it.

54a39508 ldif_read_file: checksum error on "/etc/openldap/slapd.d/cn=config/olcDatabase={1}monitor.ldif"

54a39508 ldif_read_file: ошибка контрольной суммы на "/etc/openldap/slapd.d/cn=config/olcDatabase={2}bdb.ldif"

Выполнить:

systemctl enable slapd
systemctl start slapd
systemctl restart slapd
cd /etc/openldap/
vi base.ldif

создать

base.ldif

как следует:

dn: dc=mydomain,dc=com
objectClass: dcObject
objectClass: organization
o: mydomain.com
dc: mydomain

dn: ou=users,dc=mydomain,dc=com
objectClass: organizationalUnit
objectClass: top
ou: users

dn: ou=groups,dc=mydomain,dc=com
objectClass: organizationalUnit
objectClass: top
ou: group

наконец, выполнить:

ldapadd -x -W -D "cn=root,dc=mydomain,dc=com" -f base.ldif
systemctl restart slapd

phpldapadmin Сервер:

Выполнить:

yum -y install httpd
firewall-cmd --add-service=http
firewall-cmd --permanent --add-port=80/tcp
firewall-cmd --permanent --add-port=443/tcp
firewall-cmd --reload
systemctl restart httpd.service
systemctl start httpd.service
systemctl enable httpd.service
yum -y install php php-mbstring php-pear php-ldap
systemctl restart httpd.service
wget http://dl.fedoraproject.org/pub/epel/6/x86_64/epel-release-6-8.noarch.rpm
wget http://rpms.famillecollet.com/enterprise/remi-release-6.rpm
sudo rpm -Uvh remi-release-6*.rpm epel-release-6*.rpm
yum --enablerepo=epel -y install phpldapadmin
setsebool -P httpd_can_connect_ldap on

результат:

соединение работает нормально, я могу получить доступ к сайту phpldapadmin и войти через открытый ldap сервер.

Проблема:

Я получаю много ошибок: Automatically removed ObjectClass from template - while I actually need it to create acct, etc.

I receive a lot of errors: Automatically removed ObjectClass from template

Кто-нибудь знает, что здесь не так?

Я потратил довольно много часов на выяснение :(

Пожалуйста, дайте мне знать, если кто-то может мне помочь :)

Спасибо,

AnD

0
задан 1 May 2016 в 21:03
2 ответа

Сообщение об ошибке кажется довольно ясным. inetOrgPerson не определен в схеме вашего сервера. По умолчанию его там нет, и похоже, что вы его не добавили. Схема

inetOrgPerson зависит от схемы косинуса , которая, в свою очередь, зависит от ядра ] схема.Схема ядра может присутствовать по умолчанию.

ldapadd <auth for cn=config> -f /etc/openldap/schema/core.ldif
ldapadd <auth for cn=config> -f /etc/openldap/schema/cosine.ldif
ldapadd <auth for cn=config> -f /etc/openldap/schema/inetorgperson.ldif

Возможно, вам придется немного взломать /etc/openldap/slapd.d/cn=config.ldif , чтобы получить права записи на cn = конфигурация . Некоторые дистрибутивы не имеют разумных значений по умолчанию для OpenLDAP.

1
ответ дан 4 December 2019 в 13:41

Эти ошибки не влияют на функциональность. Вы можете скрыть эти шаблонные сообщения об ошибках, не комментируя эту строку в файле /etc/phpldapadmin/config.php:

$config->custom->appearance['hide_template_warning'] = true;
1
ответ дан 4 December 2019 в 13:41

Теги

Похожие вопросы