SSSD/AD
Материал из ALT Linux Wiki
(→Настройка SSSD) |
|||
Строка 129: | Строка 129: | ||
= Настройка SSSD = | = Настройка SSSD = | ||
+ | |||
+ | ==Установка sssd-модуля== | ||
+ | |||
+ | Для работы с Active Directory в SSSD имеется специальный AD-провайдер: | ||
+ | apt-get install sssd-ad | ||
+ | |||
+ | Минимальный конфигурационный файл (/etc/sssd/sssd.conf) для sssd-ad выглядит следующим образом: | ||
+ | <source lang="text">[sssd] | ||
+ | config_file_version = 2 | ||
+ | services = nss, pam | ||
+ | |||
+ | domains = DOM.LOC | ||
+ | debug_level = 1 | ||
+ | |||
+ | [nss] | ||
+ | debug_level = 1 | ||
+ | |||
+ | [pam] | ||
+ | debug_level = 1 | ||
+ | |||
+ | [domain/DOM.LOC] | ||
+ | id_provider = ad | ||
+ | auth_provider = ad | ||
+ | chpass_provider = ad | ||
+ | |||
+ | ; ldap_id_mapping = False | ||
+ | default_shell = /bin/bash | ||
+ | fallback_homedir = /home/%d/%u | ||
+ | ; use_fully_qualified_names = True</source> | ||
+ | |||
+ | Опция '''ldap_id_mapping = False''' позволяет включить использование POSIX атрибутов, определённых в Active Directory, вместо встроенной, однозначной трансляции SID'ов. | ||
+ | Основная проблема применения POSIX-атрибутов состоит в том, что они могут быть не заданы. В этом случае сервис sssd не загрузиться. | ||
+ | |||
+ | Опция '''use_fully_qualified_names = True''' включает режим полных имён (включая домен) для пользователей и групп. | ||
+ | |||
+ | ==Настройка авторизации== | ||
+ | |||
+ | Авторизационные NSS-базы GLibc настраиваются с в файле /etc/nsswitch.conf | ||
+ | При использовании sssd, требуется внести исправления в следующие строчки: | ||
+ | <source lang="text"># grep sss /etc/nsswitch.conf | ||
+ | passwd: files sss | ||
+ | shadow: tcb files sss | ||
+ | group: files sss | ||
+ | services: files sss | ||
+ | netgroup: files sss</source> | ||
+ | |||
+ | ==Настройка аутентификации== | ||
+ | |||
+ | Для изменения настроек аутентификации (параметров PAM) в ALTLinux используется утилита ''control'': | ||
+ | # control system-auth sss | ||
+ | |||
+ | ==Запуск и проверка сервиса sssd== | ||
+ | |||
+ | Если все настройки выполнены правильно, то после запуска сервиса sssd: | ||
+ | # service sssd start | ||
+ | будут доступны авторизационные данные для пользователя administrator: | ||
+ | <source lang="text"> | ||
+ | # getent passwd administrator | ||
+ | administrator:*:1310400500:1310400513:Administrator:/home/DOM.LOC/administrator:/bin/bash | ||
+ | # id administrator | ||
+ | uid=1310400500(administrator) gid=1310400513(domain users) группы=1310400513(domain users),1310400520(group policy creator owners),1310400519(enterprise admins),1310400512(domain admins),1310400518(schema admins),1310400572(denied rodc password replication group) | ||
+ | # su - administrator | ||
+ | [administrator@client2 ~]$ whoami | ||
+ | administrator | ||
+ | [administrator@client2 ~]$ pwd | ||
+ | /home/DOM.LOC/administrator | ||
+ | </source> | ||
+ | |||
+ | Или для administrator@dom.loc, если установлена опция '''use_fully_qualified_names = True''': | ||
+ | <source lang="text"> | ||
+ | # id administrator@dom.loc | ||
+ | uid=1310400500(administrator@DOM.LOC) gid=1310400513(domain users@DOM.LOC) группы=1310400513(domain users@DOM.LOC),1310400520(group policy creator owners@DOM.LOC),1310400519(enterprise admins@DOM.LOC),1310400512(domain admins@DOM.LOC),1310400518(schema admins@DOM.LOC),1310400572(denied rodc password replication group@DOM.LOC)</source> | ||
+ | |||
[[Категория:SSSD]] | [[Категория:SSSD]] | ||
[[Категория:Active Directory]] | [[Категория:Active Directory]] |
Версия 02:45, 19 декабря 2016
Подготовка клиентской станции (подключение к домену AD), настройка и установка аутентификации и авторизации помощью сервиса SSSD.
Содержание |
Подключение к домену
Настройки сети
Для подключением к домену проводим проверку настроек сети:
- в качестве первичного DNS (первая запись nameserver в /etc/resolv.conf) должен быть указан DNS-сервер домена
domain dom.loc search dom.loc nameserver 192.168.1.148
обычно, в таком качестве выступает один или несколько, контроллеров домена:
$ host dom.loc dom.loc has address 192.168.1.148
- имя подключаемого, клиентского узла должно быть должно быть определено, как FQDN. Например, для рабочей станции client2 в домене dom.loc:
$ hostname
client2.dom.loc
Настройки kerberos
Далее проверяем клиентские настройки kerberos через DNS. В данном случае, для домена dom.loc.:
$ dig _kerberos._udp.dom.loc SRV | grep ^_kerberos _kerberos._udp.dom.loc. 900 IN SRV 0 100 88 server.dom.loc. $ dig _kerberos._tcp.dom.loc SRV | grep ^_kerberos _kerberos._tcp.dom.loc. 900 IN SRV 0 100 88 server.dom.loc.
И задаем их в файле /etc/krb5.conf
- kerberos-имя домена ("рилма", realm):
default_realm = DOM.LOC
- отключаем поиска kerberos-имени домена через DNS:
dns_lookup_realm = false
- оставляем (или включаем) поиск kerberos-настроек домена через DNS:
dns_lookup_kdc = true
Если настройки сети и kerberos выполнены правильно, то мы может получить kerberos TGT от контроллера домена:
$ kinit administrator Password for administrator@DOM.LOC: Warning: Your password will expire in 21 days on Пн 09 янв 2017 15:35:39 $ klist Ticket cache: KEYRING:persistent:500:krb_ccache_Bw75rEI Default principal: administrator@DOM.LOC Valid starting Expires Service principal 19.12.2016 04:13:25 19.12.2016 14:13:25 krbtgt/DOM.LOC@DOM.LOC renew until 20.12.2016 04:13:18
Настройки samba
Для подключения рабочей станции в домену требуется утилита net из пакета samba-common-tools, кроме того стоит сразу установить пакет samba-client с набором клиентских утилит:
# apt-get install samba-client
В файле, минимально, необходимо задать следующие параметры в секции [global]:
- kerberos-имя домена:
realm = DOM.LOC
- краткое имя домена, соответствующее имени рабочей группы:
workgroup = DOM
- имя рабочей станции в сетевом окружении:
netbios name = CLIENT2
- уровень безопасности Active Directory:
security = ADS
- Метод хранения kerberos-ключей рабочей станции:
kerberos method = system keytab
- алгоритм преобразования SID'ов:
idmap config * : backend = tdb
Набор полученных настроек можно проверить с помощью утилиты testparm:
$ testparm Load smb config files from /etc/samba/smb.conf rlimit_max: increasing rlimit_max (1024) to minimum Windows limit (16384) Processing section "[homes]" Processing section "[printers]" Loaded services file OK. Server role: ROLE_DOMAIN_MEMBER Press enter to see a dump of your service definitions # Global parameters [global] realm = DOM.LOC server string = Samba Server Version %v workgroup = DOM log file = /var/log/samba/log.%m max log size = 50 kerberos method = system keytab security = ADS idmap config * : backend = tdb cups options = raw [homes] comment = Home Directories browseable = No read only = No [printers] comment = All Printers path = /var/spool/samba browseable = No printable = Yes
Подключение к домену
# net ads join -U administrator Enter administrator's password: Using short domain name -- DOM Joined 'CLIENT2' to dns domain 'dom.loc'
Проверка наличия kerberos-ключей для рабочей станции
# klist -k -e Keytab name: FILE:/etc/krb5.keytab KVNO Principal ---- -------------------------------------------------------------------------- 7 host/client2.dom.loc@DOM.LOC (des-cbc-crc) 7 host/CLIENT2@DOM.LOC (des-cbc-crc) 7 host/client2.dom.loc@DOM.LOC (des-cbc-md5) 7 host/CLIENT2@DOM.LOC (des-cbc-md5) 7 host/client2.dom.loc@DOM.LOC (aes128-cts-hmac-sha1-96) 7 host/CLIENT2@DOM.LOC (aes128-cts-hmac-sha1-96) 7 host/client2.dom.loc@DOM.LOC (aes256-cts-hmac-sha1-96) 7 host/CLIENT2@DOM.LOC (aes256-cts-hmac-sha1-96) 7 host/client2.dom.loc@DOM.LOC (arcfour-hmac) 7 host/CLIENT2@DOM.LOC (arcfour-hmac) 7 CLIENT2$@DOM.LOC (des-cbc-crc) 7 CLIENT2$@DOM.LOC (des-cbc-md5) 7 CLIENT2$@DOM.LOC (aes128-cts-hmac-sha1-96) 7 CLIENT2$@DOM.LOC (aes256-cts-hmac-sha1-96) 7 CLIENT2$@DOM.LOC (arcfour-hmac)
Настройка SSSD
Установка sssd-модуля
Для работы с Active Directory в SSSD имеется специальный AD-провайдер:
apt-get install sssd-ad
Минимальный конфигурационный файл (/etc/sssd/sssd.conf) для sssd-ad выглядит следующим образом:
[sssd] config_file_version = 2 services = nss, pam domains = DOM.LOC debug_level = 1 [nss] debug_level = 1 [pam] debug_level = 1 [domain/DOM.LOC] id_provider = ad auth_provider = ad chpass_provider = ad ; ldap_id_mapping = False default_shell = /bin/bash fallback_homedir = /home/%d/%u ; use_fully_qualified_names = True
Опция ldap_id_mapping = False позволяет включить использование POSIX атрибутов, определённых в Active Directory, вместо встроенной, однозначной трансляции SID'ов. Основная проблема применения POSIX-атрибутов состоит в том, что они могут быть не заданы. В этом случае сервис sssd не загрузиться.
Опция use_fully_qualified_names = True включает режим полных имён (включая домен) для пользователей и групп.
Настройка авторизации
Авторизационные NSS-базы GLibc настраиваются с в файле /etc/nsswitch.conf При использовании sssd, требуется внести исправления в следующие строчки:
# grep sss /etc/nsswitch.conf passwd: files sss shadow: tcb files sss group: files sss services: files sss netgroup: files sss
Настройка аутентификации
Для изменения настроек аутентификации (параметров PAM) в ALTLinux используется утилита control:
# control system-auth sss
Запуск и проверка сервиса sssd
Если все настройки выполнены правильно, то после запуска сервиса sssd:
# service sssd start
будут доступны авторизационные данные для пользователя administrator:
# getent passwd administrator administrator:*:1310400500:1310400513:Administrator:/home/DOM.LOC/administrator:/bin/bash # id administrator uid=1310400500(administrator) gid=1310400513(domain users) группы=1310400513(domain users),1310400520(group policy creator owners),1310400519(enterprise admins),1310400512(domain admins),1310400518(schema admins),1310400572(denied rodc password replication group) # su - administrator [administrator@client2 ~]$ whoami administrator [administrator@client2 ~]$ pwd /home/DOM.LOC/administrator
Или для administrator@dom.loc, если установлена опция use_fully_qualified_names = True:
# id administrator@dom.loc uid=1310400500(administrator@DOM.LOC) gid=1310400513(domain users@DOM.LOC) группы=1310400513(domain users@DOM.LOC),1310400520(group policy creator owners@DOM.LOC),1310400519(enterprise admins@DOM.LOC),1310400512(domain admins@DOM.LOC),1310400518(schema admins@DOM.LOC),1310400572(denied rodc password replication group@DOM.LOC)