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

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

centos7 nss-pam-ldapd

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

*同時にnscd(Name Service Cache Daemon)もインストールされる. 導入直後はdisable
「nss-pam-ldapd」パッケージの中に「/usr/sbin/nslcd」が含まれている
インストール直後では

[root@client ~]# systemctl status nslcd
● nslcd.service - Naming services LDAP client daemon.
   Loaded: loaded (/usr/lib/systemd/system/nslcd.service; disabled; vendor preset: disabled)
   Active: inactive (dead)
     Docs: man:nslcd(8)
           man:nslcd.conf(5)
[root@client ~]#

と動いていはいない。
どこのLDAPを参照するかは authconfig-tui で決める

[root@client ~]# authconfig-tui

その後ターミナル画面を使ったGUIが表示され、「ユーザ情報」欄の「LDAPを使用」を有効にして、加え認証の「LDAP認証を使用」にもチェックを入れる。
2018y10m07d_021508788.png
次へリンクを押下して「LDAP設定」画面でLDAPサーバの場所とベースDNを記載して「OK」ボタンを押下します。
2018y10m07d_043153964.png

この直後、「nslcd」は稼働して、systemctlでの「enable」状態となる。

LDAPからデータが引けているかはidコマンドとかで確認

[root@client ~]# id foo
uid=3000(foo) gid=2001(xray) groups=2001(xray)
[root@client ~]#

と大丈夫みたい

  • 補足情報
    [root@client ~]# cat /etc/nsswitch.conf
      :
    passwd:     files sss ldap
    shadow:     files sss ldap
    group:      files sss ldap
      :
    netgroup:   files sss ldap
      :
    automount:  files ldap
      :
    [root@client ~]#
    [root@client ~]# grep -v -e '^\s*#' -e '^\s*$'   /etc/nslcd.conf
    uid nslcd
    gid ldap
    uri ldap://192.168.0.81/
    base dc=sybyl,dc=local
    ssl no
    tls_cacertdir /etc/openldap/cacerts
     
    [root@client ~]#
    [root@client ~]# grep -v -e '^\s*#' -e '^\s*$'   /etc/openldap/ldap.conf
    TLS_CACERTDIR /etc/openldap/cacerts
    SASL_NOCANON    on
    URI ldap://192.168.0.81/
    BASE dc=sybyl,dc=local
     
    [root@client ~]#
  • nscd
    「authconfig-tui」にて「キャッシュ情報」を有効にすると、設定完了時には「nscd」が稼働する
  • パスワード変更
    passwdがldapに問い合わせ変更してくれる
    [foo@client ~]$ passwd
    ユーザー foo のパスワードを変更。
    (current) LDAP Password:
    新しいパスワード:
    新しいパスワードを再入力してください:
    passwd: すべての認証トークンが正しく更新できました。
    [foo@client ~]$
  • chsh
    chshによるSHELLの変更は無理みたい...
    [foo@client ~]$ chsh
    foo のシェルを変更します。
    新しいシェル [/bin/bash]: /bin/tcsh
    パスワード:
    chsh: user "foo" does not exist.
    [foo@client ~]$

centos7 sssd

sssdを使ってldapに接続してみる
*最小構成でOS構築直後とします

[root@client ~]# yum install sssd sssd-ldap

この後、前述のnslcdと同じくauthconfig-tuiにて設定を施します。

[root@client ~]# authconfig-tui

ターミナル画面を使ったGUIが表示され、「ユーザ情報」欄の「LDAPを使用」を有効にして、
認証の「LDAP認証を使用」もチェックを入れる。
2018y10m07d_021508788.png
次へリンクを押下して「LDAP設定」画面でLDAPサーバの場所とベースDNを記載して「OK」ボタンを押下します。

TLSを使用チェックなし
サーバーldap://192.168.0.81/
ベースDNdc=sybyl,dc=local

2018y10m07d_043153964.png

この直後に「/etc/sssd/sssd.conf」が作られ、sssdが稼働し始めます。
ただこのままだと証明書の受領が必要で、証明書なしにアクセスを可能にさせるため「ldap_tls_reqcert = never」を加えます

[root@client ~]# cat /etc/sssd/sssd.conf
[domain/default]
 
autofs_provider = ldap
cache_credentials = True
ldap_search_base = dc=sybyl,dc=local
id_provider = ldap
auth_provider = ldap
chpass_provider = ldap
ldap_uri = ldap://192.168.0.81/
ldap_id_use_start_tls = False
ldap_tls_cacertdir = /etc/openldap/cacerts
ldap_tls_reqcert = never                     <--ここ
[sssd]
services = nss, pam, autofs
 
domains = default
[nss]
homedir_substring = /home
 
[pam]
 
[sudo]
 
[autofs]
 
[ssh]
 
[pac]
 
[ifp]
 
[secrets]
 
[session_recording]
 
[root@client ~]#

その後sssdを再起動させます

[root@client ~]# systemctl restart sssd

これで完了です。

  • 補足情報
    [root@client ~]# vi /etc/nsswitch.conf
      :
    passwd:     files sss
    shadow:     files sss
    group:      files sss
      :
    services:   files sss
    netgroup:   files sss
    automount:  files sss
      :
    [root@client ~]# grep -v -e '^\s*#' -e '^\s*$'   /etc/openldap/ldap.conf
    TLS_CACERTDIR /etc/openldap/cacerts
    SASL_NOCANON    on
    URI ldap://192.168.0.81/
    BASE dc=sybyl,dc=local
    [root@client ~]#
  • passwd
    passwdコマンドがそのまま使えます
  • chsh
    無理みたい
    [foo@client ~]$ chsh
    foo のシェルを変更します。
    新しいシェル [/bin/bash]: /bin/tcsh
    パスワード:
    chsh: user "foo" does not exist.
    [foo@client ~]$

トップ   編集 添付 複製 名前変更     ヘルプ   最終更新のRSS
Last-modified: 2018-10-07 (日) 12:06:10 (380d)