web-dev-qa-db-ja.com

コマンドラインからSLES12でLDAPクライアントを有効にする

YastGUIを使用せずにSLES12でLDAPクライアントを有効化/構成したい。 12(またはよく覚えている場合は11 sp3)の前は、次のように使用していました。

yast2 ldap configure server="myserver" base="mybase" [some other parameters]

基本的には、authconfigを使用したRHELのような構成でした

authconfig --enableldap --enableldapauth --enablemkhomedir [some other parameters]

私の質問は:

gUIを操作せずにLDAPクライアントを構成する(または少なくとも有効にする)方法はありますか?システムをインストールした後、スクリプトで実行したいと思います。オートヤスト方式は行きたくない。

2
Cobra Kai Dojo

そのため、いくつかの調査/テストの結果、GUIを操作せずに新しいSLESリリースでLDAPクライアントを構成する方法をついに見つけました。

  1. 必要なパッケージがインストールされていることを確認してください(私はldapでSudoを使用しているため、libsss_Sudoをインストールします。必要がない場合はインストールする必要はありません)。

    zypper install sssd libsss_Sudo

  2. PAMモジュールを構成します(ログイン時にホームフォルダーを作成し、新しいディレクトリのumaskを077に設定するように個人的に設定します)

    pam-config --add --sss && pam-config --add --mkhomedir --mkhomedir-umask = 0077

  3. 「古い」nscdを無効にして、競合を回避し、sssdを有効にします

    service nscd stop && chkconfig nscd off && chkconfig sssd on

  4. 最後に、設定を使用してnsswitch.confとsssd.confを編集し、sssdサービスを再起動することを忘れないでください

* nscdからソケットが開いたままになっているため(nscdが無効化/停止されているにもかかわらず)、sssdサービスを開始するときにSLES12で問題が発生していました。 unlink /var/run/nscd/socketなんとか修正しました。

2
Cobra Kai Dojo