Red Hat Training

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

30.3. 配置位置以查找 sudo 策略

sudo 配置的集中 IdM 数据库使 IdM 中定义的 sudo 策略对所有域主机全局可用。在 Red Hat Enterprise Linux 7.1 系统中,ipa-server-installipa-client-install 工具会自动将系统配置为使用 IdM 定义的策略,方法是将 SSSD 设置为 sudo 的数据供应商。
查找 sudo 策略的位置在 /etc/nsswitch.conf 文件的 sudoers 行中定义。在运行 Red Hat Enterprise Linux 7.1 及更新版本的 IdM 系统中,nsswitch.conf 中的默认 sudoers 配置是:
sudoers: files sss
files 选项指定系统使用 /etc/sudoers 本地 SSSD 配置文件中定义的 sudo 配置。sss 选项指定使用 IdM 中定义的 sudo 配置。

30.3.1. 在 IdM 的 Earlier 版本中将主机配置为使用 IdM sudo 策略

要在运行早于 7.1 的 Red Hat Enterprise Linux 版本的 IdM 系统上实施 IdM 定义的 sudo 策略,请手动配置本地机器。您可以使用 SSSD 或 LDAP 执行此操作。红帽强烈建议使用基于 SSSD 的配置。

30.3.1.1. 使用 SSSD 将 sudo 策略应用到主机

在对 sudo 规则使用 SSSD 的每个系统中执行这些步骤:
  1. 配置 sudo 以查找 sudoers 文件的 SSSD。
    # vim /etc/nsswitch.conf
    
    sudoers:  files sss
    保留 files 选项可让 sudo 在检查 SSSD 以了解 IdM 配置前检查其本地配置。
  2. sudo 添加到本地 SSSD 客户端管理的服务列表中。
    # vim /etc/sssd/sssd.conf
    
    [sssd]
    config_file_version = 2
    services = nss, pam, sudo
    domains = IPADOMAIN
  3. sudo 配置中为 NIS 域设置名称。sudo 使用 NIS 风格的网络组,因此 sudo 必须在系统配置中设置 NIS 域名才能查找 IdM sudo 配置中使用的主机组。
    1. 如果 rhel-domainname 服务尚未启用,以确保 NIS 域名在重启后将保留。
      # systemctl enable rhel-domainname.service
    2. 设置要与 sudo 规则一起使用的 NIS 域名。
      # nisdomainname example.com
    3. 将系统验证设置配置为永久保留 NIS 域名.例如:
      # echo "NISDOMAIN=example.com" >> /etc/sysconfig/network
      这会更新带有 NIS 域的 /etc/sysconfig/network/etc/yp.conf 文件。
    4. 重启 rhel-domainname 服务:
      # systemctl restart rhel-domainname.service
  4. (可选)在 SSSD 中启用调试以显示它使用的 LDAP 设置。
    [domain/IPADOMAIN]
    debug_level = 6
    ....
    SSSD 用于操作的 LDAP 搜索基础记录在 sssd_DOMAINNAME.log 日志中。

30.3.1.2. 使用 LDAP 将 sudo 策略应用到主机

重要
仅对不使用 SSSD 的客户端使用基于 LDAP 的配置。红帽建议使用基于 SSSD 的配置配置所有其他客户端,如 第 30.3.1.1 节 “使用 SSSD 将 sudo 策略应用到主机” 所述。
有关使用 LDAP 应用 sudo 策略的详情,请参考 Red Hat Enterprise Linux 6 Identity Management Guide 中的使用 LDAP 将 sudo 策略应用到主机
基于 LDAP 的配置主要适用于基于 Red Hat Enterprise Linux 7 之前的版本的 Red Hat Enterprise Linux。因此,它只在 Red Hat Enterprise Linux 6 文档中被描述。