FreeIPA

Материал из ALT Linux Wiki

(Различия между версиями)
Перейти к: навигация, поиск
м (Установка FreeIPA сервера)
Строка 1: Строка 1:
-
{{Stub}}
+
[[Файл:Freeipa-logo-small.png|frameless|right]]
-
FreeIPA - это комплексное решение по управлению безопасностью Linux-систем, 389 Directory Server, MIT Kerberos, NTP, DNS, Dogtag. Оно состоит из web-интерфейса и интерфейса командной строки.<br>
+
FreeIPA - это комплексное решение по управлению безопасностью Linux-систем, 389 Directory Server, MIT Kerberos, NTP, DNS, Dogtag. Оно состоит из веб-интерфейса и интерфейса командной строки.<br>
FreeIPA является интегрированной системой проверки подлинности и авторизации в сетевой среде Linux, FreeIPA сервер обеспечивает централизованную проверку подлинности, авторизацию и контроль за аккаунтами пользователей сохраняя сведения о пользователе, группах, узлах и других объектах необходимых для обеспечения сетевой безопасности.
FreeIPA является интегрированной системой проверки подлинности и авторизации в сетевой среде Linux, FreeIPA сервер обеспечивает централизованную проверку подлинности, авторизацию и контроль за аккаунтами пользователей сохраняя сведения о пользователе, группах, узлах и других объектах необходимых для обеспечения сетевой безопасности.
-
== Установка FreeIPA сервера ==
+
 
 +
Сайт проекта: http://www.freeipa.org/
 +
 
 +
== Установка сервера FreeIPA ==
Устанавливать будет со встроенным DNS сервером и доменом EXAMPLE.TEST в локальной сети 192.168.135.0/24.<br>
Устанавливать будет со встроенным DNS сервером и доменом EXAMPLE.TEST в локальной сети 192.168.135.0/24.<br>
 +
Для начала отключим ahttpd, работающий на порту 8080 во избежание конфликтов с разворачиваемым tomcat и отключим HTTPS в Apache2:
 +
# service ahttpd stop
 +
# a2dissite 000-default_https
 +
# service httpd2 condreload
 +
Установим необходимые пакеты:
Установим необходимые пакеты:
<pre># apt-get install freeipa-server freeipa-server-dns</pre>
<pre># apt-get install freeipa-server freeipa-server-dns</pre>
Строка 9: Строка 17:
<pre># hostnamectl set-hostname ipa.example.test</pre>
<pre># hostnamectl set-hostname ipa.example.test</pre>
Запускаем скрипт настройки сервера:
Запускаем скрипт настройки сервера:
 +
В пакетном режиме:
 +
# ipa-server-install -U --hostname=$(hostname) -r EXAMPLE.TEST -n example.test -p 12345678 -a 12345678 --setup-dns --no-forwarders --no-reverse
 +
или интерактивно:
<pre># ipa-server-install</pre>
<pre># ipa-server-install</pre>
-
На вопрос {{cmd|Do you want to configure integrated DNS (BIND)? [no]:}} отвечаем {{cmd|yes}}, остальные вопросы выбираем по умолчанию. Так же при установке попросят ввести пароль администратора системы и пароль администратора каталогов.<br>
+
 
 +
{{Attention|Пароли должны быть не менее 8 символов}}
 +
 
 +
Обратите внимание на ответы на вопросы, не совпадающие с предложенными:
 +
Do you want to configure integrated DNS (BIND)? [no]: yes
 +
Do you want to configure DNS forwarders? [yes]: no
 +
Do you want to search for missing reverse zones? [yes]: no
 +
 
 +
остальные вопросы выбираем по умолчанию (можно просто нажать Enter). Так же при установке попросят ввести пароль администратора системы и пароль администратора каталогов.<br>
 +
 
После окончания установки настроим сервер времени, чтобы компьютеры в локальной сети могли к нему подключаться.<br>
После окончания установки настроим сервер времени, чтобы компьютеры в локальной сети могли к нему подключаться.<br>
Для этого добавим в файл {{path|/etc/ntp.conf}} следующую строчку:
Для этого добавим в файл {{path|/etc/ntp.conf}} следующую строчку:
Строка 20: Строка 40:
Добавим в DNS запись о нашем сервере времени:
Добавим в DNS запись о нашем сервере времени:
<pre># ipa dnsrecord-add example.test _ntp._udp --srv-priority=0 --srv-weight=100 --srv-port=123 --srv-target=ipa.example.test.</pre>
<pre># ipa dnsrecord-add example.test _ntp._udp --srv-priority=0 --srv-weight=100 --srv-port=123 --srv-target=ipa.example.test.</pre>
-
Также доступен web-интерфейс по адресу: https://ipa.example.test/
+
 
 +
