SOFTELメモ Developer's blog

会社概要 ブログ 調査依頼 採用情報 ...
技術者募集中

ldap

インストール

LDAPサーバーには openldap-servers(とopenldap-clients)
LDAPクライアント側には openldap-clients があればよい。

yum install openldap-servers
yum install openldap-clients

自動起動

インストール直後は自動起動しない。自動起動してよければそのように。

[root@dev224 ~]# chkconfig --list ldap
ldap            0:off   1:off   2:off   3:off   4:off   5:off   6:off
[root@dev224 ~]# chkconfig ldap on
[root@dev224 ~]# chkconfig --list ldap
ldap            0:off   1:off   2:on    3:on    4:on    5:on    6:off

設定

必要に応じて設定ファイル編集。

/etc/openldap/slapd.conf (サーバーの設定)
/etc/openldap/ldap.conf (クライアントの設定)

使い方

LDAPは要するにデータベース。

データベースを作る。デフォルトのサンプル的DBが /var/lib/ldap にあったので、とりあえずほぼまねして作る。

#######################################################################
# softel db
#######################################################################

database        bdb
suffix          "dc=softel,dc=jp"
rootdn          "cn=Manager,dc=softel,dc=jp"
rootpw          secret
directory       /var/lib/ldap2

# Indices to maintain for this database
index objectClass                       eq,pres
index ou,cn,mail,surname,givenname      eq,pres,sub
index uidNumber,gidNumber,loginShell    eq,pres
index uid,memberUid                     eq,pres,sub
index nisMapName,nisMapEntry            eq,pres,sub

エントリを作る。ldifファイルとldapaddコマンドでエントリを作れる。

# vi softel.ldif
dn: dc=softel,dc=jp
objectClass: dcObject
objectClass: organization
dc: softel
o: softel

dn: cn=Manager,dc=softel,dc=jp
objectclass: organizationalRole
cn: Manager

dn: ou=People,dc=softel,dc=jp
objectClass: organizationalUnit
ou: People

dn: ou=Group,dc=softel,dc=jp
objectClass: organizationalUnit
ou: Group
# ldapadd -x -D cn=Manager,dc=softel,dc=jp -w secret -f softel.ldif

どこかのクライアントから検索してみる

# ldapsearch -x -h 192.168.0.224 -b dc=softel,dc=jp -LLL
dn: dc=softel,dc=jp
objectClass: dcObject
objectClass: organization
dc: softel
o: softel

dn: cn=Manager,dc=softel,dc=jp
objectClass: organizationalRole
cn: Manager

dn: ou=People,dc=softel,dc=jp
objectClass: organizationalUnit
ou: People

dn: ou=Group,dc=softel,dc=jp
objectClass: organizationalUnit
ou: Group

上のデータ追加で、ファイルシステムでいうディレクトリができた感じ。
会社、組織のエントリができたところで、人を登録する。

こんなのを登録していけばよい。用途によって、使いたいobjectClassや必須項目は変わる。

dn: uid=yoshimura03,ou=People,dc=softel,dc=jp
objectClass: inetOrgPerson
uid: yoshimura03
cn: san
sn: yoshimura
userPassword: {SSHA}yq0Gvo1iDRoxMyVIVDhclfVp1U6zWwMA

関連するメモ

コメント