Red Hat Training

A Red Hat training course is available for Red Hat Enterprise Linux

21.4.2. LDAP を使用した sudo ポリシーのホストへの適用

重要
SSSD を使用しない Red Hat Enterprise Linux 6.3 以前またはクライアントには、LDAP ベースの設定のみを使用してください。Red Hat では、他のクライアントに関しては SSSD ベースの設定を使用することを推奨しています。これについては、「SSSD を使用した sudo ポリシーのホストへの適用」 を参照してください。
  1. IdM でホストおよび sudo エントリーを設定します。
    1. 任意。「ホストグループの管理」の説明に従って、ホストグループを設定します。
    2. 任意。「ユーザーグループの作成」で説明されているようにユーザーグループを作成し、ユーザーを追加します。
    3. 「sudo コマンドおよびコマンドグループの設定」の説明に従って、sudo コマンドおよびコマンドグループを設定します。
    4. 「sudo ルールの定義」の説明に従って、sudo ルールを設定します。
  2. デフォルトの IdM sudo ユーザーのパスワードを設定して、バインド (認証) ユーザーを設定します。ユーザーがサーバーへの認証が可能でなければなりません。sudo ポリシーでは、匿名アクセスはサポートされません。
    LDAP ツールを使用して sudo ユーザーのパスワード uid=sudo,cn=sysaccounts,cn=etc,dc=example,dc=com を設定します。以下に例を示します。
    [jsmith@server ~]$ ldappasswd -Y GSSAPI -S -h ipaserver.example.com uid=sudo,cn=sysaccounts,cn=etc,dc=example,dc=com
        New password: 
        Re-enter new password: 
        Enter LDAP Password:
  3. sudo ルールに SSSD を使用するように、IdM ドメインのすべてのシステムを設定します。
    1. sudo を設定して、sudoers ファイルの LDAP を検索します。
      vim /etc/nsswitch.conf
      
      sudoers:  files ldap
      この files オプションをそのままにすると、sudo は LDAP ベースの IdM 設定を確認する前にローカル設定を確認することができます。
    2. /etc/ldap.conf ファイル内の sudo 操作のデバッグロギングを有効にします。このファイルが存在しない場合は作成できます。
      vim /etc/ldap.conf
      
      sudoers_debug: 1
      注記
      sudoers_debug パラメーターを追加すると、トラブルシューティングに役立ちます。このパラメーターの有効な値は 0、1、および 2 です。sudo ドキュメント (http://www.gratisoft.us/sudo/readme_ldap.html) には、プロセスのデバッグに関する詳細情報が記載されています。
    3. NSS/LDAP 設定ファイルを編集し、以下の sudo 関連の行を /etc/sudo-ldap.conf ファイルに追加します。
      binddn uid=sudo,cn=sysaccounts,cn=etc,dc=example,dc=com
      bindpw sudo_password
      
      ssl start_tls
      tls_cacertfile /etc/ipa/ca.crt
      tls_checkpeer yes
      
      bind_timelimit 5
      timelimit 15
      
      uri ldap://ipaserver.example.com ldap://backup.example.com:3890
      sudoers_base ou=SUDOers,dc=example,dc=com
      複数の LDAP サーバーをスペースで区切って設定できます。その他のオプション (SSL や非標準ポートなど) は LDAP URL と併用できます。sudo LDAP 設定は sudooers.ldap(8) man ページで説明されています。
      重要
      uri ディレクティブは、IP アドレスではなく、LDAP サーバーの完全修飾ドメイン名を提供する必要があります。それ以外の場合は、sudo は LDAP サーバーへの接続に失敗します。
    4. 任意。SSSD でのデバッグを有効にして、使用している LDAP 設定を表示します。
      [root@server ~]# vim /etc/sssd/sssd.conf
      
      [domain/LDAPDOMAIN]
      debug_level = 6
      ....
      SSSD が操作に使用する LDAP 検索ベースは、sssd_DOMAINNAME.log ファイルに記録されます。
    5. sudo 設定で NIS ドメインの名前を設定します。sudo は NIS スタイルの netgroup を使用するので、sudo が IdM sudo 設定で使用されているホストグループを発見できるようにするには、NIS ドメイン名はシステム設定で設定する必要があります。
      1. sudo ルールで使用する NIS ドメイン名を設定します。
        [root@server ~]# nisdomainname example.com
      2. NIS ドメイン名が維持されるようにシステム認証設定を設定します。たとえば、以下のようになります。
        [root@server ~]# echo "NISDOMAIN=example.com" >> /etc/sysconfig/network
        これにより、NIS ドメインを持つ /etc/sysconfig/network および /etc/yp.conf ファイルが更新されます。
      注記
      sudo は NIS 形式のネットグループを使用しますが、NIS サーバーをインストールする必要はありません。netgroups では、NIS ドメインを設定で命名する必要があるため、sudo では、netgroups に NIS ドメインという名前を付ける必要があります。ただし、NIS ドメインが存在する必要はありません。