2.4. 为带有集成 DNS 和集成 CA 作为根 CA 的部署设置参数

完成这个流程,来在使用 IdM 集成 DNS 解决方案的环境中为安装带有集成 CA 作为根 CA 的 IdM 服务器配置清单文件。

注意

此流程中的清单使用 INI 格式。或者,也可以使用 YAMLJSON 格式。

流程

  1. 创建 ~/MyPlaybooks/ 目录:

    $ mkdir MyPlaybooks
  2. 创建 ~/MyPlaybooks/inventory 文件。
  3. 打开清单文件进行编辑。指定您要用作 IdM 服务器的主机的完全限定域名(FQDN)。确保 FQDN 满足以下条件:

    • 只允许字母数字字符和连字符(-)。例如,不允许使用下划线,这可能导致 DNS 失败。
    • 主机名必须都是小写。
  4. 指定 IdM 域和域信息。
  5. 通过添加以下选项来指定您要使用集成的 DNS:

    ipaserver_setup_dns=yes
  6. 指定 DNS 转发设置。选择以下选项之一:

    • 如果您希望安装程序使用来自 /etc/resolv.conf 文件中的转发,请使用 ipaserver_auto_forwarders=yes 选项。如果在 /etc/resolv.conf 文件中指定的名称服务器是 localhost 127.0.0.1 地址,或者位于虚拟私有网络中,并且您使用的 DNS 服务器通常无法从公共互联网访问,则不要使用这个选项。
    • 使用 ipaserver_forwarders 选项手动指定您的转发器。安装过程将转发器 IP 地址添加到安装的 IdM 服务器上的 /etc/named.conf 文件中。
    • 使用 ipaserver_no_forwarders=yes 选项来配置要使用的根 DNS 服务器。

      注意

      如果没有 DNS 转发器,您的环境会被隔离,且基础架构中的其他 DNS 域的名称不会被解析。

  7. 指定 DNS 反向记录和区域设置。从以下选项中选择:

    • 使用 ipaserver_allow_zone_overlap=yes 选项来允许创建(反向)区域,即使区域已可解析。
    • 使用 ipaserver_reverse_zones 选项来手动指定反向区域。
    • 如果您不希望安装程序创建反向 DNS 区域,请使用 ipaserver_no_reverse=yes 选项。

      注意

      使用 IdM 管理反向区是可选的。您可以改为使用外部 DNS 服务来实现这一目的。

  8. 指定 adminDirectory Manager 的密码。使用 Ansible Vault 来存储密码,并从 playbook 文件中引用 Vault 文件。另外,也可以更安全地指定清单文件中直接的密码。
  9. (可选)指定要由 IdM 服务器使用的自定义 firewalld 区域。如果您没有设置自定义区,IdM 会将其服务添加到默认的 firewalld 区域中。预定义的默认区域是 public

    重要

    指定的 firewalld 区域必须存在,并且是永久的。

    包含所需服务器信息的清单文件示例(密码除外)

    [ipaserver]
    server.idm.example.com
    
    [ipaserver:vars]
    ipaserver_domain=idm.example.com
    ipaserver_realm=IDM.EXAMPLE.COM
    ipaserver_setup_dns=yes
    ipaserver_auto_forwarders=yes
    [...]

    包含所需服务器信息(包括密码)的清单文件示例

    [ipaserver]
    server.idm.example.com
    
    [ipaserver:vars]
    ipaserver_domain=idm.example.com
    ipaserver_realm=IDM.EXAMPLE.COM
    ipaserver_setup_dns=yes
    ipaserver_auto_forwarders=yes
    ipaadmin_password=MySecretPassword123
    ipadm_password=MySecretPassword234
    
    [...]

    带有自定义 firewalld 区的清单文件示例

    [ipaserver]
    server.idm.example.com
    
    [ipaserver:vars]
    ipaserver_domain=idm.example.com
    ipaserver_realm=IDM.EXAMPLE.COM
    ipaserver_setup_dns=yes
    ipaserver_auto_forwarders=yes
    ipaadmin_password=MySecretPassword123
    ipadm_password=MySecretPassword234
    ipaserver_firewalld_zone=custom zone

    使用存储在 Ansible Vault 文件中的 admin 和 Directory Manager 密码设置 IdM 服务器的 playbook 示例

    ---
    - name: Playbook to configure IPA server
      hosts: ipaserver
      become: true
      vars_files:
      - playbook_sensitive_data.yml
    
      roles:
      - role: ipaserver
        state: present

    使用清单文件中的 admin 和 Directory Manager 密码来设置 IdM 服务器的 playbook 示例

    ---
    - name: Playbook to configure IPA server
      hosts: ipaserver
      become: true
    
      roles:
      - role: ipaserver
        state: present

其它资源

  • 有关转发策略的默认设置,请参阅 ipa-dns-install(1) 手册页中的 --forward-policy 描述。
  • 有关 ipaserver 角色使用的 DNS 变量的更多信息,请参阅 /usr/share/doc/ansible-freeipa 目录中 README-server.md 文件中的 DNS 变量部分。
  • 有关清单文件的更多信息,请参阅 如何构建您的清单