Last modified 4 years ago
OpenLDAP
インストール
# apt-get install slapd ldap-utils
設定
#dpkg-reconfigure slapd Omit OpenLDAP server configuration? ... No DNS domain name: ... dom1.dom2 Name of your organization: ... Whatever & Co Admin Password: XXXXX Confirm Password: XXXXX OK BDB Do you want your database to be removed when slapd is purged? ... No Move old database? ... Yes Allow LDAPv2 Protocol? ... No
Adminの設定
上記のdpkg-reconfigureで設定したadminはなぜか使えない。 /etc/ldap/slapd.confに次のように記述し、adminのアカウントを設定
rootdn "cn=Manager,dc=nodomain" rootpw {CRYPT}$2naUPy3R0iOg
rootpwの値は次のコマンドで生成できる。
$ slappasswd -h {CRYPT} -c '$2a$05$%.24s' New password: xxxx Re-enter new password: xxxx {CRYPT}$2*****
生成された文字列をslapd.confに設定する。
ルートオブジェクトの生成 =
slapd.confにルートオブジェクトを設定する。
suffix "o=myorg"
次に、オブジェクトを作成する。上記の例の場合root.ldifに次のように記述
dn: o=myorg objectClass: organization o: myorg
ldapaddコマンドでオブジェクトを追加する。
$ ldapadd -h localhost -x -D 'cn=Manager,o=myorg' -W -f root.ldif
検索
$ ldapsearch -L -x -b dc=dom1,dc=dom2
Apacheと連携
Apache2.0とApache2.2では記述方法が異なる。Apache2.2の例を示す。
DAV svn SVNPath /home/svn/test AuthType Basic AuthBasicProvider ldap #LDAPを利用する場合記述 AuthName "SVN Authentication" AuthLDAPURL "ldap://localhost/dc=nodomain?uid?sub?(objectClass=*)" AuthzLDAPAuthoritative off # require valid-userを指定する際に必要 Require valid-user
アカウント認証によるSearch
$ ldapsearch -x -LLL -h 12.123.12.11 -D 'cn=Administrator,cn=users,dc=example,dc=com' -w password -b 'dc=example,dc=com' -s sub '(objectClass=*)'
メモ
- Active DirectoryのSchema