Также доступен веб-интерфейс по адресу:  
 +
<pre>https://ipa.example.test/ipa/ui/</pre>
 +
 
 +
{{Note|Если выдаёт <pre>[error] CalledProcessError: Command '/sbin/systemctl restart httpd2.service' returned non-zero exit status 1</pre>
 +
Выполните
 +
# systemctl restart httpd2
 +
Отмените установку:
 +
# ipa-server-install -U --uninstall
 +
и повторите снова.}}
== Установка FreeIPA клиента и подключение к серверу ==
== Установка FreeIPA клиента и подключение к серверу ==
Установим необходимые пакеты:
Установим необходимые пакеты:
-
<pre># apt-get install freeipa-client libsss_sudo sssd-ldap nss-utils ntp</pre>
+
<pre># apt-get install freeipa-client libsss_sudo</pre>
Зададим имя компьютера:
Зададим имя компьютера:
<pre># hostnamectl set-hostname comp01.example.test</pre>
<pre># hostnamectl set-hostname comp01.example.test</pre>
Строка 41: Строка 70:
nameserver 192.168.135.1</pre>
nameserver 192.168.135.1</pre>
Запускаем скрипт настройки клиента:
Запускаем скрипт настройки клиента:
 +
в пакетном режиме:
 +
# ipa-client-install -U -p admin -w 12345678
 +
или интерактивно:
<pre># ipa-client-install</pre>
<pre># ipa-client-install</pre>
Если все настроено верно скрипт должен выдать такое сообщение:
Если все настроено верно скрипт должен выдать такое сообщение:
Строка 51: Строка 83:
Continue to configure the system with these values? [no]:</pre>
Continue to configure the system with these values? [no]:</pre>
Отвечаем {{cmd|yes}} вводим имя пользователя, имеющего право вводить машины в домен, и его пароль.<br>
Отвечаем {{cmd|yes}} вводим имя пользователя, имеющего право вводить машины в домен, и его пароль.<br>
-
Для работы sudo-политик на клиентской машине необходимо разрешить доступ к sudo:
+
 
 +
В случае возникновения ошибки, необходимо перед повторной установкой запустить процедуру удаления:
 +
# ipa-client-install -U --uninstall
 +
 
 +
Для работы sudo-политик для доменных пользователей на клиентской машине необходимо разрешить доступ к sudo:
<pre># control sudo public</pre>
<pre># control sudo public</pre>
 +
 +
=== Вход пользователя ===
 +
 +
При первом входе пользователя будет запрошен текущий установленный администратором пароль и затем у пользователя запрашивается новый пароль и его подтверждение.
 +
 +
{{Attention|Запрос нового пароля не работает в LightDM. Для этой процедуры зайдите под именем этого пользователя в консоли или по SSH.}}
 +
 +
[[Категория:Корпоративная инфраструктура]]
 +
{{Category navigation|title=Корпоративная инфраструктура|category=Корпоративная инфраструктура|sortkey={{SUBPAGENAME}}}}

Версия 10:33, 26 января 2017

Freeipa-logo-small.png

FreeIPA - это комплексное решение по управлению безопасностью Linux-систем, 389 Directory Server, MIT Kerberos, NTP, DNS, Dogtag. Оно состоит из веб-интерфейса и интерфейса командной строки.
FreeIPA является интегрированной системой проверки подлинности и авторизации в сетевой среде Linux, FreeIPA сервер обеспечивает централизованную проверку подлинности, авторизацию и контроль за аккаунтами пользователей сохраняя сведения о пользователе, группах, узлах и других объектах необходимых для обеспечения сетевой безопасности.

Сайт проекта: http://www.freeipa.org/

Установка сервера FreeIPA

