dポイントプレゼントキャンペーン実施中!

OpenLDAPの設定をしているのですが、ldapaddコマンドで実行したら下記のエラーが表示されて、うまくいきません。色々、Googleで調べてやったのですが解決できなかったので、教えて頂けたら幸いです。
エラー解決で参考にしたURLhttp://arinux.jugem.jp/?eid=42

/usr/local/bin/ldapadd -f userlist.ldif -x -D "cn=Manager,dc=solaristest,dc=com
" -W -h localhost
Enter LDAP Password:
adding new entry "cn=test,ou=People,dc=solaristest,dc=com"
ldap_add: Invalid syntax (21)
additional info: objectclass: value #1 invalid per syntax

slapd.conf
include /usr/local/etc/openldap/schema/core.schema
include /usr/local/etc/openldap/schema/cosine.schema
include /usr/local/etc/openldap/schema/inetorgperson.schema

pidfile /usr/local/var/run/slapd.pid
argsfile /usr/local/var/run/slapd.args

# Load dynamic backend modules:
modulepath /usr/local/libexec/openldap
moduleload back_bdb.la

database bdb
suffix "dc=solaristest,dc=com"
rootdn "cn=Manager,dc=solaristest,dc=com"
rootpw {SSHA}XXXXXXXXXXXXXXXXXXXXX
directory /usr/local/var/openldap-data
index objectClass eq

基本データベース新規作成
base.ldif
dn: dc=solaristest,dc=com
objectClass: dcObject
objectclass: organization
dc: solaristest
o: solaristest Corporation

dn: cn=Manager, dc=solaristest,dc=com
objectClass: organizationalRole
cn:Manager

dn: ou=People,dc=solaristest,dc=com
objectClass: organizationalUnit
ou: People

dn: ou=Group,dc=solaristest,dc=com
objectClass: organizationalUnit
ou: Group

/usr/local/bin/ldapadd -f base.ldif -x -D "cn=Manager,dc=solaristest,dc=com" -W -h localhost
こちらは、エラーなく通っています。

既存ユーザ情報をLDAPサーバーへ登録 MigrationTools使用
migrate_common.phパラーメータの変更
$DEFAULT_MAIL_DOMAIN = "solaristest.com";
$DEFAULT_BASE = "dc=solaristest,dc=com"
一般ユーザ情報抽出
./migrate_passwd.pl userlist > userlist.ldif

userlist.ldif
dn: cn=test,ou=People,dc=solaristest,dc=com
uid: test
cn: test
objectclass: inetOrgPerson
objectclass: posixAccount
objectClass: top
objectClass: shadowAccount
userPassword:XXXXXXXXXXXXX
shadowLastChange: 14575
loginShell: /bin/sh
uidNumber: 100
gidNumber: 1
homeDirectory: /export/home/test
以上、よろしくお願いします。

A 回答 (3件)

No.1 です。

先の回答は無視してください。
slapd.conf の内容をよく見ていませんでした。

> slapd.conf
> include /usr/local/etc/openldap/schema/core.schema
> include /usr/local/etc/openldap/schema/cosine.schema
> include /usr/local/etc/openldap/schema/inetorgperson.schema

nis.schema を組み込んでいないからだと思います。

> objectclass: posixAccount

posixAccount は nis.schema で定義されているので、posixAccount を使用するためにはこれを組み込む必要があります。

・参考 URL
http://www.syns.net/15/index.html

この回答への補足

xinuさん、

ご回答ありがとうございます。
slapd.confに include /usr/local/etc/openldap/schema/nis.schemaを追加し、ldapaddコマンドを実行したらエラー無く通りましたが、登録ができたか確認する為ldapserchコマンドを実行したところ下記のエラーが出ました。
/usr/local/bin/ldapsearch -x -b 'dc=slaristest,dc=com''(objectclass=*)'
# extended LDIF
#
# LDAPv3
# base <dc=slaristest,dc=com> with scope subtree
# filter: (objectclass=*)
# requesting: ALL
#

# search result
search: 2
result: 32 No such object

# numResponses: 1

ちゃんと登録できているのに、オブジェクトがないってことですか?

補足日時:2009/12/13 20:01
    • good
    • 0

> 登録ができたか確認する為ldapserchコマンドを実行したところ下記のエラーが出ました。


> /usr/local/bin/ldapsearch -x -b 'dc=slaristest,dc=com''(objectclass=*)'

typo しているだけでは?
dc=solaristest ではないかと...
    • good
    • 0
この回答へのお礼

xinuさん、

申し訳わけありません。お恥ずかしいです。
ldapserchにて、確認が取れます。
ありがとうございます。

お礼日時:2009/12/13 22:05

何を参考にして設定されていますか?



また、以下の ldapsearch コマンドの実行結果はどうなりますか?

ldapsearch -x -b "dc=solaristest,dc=com" "objectclass=*"
    • good
    • 0

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!