OpenLDAPをUbuntu22.04 LTS Serverにインストールして、Ubuntu22.04LTS ServerのLinuxの認証にLDAPにて実施する構成を紹介します。
本ページはOpenLDAPがインストールが完了している状態から進めます。また dc=test,dc=server-network-note,dc=net に testuser 名のユーザおよびグループ を追加する手順となっています。
OpenLDAP 記事一覧
Ubuntu 22.04 LTS Server にて OpenLDAP Serverインストール記事
- OpenLDAP Server インストールおよび設定
- ユーザアカウント追加 および 削除 ( このページ )
- OpenLDAP Client インストールおよび設定
インストール環境
- Ubuntu 22.04.1 LTS Server
- OpenLDAP server 2.5.12
- dc=test,dc=server-network-note,dc=net
- ユーザ名 testuser
- グループ名 testuser
ユーザと組織 のobjectClassを登録
データを登録するのにLDIFファイル ( PeopeGroups_add.ldif ) を作成します。 (下記例の dc=test,dc=server-network-note,dc=net )
1 2 3 4 5 6 7 8 9 |
sudo vi PeopeGroups_add.ldif dn: ou=People,dc=test,dc=server-network-note,dc=net objectClass: organizationalUnit ou: People dn: ou=Groups,dc=test,dc=server-network-note,dc=net objectClass: organizationalUnit ou: Groups |
LDIFファイル ( PeopeGroups_add.ldif ) を登録します。LDAP Passwordは インストール後に環境設定時入力したパスワードを入力します。
1 2 3 4 5 6 7 |
sudo ldapadd -x -D cn=admin,dc=test,dc=server-network-note,dc=net -W -f PeopeGroups_add.ldif Enter LDAP Password: adding new entry "ou=People,dc=test,dc=server-network-note,dc=net" adding new entry "ou=Groups,dc=test,dc=server-network-note,dc=net" test@ub2204-ldap-server01:~$ |
ユーザとグループのアカウントを登録
ユーザのパスワードを slappasswd コマンドで生成します。 コマンド入力後、パスワードを2回入力後、登録用のハッシュが生成されます。(下記の例では testuser と入力した結果になります。後程利用します。)
1 2 3 4 5 |
slappasswd New password: Re-enter new password: {SSHA}0f0jdGbSJZvLjWqFK8t3OQ7WZVCbr2jQ test@ub2204-ldap-server01:~$ |
登録要のLDIFファイル( ldap-useradd.ldif ) を作成します。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 |
vi ldap-useradd.ldif dn: cn=testuser,ou=groups,dc=test,dc=server-network-note,dc=net objectClass: posixGroup cn: testuser gidNumber: 5000 memberUid: testuser dn: uid=testuser,ou=people,dc=test,dc=server-network-note,dc=net objectClass: inetOrgPerson objectClass: posixAccount objectClass: shadowAccount uid: testuser cn: testuser sn: testuser gn: testuser displayName: testuser userPassword: {SSHA}0f0jdGbSJZvLjWqFK8t3OQ7WZVCbr2jQ loginShell: /bin/bash uidNumber: 5000 gidNumber: 5000 homeDirectory: /home/testuser |
上記のLDIFの設定を参考に、下記に属性名を参考にしながら登録するグループおよびユーザのファイルを作成します。userPassword に格納する値は slappasswd で生成したハッシュを記載します。
LDAP | 属性名 |
---|---|
uid | ユーザID ( UserID) |
cn | 氏名 ( Common-Name) |
cn | 性 (Surname) |
gn | 名 (givenname) |
displayName | 表示名 |
userPassword | ユーザーのパスワード ※slappasswdで生成したハッシュを格納 |
loginShell | ログインシェル ( ログイン時に利用するシェルを記載 ) |
uidNumber | ユーザーID (uidNumber) |
gidNumber | グループID (gidNumber) |
homeDirectory | ユーザーのホームディレクトリ |
memberUid | グループに所属する uid を記載 |
ldpadd を使って LDIF ファイールをデータベースに登録します。 (例: test.server-network-note.net )
パスワードはインストール時に環境構築時に設定した管理者パスワードを入力をします。登録が成功すると、 adding new entry .. が表示されます。
1 2 3 4 5 6 7 |
ldapadd -x -D cn=admin,dc=test,dc=server-network-note,dc=net -W -f ldap-useradd.ldif Enter LDAP Password: adding new entry "cn=testuser,ou=groups,dc=test,dc=server-network-note,dc=net" adding new entry "uid=testuser,ou=people,dc=test,dc=server-network-note,dc=net" test@ub2204-ldap-server01:~$ |
登録されたデータの確認
OpenLDAPのデータベースを確認に ldapsearch で確認できます。 下記例は uid = testuser の uidNumber , gidNumber , loginShell の情報を表示されています。
1 2 3 4 5 6 7 8 |
ldapsearch -x -LLL -b dc=test,dc=server-network-note,dc=net '(uid=testuser)' cn uidNumber gidNumber loginShell dn: uid=testuser,ou=People,dc=test,dc=server-network-note,dc=net cn: testuser loginShell: /bin/bash uidNumber: 5000 gidNumber: 5000 test@ub2204-ldap-server01:~$ |
ユーザとグループの削除
ユーザの削除
削除には ldapdelete コマンドを使って削除します。下記は 作成した testuser のユーザを削除した例になります。
パスワードはOpenLDAPを構成を設定した管理者パスワードを入力します。
1 2 3 |
ldapdelete -x -W -D "cn=admin,dc=test,dc=server-network-note,dc=net" 'uid=testuser,ou=people,dc=test,dc=server-network-note,dc=net' Enter LDAP Password: test@ub2204-ldap-server01:~$ |
グループの削除
削除には ldapdelete コマンドを使って削除します。下記は 作成した testuser のグループを削除した例になります。
パスワードはOpenLDAPを構成を設定した管理者パスワードを入力します。
1 2 3 |
ldapdelete -x -W -D "cn=admin,dc=test,dc=server-network-note,dc=net" 'cn=testuser,ou=groups,dc=test,dc=server-network-note,dc=net' Enter LDAP Password: test@ub2204-ldap-server01:~$ |
参考サイト
Ubuntu 22.04 LTS Server 記事一覧
Ubuntu 22.04 LTS Server インストール
Ubuntu 22.04 LTS Server 環境変更
- Ubuntu 22.04 LTS Server タイムゾーン日本時間(JST)への変更手順
- Ubuntu 22.04 LTS Server システムのロケール 日本語(UTF-8)への変更手順
- Ubuntu 22.04 LTS Server ネットワークの設定 ( IPv4アドレス、DNS(resolve) 、デフォルトゲートウェイ、static route )
- Ubuntu 22.04 LTS Server ファイアウォール(ufw)の起動および設定手順