Featured image of post Добавление клиентов FreeIPA используя Ansible

Добавление клиентов FreeIPA используя Ansible

Присоединение Linux клиентов к домену FreeIPA через Ansible Role

Шаг 1. Установка Ansible-роли

В консоли сервера FreeIPA выполняем обновление пакетов:

1
sudo apt update -y && apt upgrade -y

Загружаем на наш доменный сервер FreeIPA ansible и ansible роль:

1
2
3
sudo apt install ansible -y
sudo ansible-galaxy install ipaclient
sudo apt install sshpass -y

Создаем и переходим в рабочую директорию:

1
sudo mkdir /opt/freeipa && cd /opt/freeipa

Шаг 2. Создаем файл inventory.ini

Прописываем:

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
# Сервера-клиенты на присоединение в домен:
[ipaclients]
client-1.domain.local
client-2.domain.local
client-3.domain.local

# Сервер домена FreeIPA:
[ipaservers]
freeipa.domain.local

# Переменные для мастера установки (меняем на свои):
[ipaclients:vars]
ipaclient_domain=domain.local
ipaclient_realm=DOMAIN.LOCAL
ipaadmin_principal=admin
ipaadmin_password=changeMe
ipaclient_no_ntp=yes
ipaclient_mkhomedir=yes

Сохраняем, закрываем.

Все сервера в списках должны резолвиться по имени.

Дополнительно в этой же директории можно создать файл ansible.cfg

1
2
[defaults]
host_key_checking=false

Чтобы при подключении сервер не запрашивал отпечаток ключа.

Здесь же создаём файл ipa-playbook.yaml

1
nano ipa-playbook.yaml

Содержимое которого (remote_user меняйте на своего пользователя удаленного компьютера, который имеет право выполнять команды под sudo):

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
---
- name: "Playbook to configure IPA clients"
  hosts: ipaclients
  become: true
  remote_user: admin
  gather_facts: true

  roles:
  - role: ipaclient
    state: present
...
  • Также, возможно необходимо будет доустановить библиотеку python
1
2
sudo apt install python3-pip
sudo pip install python-gssapi

Запускаем ansible playbook:

1
ansible-playbook ipa-playbook.yaml -i inventory.ini

Дожидаемся процесса установки. Готово. Наши сервера успешно присоединены к домену.

Информацию можно использовать в свободном доступе, с указанием ссылки на сайт
Создано при помощи Hugo
Тема Stack, дизайн Jimmy