1. Предварительные условия
- Клиент должен быть присоединён к IPA‑домену (обычно через
ipa-client-install). - Пользователь должен иметь соответствующие права в IPA (для большинства операций требуется аутентификация).
- Утилита
ipaпредустановлена на клиентах и серверах IPA.
2. Базовая аутентификация
ipa login # интерактивная аутентификация (запрашивает логин/пароль)
ipa login username # войти под конкретным пользователем
ipa logout # завершить сессию
ipa user-find # проверить, что аутентификация прошла (пример запроса)
Примечание: сессия
ipaсохраняется (по умолчанию — в~/.cache/ipa/ccache). Можно использовать Kerberos‑тикеты (kinit) — тогдаipaвозьмёт их автоматически.
3. Основные команды по категориям
Пользователи
ipa user-find # поиск пользователей (все или по фильтру)
ipa user-find "Ivan" # поиск по подстроке
ipa user-show ivanov # детали пользователя
ipa user-add ivanov --first=Ivan --last=Ivanov --email=ivan@example.com
ipa user-mod ivanov --disabled=true # отключить пользователя
ipa user-del ivanov # удалить пользователя (с подтверждением)
ipa user-enable ivanov # включить пользователя
ipa group-add-member admins --users=ivanov # добавить в группу
Группы
ipa group-find # список групп
ipa group-show admins # детали группы
ipa group-add developers # создать группу
ipa group-add-member developers --users=ivanov,petrov
ipa group-remove-member developers --users=ivanov
ipa group-del developers # удалить группу
Хосты
ipa host-find # список хостов
ipa host-show server1.example.com
ipa host-add server2.example.com --force # добавить хост (--force — если DNS не готов)
ipa host-del server2.example.com
ipa hostgroup-add webservers
ipa hostgroup-add-member webservers --hosts=server1.example.com
Сервисы
ipa service-find # список сервисов
ipa service-add http/server1.example.com
ipa service-del http/server1.example.com
Политики паролей
ipa pwpolicy-find # список политик
ipa pwpolicy-show global_policy
ipa pwpolicy-mod global_policy --minlength=12
Правила SUDO
ipa sudorule-find # список правил sudo
ipa sudorule-add admin_sudo
ipa sudorule-add-option admin_sudo --sudooption="!authenticate"
ipa sudorule-add-user admin_sudo --users=admin
ipa sudorule-add-runas admin_sudo --runasusers=root
ipa sudorule-add-host admin_sudo --hosts=server1.example.com
Сертификаты и PKІ
ipa cert-find # список сертификатов
ipa cert-show 12345 # детали сертификата по ID
ipa cert-request --principal=http/server1.example.com cert.csr # запросить сертификат
ipa cert-remove 12345 # отозвать сертификат
DNS
ipa dnszone-find # список зон
ipa dnszone-add example.com
ipa dnsrecord-add example.com www --a-rec=192.0.2.1
ipa dnsrecord-del example.com www
Роли и привилегии (RBAC)
ipa role-find # список ролей
ipa role-add "Backup Admins"
ipa role-add-privilege "Backup Admins" --privileges="System: Read Hosts"
ipa role-add-member "Backup Admins" --users=backupuser
4. Общие опции команд
--help— показать справку по команде.
Пример:ipa user-add --help.--raw— выводить сырые данные (без форматирования).--all— показывать все атрибуты (включая опциональные).--verbose— подробный вывод.--quiet— минимальный вывод (только результат).
5. Полезные проверки
ipa config-show # общие настройки IPA
ipa healthcheck # проверка состояния домена (требует плагина)
ipa env # показать окружение (сервер, домен и т. п.)
klist # проверить Kerberos‑тикет (если используется `kinit`)
6. Типичные ошибки и решения
Permission denied— у пользователя нет прав. Проверьте роли/привилегии черезipa role-findиipa user-show.Host not found— хост не добавлен в IPA. Используйтеipa host-add.Already exists— объект уже есть. Проверьте черезipa <type>-find.Kerberos ticket expired— выполнитеkinitилиipa loginзаново.
7. Советы
- Используйте автодополнение в Bash: наберите
ipaи нажмитеTab— увидите список команд. - Сохраняйте сессии — не нужно логиниться каждый раз, если тиккет актуален.
- Проверяйте права перед выполнением операций:
ipa user-show <user> --allпокажет назначенные роли. - Для скриптов используйте
--quietи обработку кодов возврата ($?).
8. Где искать помощь
- Официальная документация: https://www.freeipa.org.
- Справка в консоли:
ipa <команда> --help. - Логи сервера IPA:
/var/log/ipaservice/*.log.