Устанавливать будет со встроенным DNS сервером и доменом EXAMPLE.TEST в локальной сети 192.168.135.0/24.
Для начала отключим ahttpd, работающий на порту 8080 во избежание конфликтов с разворачиваемым tomcat и отключим HTTPS в Apache2:

# service ahttpd stop
# a2dissite 000-default_https
# service httpd2 condreload

Установим необходимые пакеты:

# apt-get install freeipa-server freeipa-server-dns

Зададим имя сервера:

# hostnamectl set-hostname ipa.example.test

Запускаем скрипт настройки сервера: В пакетном режиме:

# ipa-server-install -U --hostname=$(hostname) -r EXAMPLE.TEST -n example.test -p 12345678 -a 12345678 --setup-dns --no-forwarders --no-reverse

или интерактивно:

# ipa-server-install
Внимание! Пароли должны быть не менее 8 символов


Обратите внимание на ответы на вопросы, не совпадающие с предложенными:

Do you want to configure integrated DNS (BIND)? [no]: yes
Do you want to configure DNS forwarders? [yes]: no
Do you want to search for missing reverse zones? [yes]: no

остальные вопросы выбираем по умолчанию (можно просто нажать Enter). Так же при установке попросят ввести пароль администратора системы и пароль администратора каталогов.

После окончания установки настроим сервер времени, чтобы компьютеры в локальной сети могли к нему подключаться.
Для этого добавим в файл /etc/ntp.conf следующую строчку:

restrict 192.168.135.0 mask 255.255.255.0 nomodify

Перезапустим службу:

# systemctl restart ntpd

Для возможности управлять FreeIPA сервером из командной строки необходимо получить билет Kerberos:

# kinit admin

Добавим в DNS запись о нашем сервере времени:

# ipa dnsrecord-add example.test _ntp._udp --srv-priority=0 --srv-weight=100 --srv-port=123 --srv-target=ipa.example.test.

Также доступен веб-интерфейс по адресу:

https://ipa.example.test/ipa/ui/
Примечание: Если выдаёт
[error] CalledProcessError: Command '/sbin/systemctl restart httpd2.service' returned non-zero exit status 1

Выполните

# systemctl restart httpd2

Отмените установку:

# ipa-server-install -U --uninstall
и повторите снова.


Установка FreeIPA клиента и подключение к серверу

Установим необходимые пакеты:

# apt-get install freeipa-client libsss_sudo

Зададим имя компьютера:

# hostnamectl set-hostname comp01.example.test

Добавим DNS сервер, для этого создадим файл /etc/net/ifaces/ens19/resolv.conf со следующим содержимым:

nameserver 192.168.135.1

192.168.135.1 - IP-адрес нашего FreeIPA сервера.
Укажем службе resolvconf использовать DNS FreeIPA и наш домен для поиска.
Для этого в файл /etc/resolvconf.conf добавим/отредактируем следующие параметры:

interface_order='lo lo[0-9]* lo.* ens19'
search_domains=example.test

Где ens19 -интерфейс на котором доступен FreeIPA сервер, example.test - наш домен.
Обновим DNS адреса:

# resolvconf -u

После этого в файле /etc/resolv.conf должны появится строки:

search example.test
nameserver 192.168.135.1

Запускаем скрипт настройки клиента: в пакетном режиме:

# ipa-client-install -U -p admin -w 12345678

или интерактивно:

# ipa-client-install

Если все настроено верно скрипт должен выдать такое сообщение:

'''Discovery was successful!'''
Client hostname: comp02.example.test
Realm: EXAMPLE.TEST
DNS Domain: example.test
IPA Server: ipa.example.test
BaseDN: dc=example,dc=test
Continue to configure the system with these values? [no]:

Отвечаем yes вводим имя пользователя, имеющего право вводить машины в домен, и его пароль.

В случае возникновения ошибки, необходимо перед повторной установкой запустить процедуру удаления:

# ipa-client-install -U --uninstall

Для работы sudo-политик для доменных пользователей на клиентской машине необходимо разрешить доступ к sudo:

# control sudo public

Вход пользователя

При первом входе пользователя будет запрошен текущий установленный администратором пароль и затем у пользователя запрашивается новый пароль и его подтверждение.

Внимание! Запрос нового пароля не работает в LightDM. Для этой процедуры зайдите под именем этого пользователя в консоли или по SSH.
 
Личные инструменты