1.4. 创建并部署您自己的 authselect 配置集

作为系统管理员,您可以通过生成一个默认配置集的自定义副本来创建和部署自定义配置集。

这在修改一个现成的 authselect 配置集不足以满足您的需要时特别有用。当您部署自定义配置集时,配置集将应用于记录到给定主机上的每个用户。

步骤

  1. 使用 authselect create-profile 命令创建自定义配置集。例如,基于可用的 sssd 配置集创建一个名为 user-profile 的自定义配置集,您可以自行在 /etc/nsswitch.conf 文件中配置项目:

    # authselect create-profile user-profile -b sssd --symlink-meta --symlink-pam
    New profile was created at /etc/authselect/custom/user-profile
    警告

    如果您计划修改 /etc/authselect/custom/user-profile/{password-auth,system-auth,fingerprint-auth,smartcard-auth,postlogin},然后输入没有 --symlink-pam 选项的上述命令。这是为了在升级 authselect-libs 过程中确保修改持久。

    在命令中包含 --symlink-pam 选项意味着 PAM 模板将是原始配置集文件的符号链接,而不是其副本;包括 --symlink-meta 选项意味着元文件(如 README 和 REQUIREMENTS)将是原始配置文件文件的符号链接,而不是其副本。这样可确保以后对原始配置集中的 PAM 模板和 meta 文件的所有更新都会反映在您的自定义配置集中。

    这个命令会在 /etc/authselect/custom/user-profile/ 目录中创建 /etc/nsswitch.conf 文件的副本。

  2. 配置 /etc/authselect/custom/user-profile/nsswitch.conf 文件。
  3. 运行 authselect select 命令选择自定义配置集,并添加 custom/name_of_the_profile 作为一个参数。例如,要选择 user-profile 配置集:

    # authselect select custom/user-profile

    为您的机器选择 user-profile 配置集意味着,如果以后红帽更新了 sssd 配置集,您就可以受益于这些更新(对 /etc/nsswitch.conf 文件的更新除外)。

    例 1.1. 创建配置集

    以下步骤演示了如何基于 sssd 配置集创建一个配置集,它仅在 /etc/hosts 文件中的本地静态表中查找主机名,而不在 dnsmyhostname 数据库中查找。

    1. 编辑 /etc/nsswitch.conf 文件,修改以下行:

      hosts:      files
    2. 基于 sssd 创建自定义配置集,它排除了对 /etc/nsswitch.conf 的更改:

      # authselect create-profile user-profile -b sssd --symlink-meta --symlink-pam
    3. 选择配置集:

      # authselect select custom/user-profile
    4. (可选)检查是否已选择自定义配置集

      • 根据所选的 sssd 配置集创建 /etc/pam.d/system-auth 文件
      • 原封不动保留 /etc/nsswitch.conf 中的配置:

        hosts:      files
        注意

        运行 authselect select sssd 将会产生 hosts: files dns myhostname

其它资源