作り上げたLDAPサーバにクライアントPCを接続させてみる。
ubuntu18.04の場合 LDAP/Client/ubuntu

過去記事LDAP/サーバ接続181006

事前確認

既にldapサーバが用意されているなら ldapsearch コマンドで接続を確認してみます。
LDAPで作ったldapサーバは CA認証局 は自作です. なので /etc/openldap/ldap.conf には「TLS_REQCERT never」を入れる

[root@ldap-client ~]# cat /etc/redhat-release
AlmaLinux release 8.4 (Electric Cheetah)
 
[root@ldap-client ~]# dnf install openldap-clients
 
[root@ldap-client ~]# vi /etc/openldap/ldap.conf
TLS_REQCERT never
 
[root@ldap-client ~]# ldapsearch  -x -H ldaps://ldap-server -b dc=sybyl,dc=local   <-- ldaps で繋げてます. ldap でも構いません

anonymous接続を許可しているなら上記でいいが、anonymousを禁止にしているなら特定ユーザで検索を行う

[root@ldap-client ~]# ldapsearch  -x -H ldaps://ldap-server -b dc=sybyl,dc=local -D cn=Manager,dc=sybyl,dc=local -W

authselect

authconfigが便利だったのですが、RHEL8系からは authselect がメインのご様子. authconfig との対応とかは「man 7 authselect-migration」で確認できます

authselect - sssd

sssd経由でldapに繋ぐ.
まずは「sssd-ldap」パッケージを院すとーすして、「/usr/share/doc/sssd-common/sssd-example.conf」を参照しながら「/etc/sssd/sssd.conf」を作る

[root@ldap-client ~]# dnf -y install sssd-ldap
 
[root@ldap-client ~]# vi /etc/sssd/sssd.conf
[sssd]
services = nss, pam
domains = default
 
[nss]
 
[domain/default]
id_provider = ldap
ldap_uri = ldaps://ldap-server/                 <-- ldaps接続なら
ldap_search_base = dc=sybyl,dc=local
ldap_id_use_start_tls = True
ldap_tls_reqcert = never
 
#ldap_default_bind_dn = cn=connect,dc=sybyl,dc=local
#ldap_default_authtok = password
 
[root@ldap-client ~]# chmod 600 /etc/sssd/sssd.conf

っでsssdを起動させます

[root@ldap-client ~]# authselect select sssd --force
[root@ldap-client ~]# systemctl restart sssd
 
(接続確認)
[root@ldap-client ~]# lsof -i
COMMAND    PID   USER   FD   TYPE DEVICE SIZE/OFF NODE NAME
 :
sssd_be   2327   root   21u  IPv4  28757      0t0  TCP ldap-client.sybyl.local:35568->ldap-server.sybyl.local:ldaps (ESTABLISHED)
 :
[root@ldap-client ~]#

authselect - nslcd

sssdの代わりに従来からの nslcd[Name Service LDAP Connection Daemon]を使ってみます.
https://web.chaperone.jp/w/index.php?samba/LDAP#wed2b142にも記載
「authselect list」には存在しない項目なので新規項目として作って対応します。あくまで authselect 経由

「nss-pam-ldapd」パッケージをインストールします

[root@ldap-client ~]# dnf install nss-pam-ldapd

authselectのsssd profileをコピーして nslcd profile を作る

[root@ldap-client ~]# ls -l /usr/share/authselect/default/sssd
total 44
-rw-r--r--. 1 root root  540 Nov 25  2020 dconf-db
-rw-r--r--. 1 root root  279 Nov 25  2020 dconf-locks
-rw-r--r--. 1 root root 2080 May 19  2021 fingerprint-auth
-rw-r--r--. 1 root root  393 Nov 25  2020 nsswitch.conf
-rw-r--r--. 1 root root 3119 May 19  2021 password-auth
-rw-r--r--. 1 root root  340 May 19  2021 postlogin
-rw-r--r--. 1 root root 4372 May 19  2021 README
-rw-r--r--. 1 root root 1904 Nov 25  2020 REQUIREMENTS
-rw-r--r--. 1 root root 1976 May 19  2021 smartcard-auth
-rw-r--r--. 1 root root 3873 May 19  2021 system-auth
 
[root@ldap-client ~]# cp -Rp /usr/share/authselect/default/sssd /etc/authselect/custom/nslcd

このテンプレートを修正します

cd /etc/authselect/custom/nslcd
sed -i 's/sss/ldap/g' fingerprint-auth
sed -i 's/sss/ldap/g' password-auth
sed -i 's/sss/ldap/g' smartcard-auth
sed -i 's/sss/ldap/g' system-auth
sed -i 's/sss/ldap/g' nsswitch.conf
sed -i 's/SSSD/NSLCD/g' REQUIREMENTS
echo "Enable nslcd for system authentication" > README

加えて「/etc/nslcd.conf」を修正します

[root@ldap-client ~]# cp -i /etc/nslcd.conf /etc/nslcd.conf.orig
[root@ldap-client ~]# sed '/^#/d' /etc/nslcd.conf.orig | sed '/^$/d' > /etc/nslcd.conf
 
[root@ldap-client ~]# vi /etc/nslcd.conf
uid nslcd
gid ldap
uri ldaps://ldap-server/
base dc=sybyl,dc=local
tls_reqcert never
 
[root@ldap-client ~]#

authselectの新たな候補になっているか確認します

[root@ldap-client ~]# authselect list
- minimal        Local users only for minimal installations
- nis            Enable NIS for system authentication
- sssd           Enable SSSD for system authentication (also for local users only)
- winbind        Enable winbind for system authentication
- custom/nslcd   Enable nslcd for system authentication
[root@ldap-client ~]#

追加されたようです.

[root@ldap-client ~]# authselect select custom/nslcd --force
[root@ldap-client ~]# systemctl enable nslcd
[root@ldap-client ~]# systemctl start nslcd

ubuntu20.04から繋いでみる

「apt -y install libnss-ldapd libpam-ldapd」で設定パネルが用意されそれに従い設定を行えばいいが、

[root@ldap-client ~]# apt -y install libnss-ldapd libpam-ldapd
 
 LDAP server URI:  -->  ldaps://ldap-server/
 
 LDAP server search base: --> dc=sybyl,dc=local
 
 Name services to configure:  --> passwd, group, shadow を有効に
 
[root@ldap-client ~]# cp -i /etc/nslcd.conf /etc/nslcd.conf.orig
[root@ldap-client ~]# sed '/^#/d' /etc/nslcd.conf.orig | sed '/^$/d' > /etc/nslcd.conf
[root@ldap-client ~]# vi /etc/nslcd.con
uid nslcd
gid nslcd
uri ldap://ldap-server/
base dc=sybyl,dc=local
#tls_cacertfile /etc/ssl/certs/ca-certificates.crt
tls_reqcert never
[root@ldap-client ~]# reboot

即座には反映しないようで、rebootすれば反映されるみたい.
一応確認

root@ldap-client:~# lsof -i
 :
nslcd      906           nslcd    7u  IPv4  27805      0t0  TCP ldap-client.sybyl.local:49594->ldap-server.sybyl.local:ldaps (ESTABLISHED)
 :
root@ldap-client:~#

トップ   編集 添付 複製 名前変更     ヘルプ   最終更新のRSS
Last-modified: 2022-04-23 (土) 17:15:10 (154d)