CTL-Fed-Security.ansible-ipaserver
ipaserver
一个简单但参数化相对较多的角色,用于设置 FreeIPA 服务器。主要在 Fedora 上进行测试。
要求
- CentOS 8
- CentOS 7
角色变量
有两个主要变量需要在角色外部提供,这两个变量没有默认值。
ipaserver_admin_password
ipaserver_dir_admin_password
以下变量由此角色使用,值在 defaults/main.yml 中定义:
ipaserver_base_command: ipa-server-install -U
ipaserver_configure_ssh: True
ipaserver_configure_sshd: True
ipaserver_dns_forwarders:
- 8.8.8.8
- 8.8.4.4
ipaserver_domain: example.com # 全小写。实际 DNS 域名。
ipaserver_hbac_allow: True
ipaserver_idstart: 5000
ipaserver_idmax: False
ipaserver_mkhomedir: True
ipaserver_packages:
- ipa-server
- bind
- bind-dyndb-ldap
ipaserver_realm: EXAMPLE.COM # 全部大写。最好与域名匹配,但不是必须的
ipaserver_setup_dns: True
ipaserver_setup_ntp: True
ipaserver_ssh_trust_dns: True
ipaserver_ui_redirect: True
示例剧本
以下是一个可以轻松包裹此角色的示例剧本,并且仍然相对灵活。您通常不需要对密码来源这么灵活。
- hosts: servers
vars_files:
- vars/private-idm.yml
vars_prompt:
- name: ipaserver_admin_password
prompt: "IPA 的管理员密码应该是什么?"
private: yes
default: "{{ vault_ipaserver_admin_password }}"
- name: ipaserver_dir_admin_password
prompt: "目录服务器的管理员密码应该是什么?"
private: yes
default: "{{ vault_ipaserver_dir_admin_password }}"
roles:
- { role: gregswift.ipaserver }
许可证
GPLv2