手当たり次第に書くんだ

飽きっぽいのは本能

CentOS 7 LDAP クライアント設定 – authconfig と nslcd の LDAPS 接続

CentOS 7 は既にサポートが終了しています。このページは新規構築を推奨するものではなく、過去環境の保守、移行前調査、設定の読み解きに使うためのレガシー Linux 手順です。新規構築では、現在サポートされている Linux ディストリビューションを利用してください。

CentOS 7 サーバー管理ガイドへ戻る

CentOS 7 を LDAP クライアントとして構成し、authconfignslcd を使って LDAPS 接続する手順です。古い CentOS 7 環境では、SSSD ではなく nslcd ベースの LDAP 認証が残っていることがあります。

LDAP クライアント設定では、認証できるかだけでなく、名前解決、証明書検証、UID/GID の扱い、sudo や SSH との関係を分けて確認します。特に LDAPS では、サーバー証明書を信頼できる状態にすることが前提です。

必要パッケージをインストールする

yum install nss-pam-ldapd openldap-clients authconfig

LDAP サーバーの証明書を信頼させる

LDAPS を使う場合、クライアントが LDAP サーバー証明書を検証できる必要があります。内部 CA を使っている場合は CA 証明書を配置します。

cp ca.crt /etc/openldap/cacerts/ca.crt
chmod 644 /etc/openldap/cacerts/ca.crt

authconfig で LDAP 認証を有効化する

authconfig --enableldap --enableldapauth --ldapserver=ldaps://ldap01.mydomain.com --ldapbasedn="dc=mydomain,dc=com" --enablemkhomedir --update

nslcd の設定を確認する

cp -a /etc/nslcd.conf /etc/nslcd.conf.bak
uri ldaps://ldap01.mydomain.com/
base dc=mydomain,dc=com
ssl on
tls_cacertfile /etc/openldap/cacerts/ca.crt

nslcd を起動する

systemctl enable nslcd
systemctl restart nslcd
systemctl status nslcd

LDAP ユーザーを確認する

getent passwd ldapuser
id ldapuser
ldapsearch -H ldaps://ldap01.mydomain.com -b dc=mydomain,dc=com uid=ldapuser

ログイン確認の観点

  • LDAP ユーザーが NSS で引けるか。
  • 認証失敗時に証明書検証エラーになっていないか。
  • UID/GID がローカルユーザーと衝突していないか。
  • ホームディレクトリの自動作成が必要か。
  • SSH ログインや sudo 権限を別途どう扱うか。

まとめ

CentOS 7 の LDAP クライアント設定は、authconfig で有効化するだけでは全体像が見えません。nslcd、NSS、PAM、LDAPS 証明書、UID/GID、SSH の関係を分けて確認すると、古い認証基盤の問題点を追いやすくなります。

関連する記事

参考書籍

参考
書籍
参考書籍
LDAP – 設定・管理・プログラミング

LDAP / OpenLDAP の設定、管理、連携を確認したい場合の参考書籍です。古い書籍のため、価格や在庫はリンク先で確認してください。

Amazon で見る

このリンクは Amazon アソシエイトリンクです。

CentOS 7 LDAP クライアント設定 – authconfig と nslcd の LDAPS 接続

CentOS 7 LDAP クライアント設定 – authconfig と nslcd の LDAPS 接続」への1件のフィードバック

コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です

日本語が含まれない投稿は無視されますのでご注意ください。(スパム対策)

トップへ戻る