ldapadd / ldapmodify の使い方
LDAP に項目を足す・変える
書き方
ldapadd -x -D 管理者DN -W -f ファイル.ldif ldapmodify -x -D 管理者DN -W -f ファイル.ldif
LDIF(dn: から始まり、属性: 値 を並べたもの)で項目を足します。変更は changetype: modify と add:・replace:・delete:。管理者で入らないと Strong(er) authentication required になります。
よく使うオプション
| オプション | 意味 |
|---|---|
-x | パスワードで入る単純な認証を使う |
-D 名前 | 書き込める名前(管理者)で入る |
-W | パスワードを聞かれて打つ |
-f ファイル | LDIF を読む(付けないと標準入力から) |
-c | 途中で誤りがあっても続ける |
例
$ cat dave.ldifdn: uid=dave,ou=people,dc=example,dc=lan
objectClass: inetOrgPerson
objectClass: posixAccount
uid: dave
cn: Dave
sn: Dave
uidNumber: 10004
gidNumber: 10004
homeDirectory: /home/dave足す項目は LDIF で書きます。dn: の行から始まり、属性: 値 を並べます。
$ ldapadd -x -D cn=admin,dc=example,dc=lan -W -f dave.ldifEnter LDAP Password:
adding new entry "uid=dave,ou=people,dc=example,dc=lan"管理者で入り、LDIF の項目を足します。
$ ldapmodify -x -D cn=admin,dc=example,dc=lan -W -f shell.ldif
今ある項目を変えます。LDIF には changetype: modify と replace: loginShell のように書きます。
よくある間違い・注意
- -D を付けずに書くと、Strong(er) authentication required で断られます。
- LDIF の行の終わりに空白が残ると、値に空白が入ってしまいます。
- 足したあと getent で古いままなら、sss_cache -E で sssd の覚えた値を捨てます。
実際に打って練習する
Linux レベル2 コースの Lv92「名簿に書く ldapadd」で覚えます(第7章 伝令と名簿(DHCP・メール・認証))。ブラウザの中のシミュレーターで、本物と同じように打って確かめられます。
すべてのレベルが、ゴールド以上のプランで遊べます。