6.5. LDAP シェル属性のオーバーライド
管理者は、LDAP のアカウントを使用するように既存のホストを設定できます。しかし、LDAP 内のユーザーの値 (名前、UID、GID、ホームディレクトリー、シェル) が、ローカルシステム上の値と異なる場合があります。別のシェルを定義することで、LDAP シェル属性をオーバーライドできます。
前提条件
-
rootアクセス -
sssd-toolsがインストールされている
手順
ローカルに保存されているユーザーの現在のシェルを表示します。
# getent passwd <ldap_username> <ldap_username>:x:XXXX:XXXX::/home/<home_directory>:_<currentshell>_<ldap_username>は、ユーザー名に置き換えます。ユーザーのシェルをオーバーライドします。
# sss_override user-add <ldap_username> -s <new_shell><ldap_username>は、ユーザー名に置き換えます。<new_shell>は、新しいシェルに置き換えます。SSSD を再起動して変更を適用します。
# systemctl restart sssd
検証
新しいシェルが定義されていることを確認します。
# getent passwd <ldap_username> <ldap_username>:x:XXXX:XXXX::/home/<home_directory>:_<new_shell>_オプション: ユーザーのオーバーライドを表示します。
# sss_override user-show <ldap_username> user@ldap.example.com::::::_<new_shell>_:例6.5 ユーザーのシェルのオーバーライド
ユーザー
sarahのシェルを/bin/bashからsbin/nologinに変更するには、次のコマンドを実行します。ユーザー
sarahの現在のシェルを表示します。# getent passwd sarah sarah:x:1001:6003::sarah:/bin/bashユーザー sarah のシェルを新しい
/sbin/nologinシェルでオーバーライドします。# sss_override user-add sarah -s /sbin/nologinSSSD を再起動して変更を適用します。
# systemctl restart sssd新しいシェルが定義されており、ユーザーのオーバーライドが正しく表示されることを確認します。
# getent passwd sarah sarah:x:1001:6003::sarah:/sbin/nologin # sss_override user-show sarah user@ldap.example.com::::::/sbin/nologin: