ActiveDirectory/Login: различия между версиями
Нет описания правки |
|||
(не показано 47 промежуточных версий 12 участников) | |||
Строка 1: | Строка 1: | ||
Инструкция по вводу рабочей станции под управлением ALT Linux в домен Active Directory (работающий под Windows или под [[SambaAD|Samba в режиме AD DC]]). | Инструкция по вводу рабочей станции под управлением ALT Linux в домен Active Directory (работающий под Windows или под [[SambaAD|Samba в режиме AD DC]]). | ||
Устаревшая инструкция: [[Ввод в домен на базе Windows 2003]] | Устаревшая инструкция: [[Ввод в домен на базе Windows 2003]] | ||
{{Attention|Если Ваш домен имеет суффикс .local - необходимо отключить avahi-daemon (подробнее [[ActiveDirectory/Login#Примечания|ниже, пункт 2 примечаний]]).}} | |||
'''Параметры домена''' | '''Параметры домена''' | ||
Строка 11: | Строка 13: | ||
|Рабочая группа||SCHOOL | |Рабочая группа||SCHOOL | ||
|- | |- | ||
|Имя компьютера в Netbios|| | |Имя компьютера в Netbios||WS | ||
|- | |- | ||
|Имя пользователя-администратора||Administrator | |Имя пользователя-администратора||Administrator | ||
Строка 17: | Строка 19: | ||
|Пароль администратора||Pa$$word | |Пароль администратора||Pa$$word | ||
|} | |} | ||
<div id="prep"></div> | <div id="prep"></div> | ||
= Подготовка = | = Подготовка = | ||
Строка 48: | Строка 53: | ||
===== Способ 2: По протоколу [https://tools.ietf.org/html/rfc867 RFC 867] ===== | ===== Способ 2: По протоколу [https://tools.ietf.org/html/rfc867 RFC 867] ===== | ||
На сервере включается через xinetd daytime-tcp <ref> | На сервере включается через xinetd daytime-tcp <ref>Cм получение прав root: </ref>: | ||
# chkconfig --list | grep daytime-tcp | # chkconfig --list | grep daytime-tcp | ||
Строка 57: | Строка 62: | ||
chkconfig settime-rfc867 on | chkconfig settime-rfc867 on | ||
service settime-rfc867 start | service settime-rfc867 start | ||
===== Способ 3: Через Центр управления системой → Дата и время ===== | ===== Способ 3: Через Центр управления системой → Дата и время ===== | ||
Строка 68: | Строка 71: | ||
ntpdate pool.ntp.org | ntpdate pool.ntp.org | ||
<div id="setup"></div> | <div id="setup"></div> | ||
= Ввод в домен в Центре управления системой = | |||
= Ввод в домен в Центре управления системой = | |||
Предварительная настройка - [[PreliminaryActions]] | |||
В Центре управления системой перейдите в раздел {{path|Пользователи → Аутентификация}} | В Центре управления системой перейдите в раздел {{path|Пользователи → Аутентификация}} | ||
Для ввода компьютера в Active Directory потребуется установить пакет {{pkg|task-auth-ad-sssd}} и все его зависимости. | Для ввода компьютера в Active Directory потребуется установить пакет {{pkg|task-auth-ad-sssd}} и все его зависимости. | ||
[[Файл:Qwe.png|мини|слева|x400px|Clear|]] | |||
[[Файл: | <div style="clear:{{{1|both}}};"></div> | ||
Выберите пункт «Домен Active Directory» и заполните поля. Нажмите кнопку «Применить». | Выберите пункт «Домен Active Directory» и заполните поля. Нажмите кнопку «Применить». | ||
Строка 83: | Строка 89: | ||
Joined 'HOST-15' to dns domain 'school.alt'</pre> | Joined 'HOST-15' to dns domain 'school.alt'</pre> | ||
<div id="check"></div> | <div id="check"></div> | ||
= Настройка SSSD = | |||
См. статью [[SSSD/AD]] | |||
= Проверка работы = | = Проверка работы = | ||
Строка 105: | Строка 114: | ||
= Примечания = | = Примечания = | ||
# Ограничение: имя домена должно указывать на DC. Если это не так, поправляйте /etc/krb5.conf и вводите вручную, либо в файл /etc/hosts добавьте строку с контроллером домена (кдц) ДОМЕН.local и перезапустите сеть. После этого проверьте из командной строки ping ДОМЕН.local и вводите в домен | # Ограничение: имя домена должно указывать на DC. Если это не так, поправляйте /etc/krb5.conf и вводите вручную, либо в файл /etc/hosts добавьте строку с контроллером домена (кдц) ДОМЕН.local и перезапустите сеть. После этого проверьте из командной строки ping ДОМЕН.local и вводите в домен | ||
# При указании домена, имеющего суффикс '''.local''', потребуется на сервере и подключаемых компьютерах под управлением Linux <u>'''отключить''' службу {{cmd|avahi-daemon}}</u> (доменная зона "local." используется в технологии zeroconf). | # При указании домена, имеющего суффикс '''.local''', потребуется на сервере и подключаемых компьютерах под управлением Linux <u>'''отключить''' службу {{cmd|avahi-daemon}}</u> - <code># chkconfig avahi-daemon off; reboot </code> (доменная зона "local." используется в технологии zeroconf). | ||
# Следите за синхронизацией времени на клиенте и сервере. | # Следите за синхронизацией времени на клиенте и сервере. | ||
# Для предотвращения кэширования имён пользователя отключите службу {{cmd|nscd}}. | # Для предотвращения кэширования имён пользователя отключите службу {{cmd|nscd}}. | ||
# В новых версиях Samba до запуска службы {{cmd|winbind}} должна запускаться служба {{cmd|smb}}. | # В новых версиях Samba до запуска службы {{cmd|winbind}} должна запускаться служба {{cmd|smb}}. | ||
# Если возникает проблема просмотра билетов Kerberos под доменным пользователем, скопируйте правильный krb5.conf из samba: | # Если возникает проблема просмотра билетов Kerberos под доменным пользователем, скопируйте правильный krb5.conf из samba: <source lang="bash">rm -f /etc/krb5.conf | ||
<source lang="bash">rm -f /etc/krb5.conf | |||
cp /var/lib/samba/smb_krb5/krb5.conf* /etc/krb5.conf</source> | cp /var/lib/samba/smb_krb5/krb5.conf* /etc/krb5.conf</source> | ||
# Если у вас домен Windows 2003 (не R2), то в директивы default_tgs_enctypes, default_tkt_enctypes и preferred_enctypes файла /etc/krb5.conf добавьте ещё DES3-CBC-SHA1. | |||
# Для возможности входа в ОС под доменным пользователем при его недоступности можно включить опцию кэширования учетных данных в конфиге SSSD (подробнее [https://www.altlinux.org/SSSD/AD#.D0.A3.D1.81.D1.82.D0.B0.D0.BD.D0.BE.D0.B2.D0.BA.D0.B0_sssd-.D0.BC.D0.BE.D0.B4.D1.83.D0.BB.D1.8F тут], опция '''cache_credentials''') | |||
= Настройка окна входа = | = Настройка окна входа = | ||
Строка 126: | Строка 136: | ||
В новых версиях lightdm-gtk-greeter можно указать кнопки явно: | В новых версиях lightdm-gtk-greeter можно указать кнопки явно: | ||
show-indicators=a11y;power | show-indicators=~a11y;~power | ||
Полный перечень доступных кнопок: | Полный перечень доступных кнопок: | ||
show-indicators=a11y;power;session;language | show-indicators=~a11y;~power;~session;~language | ||
= Отображение глобальных групп на локальные = | = Отображение глобальных групп на локальные = | ||
{{note|Первые два пункта данного раздела выполняются автоматически, если АРМ вводится в домен с помощью {{pkg|task-auth-ad-sssd}}}} | |||
== Установка модуля ролей == | == Установка модуля ролей == | ||
apt-get install libnss-role | apt-get install libnss-role | ||
Строка 138: | Строка 148: | ||
== Настройка ролей и привилегий == | == Настройка ролей и привилегий == | ||
Добавляем роль локальных администраторов: | Добавляем роль локальных администраторов: | ||
groupadd -r localadmins | # groupadd -r localadmins | ||
{{Note|Лучше использовать группу localadmins (вместо admins) по избежание конфликта с группой admins во FreeIPA}} | {{Note|Лучше использовать группу localadmins (вместо admins) по избежание конфликта с группой admins во FreeIPA}} | ||
Создаём привилегию на право удалённого доступа (по протоколу ssh): | Создаём привилегию на право удалённого доступа (по протоколу ssh): | ||
groupadd -r remote | # groupadd -r remote | ||
Включаем удалённый доступ только для группы remote: | Включаем удалённый доступ только для группы remote: | ||
control sshd-allow-groups enabled | # control sshd-allow-groups enabled | ||
sed -i 's/AllowGroups.*/AllowGroups = remote/' /etc/openssh/sshd_config | # sed -i 's/AllowGroups.*/AllowGroups = remote/' /etc/openssh/sshd_config | ||
Настраиваем список привилегий для пользователей (для роли users): | Настраиваем список привилегий для пользователей (для роли users): | ||
roleadd users cdwriter cdrom audio proc radio camera floppy xgrp scanner uucp fuse | # roleadd users cdwriter cdrom audio proc radio camera floppy xgrp scanner uucp fuse | ||
Настраиваем список привилегий для администраторов (для роли admins): | Настраиваем список привилегий для администраторов (для роли admins): | ||
roleadd localadmins wheel remote vboxusers | # roleadd localadmins wheel remote vboxusers | ||
Настраиваем отображение локальных привилегий, назначенных локальным ролям, на глобальные группы безопасности: | Настраиваем отображение локальных привилегий, назначенных локальным ролям, на глобальные группы безопасности: | ||
roleadd 'Domain Users' users | # roleadd 'Domain Users' users | ||
roleadd 'Domain Admins' localadmins | или | ||
# roleadd 'Пользователи домена' users | |||
Далее | |||
# roleadd 'Domain Admins' localadmins | |||
или | |||
# roleadd 'Администраторы домена' localadmins | |||
Просматриваем список назначенных ролей и привилегий: | Просматриваем список назначенных ролей и привилегий: | ||
rolelst | # rolelst | ||
id ivan | # id ivan | ||
Данная настройка назначает заданный список локальных групп (привилегий) всем пользователям, входящим в заданные локальные группы (роли). А также назначает локальные роли для глобальных групп в домене. | Данная настройка назначает заданный список локальных групп (привилегий) всем пользователям, входящим в заданные локальные группы (роли). А также назначает локальные роли для глобальных групп в домене. | ||
== Дополнительные роли == | |||
Соответственно, если надо выдать права администраторов АРМ пользователям, которые не являются Domain Admins, | |||
то нужно завести новую группу в AD (например, PC Admins), добавить туда необходимых пользователей. | |||
Затем на АРМ добавить роль для данной группы: | |||
# roleadd 'PC Admins' localadmins | |||
# rolelst | |||
users: cdwriter cdrom audio video proc radio camera floppy xgrp scanner uucp vboxusers fuse tsusers | |||
localadmins: wheel | |||
domain users: users | |||
domain admins: localadmins | |||
pc admins: localadmins | |||
После этого (и после разрешения [[sudo]] для группы wheel) под пользователем входящим в группу PC Admins | |||
можно запускать команду повышения прав sudo. | |||
<pre>user@alt8 ~ $ su - petrov | |||
Password: | |||
petrov@alt8 ~ $ id | |||
uid=445010929(petrov) gid=445000513(domain users) группы=445000513(domain users),10(wheel),14(uucp),19(proc), | |||
22(cdrom),71(floppy),80(cdwriter),81(audio),83(radio),100(users),458(tsusers), 459(localadmins),466(fuse),468(video), | |||
480(camera),492(vboxusers),498(xgrp),499(scanner),445010930(pc admins) | |||
petrov@alt8 ~ $ sudo apt-get update | |||
Пароль: | |||
Получено: 1 http://ftp.altlinux.org p8/branch/x86_64 release [880B] | |||
Получено: 2 http://ftp.altlinux.org p8/branch/x86_64-i586 release [537B] | |||
Получено: 3 http://ftp.altlinux.org p8/branch/noarch release [673B] | |||
Получено 2090B за 0s (36,9kB/s). | |||
Найдено http://ftp.altlinux.org p8/branch/x86_64/classic pkglist | |||
Найдено http://ftp.altlinux.org p8/branch/x86_64/classic release | |||
Найдено http://ftp.altlinux.org p8/branch/x86_64-i586/classic pkglist | |||
Найдено http://ftp.altlinux.org p8/branch/x86_64-i586/classic release | |||
Найдено http://ftp.altlinux.org p8/branch/noarch/classic pkglist | |||
Найдено http://ftp.altlinux.org p8/branch/noarch/classic release | |||
Чтение списков пакетов... Завершено | |||
Построение дерева зависимостей... Завершено | |||
</pre> | |||
= Подключение файловых ресурсов = | = Подключение файловых ресурсов = | ||
Строка 169: | Строка 220: | ||
Рассматриваемые способы позволяют подключать файловые ресурсы (file shares) для доменного пользователя без повторного ввода пароля (SSO, Single Sign-On). | Рассматриваемые способы позволяют подключать файловые ресурсы (file shares) для доменного пользователя без повторного ввода пароля (SSO, Single Sign-On). | ||
== Через | == Через gio == | ||
{{note|Способ актуален для дистрибутивов, использующих gvfs (например, Кентавр, Simply Linux, Basealt Workstation, СПТ).}} | {{note|Способ актуален для дистрибутивов, использующих gio (ранее — gvfs) (например, Кентавр, Simply Linux, Basealt Workstation, СПТ).}} | ||
Недостаток такого способа — необходимо открыть ресурс в файловом менеджере (Caja, Pcmanfm). Однако можно открывать любые ресурсы на любых серверах, входящие в домен Active Directory. | Недостаток такого способа — необходимо открыть ресурс в файловом менеджере (Caja, Pcmanfm). Однако можно открывать любые ресурсы на любых серверах, входящие в домен Active Directory. | ||
1. Устанавливаем необходимые пакеты (с правами root): | 1. Устанавливаем необходимые пакеты (с правами root): | ||
apt-get install fuse-gvfs gvfs-backend-smb | apt-get install fuse-gvfs gvfs-backend-smb libgio | ||
2. Включаем | 2. Включаем пользователя в группу ''fuse'' (с правами root): | ||
gpasswd -a <пользователь> fuse | gpasswd -a <пользователь> fuse | ||
{{Attention|Начиная с p9 членства в группе fuse недостаточно, требуется разрешить для всех доступ к fuse под root: | |||
{{ | |||
control fusermount public | control fusermount public | ||
}} | }} | ||
3. Входим доменным пользователем | 3. Входим доменным пользователем | ||
4. Открываем ресурс в файловом менеджере (например, по адресу {{path|smb://server/sysvol}}). Ресурс смонтирован по пути {{path|/run/<uid_пользователя>/gvfs}} | 4. Открываем ресурс в файловом менеджере (например, по адресу {{path|smb://server/sysvol}}). Ресурс смонтирован по пути {{path|/var/run/<uid_пользователя>/gvfs}} или /var/run/user/<uid_пользователя>/gvfs/smb-share:server=сервер,share=ресурс | ||
Другой вариант (полезно для скриптов в автозапуске): | Другой вариант (полезно для скриптов в автозапуске): | ||
gio mount smb://server/sysvol/ | |||
{{note|Если необходимо открывать что-то с ресурса в WINE, в {{cmd|winecfg}} добавьте диск с путём {{path|/run/<uid_пользователя>/gvfs}}.}} | {{note|Если необходимо открывать что-то с ресурса в WINE, в {{cmd|winecfg}} добавьте диск с путём {{path|/var/run/<uid_пользователя>/gvfs}}.}} | ||
== Через pam_mount == | == Через pam_mount == | ||
Строка 220: | Строка 268: | ||
{{Attention|Обязательно указывайте настоящее имя сервера в параметре {{term|server}}, а не имя домена}} | {{Attention|Обязательно указывайте настоящее имя сервера в параметре {{term|server}}, а не имя домена}} | ||
{{Attention|По умолчанию для монтирования используется smb версии 1.0, если у вас он отключен, то укажите в параметрах версию 2 или 3. | |||
<source lang="xml"><volume uid="10000-2000200000" fstype="cifs" server="c228" path="sysvol" mountpoint="~/share" options="sec=krb5,vers=2.0,cruid=%(USERUID),nounix,uid=%(USERUID),gid=%(USERGID),file_mode=0664,dir_mode=0775" /></source> | |||
}} | |||
Для проверки можно попробовать смонтировать ресурс в сессии: | |||
<source> mount.cifs //server/share /mnt/ -o vers=2.0,user=altlinux</source> | |||
Также можно проверить доступность ресурса с помощью smbclient, например: | |||
<source> | |||
smbclient -L server -U altlinux -m SMB2 | |||
</source> | |||
== Через autofs == | |||
В этом случае заданный ресурс подключается <u>автоматически при каждом обращении</u> пользователя. И отключается после определенного времени бездействия (определяется конфигуацией Autofs). | |||
==== Основная статья AutoFS ==== | |||
https://www.altlinux.org/Autofs | |||
==== Для дистрибутивов c KDE ==== | |||
1. Устанавливаем {{pkg|kde5-autofs-shares}}: | |||
apt-get install kde5-autofs-shares | |||
2. Следуем инструкции по подключению в разделе [[Альт_Рабочая_станция_К_8_советы]]. | |||
= Групповые политики = | = Групповые политики = | ||
Строка 246: | Строка 316: | ||
{{Note|Планируется поддержка других групповых политик средствами подключаемых модулей}} | {{Note|Планируется поддержка других групповых политик средствами подключаемых модулей}} | ||
{{примечания}} | {{примечания}} | ||
{{note| Получение прав root см. [[root]] }} | |||
== Ссылки по групповым политикам == | == Ссылки по групповым политикам == | ||
Строка 262: | Строка 333: | ||
{{Category navigation|title=Домен|category=Samba|sortkey={{SUBPAGENAME}}}} | |||
{{Category navigation|title=Домен|category=Домен|sortkey={{SUBPAGENAME}}}} | {{Category navigation|title=Домен|category=Домен|sortkey={{SUBPAGENAME}}}} | ||
{{Category navigation|title=HOWTO|category=HOWTO|sortkey={{SUBPAGENAME}}}} | {{Category navigation|title=HOWTO|category=HOWTO|sortkey={{SUBPAGENAME}}}} | ||
[[Категория:Active Directory]] | [[Категория:Active Directory]] |
Версия от 05:35, 2 июня 2020
Инструкция по вводу рабочей станции под управлением ALT Linux в домен Active Directory (работающий под Windows или под Samba в режиме AD DC). Устаревшая инструкция: Ввод в домен на базе Windows 2003
Параметры домена
Параметр | Значение |
---|---|
Имя домена | SCHOOL.ALT |
Рабочая группа | SCHOOL |
Имя компьютера в Netbios | WS |
Имя пользователя-администратора | Administrator |
Пароль администратора | Pa$$word |
Подготовка
Установка пакетов
С версии alterator-auth-0.31-alt1
apt-get install task-auth-ad-sssd
apt-get install alterator-auth sssd-ad samba-common-tools
Требуемые версии:
- pam-config >= 1.7.0-alt1
- alterator-auth >= 0.26-alt1
Возможно, следует обновить установленный дистрибутив из репозитория.
Синхронизация времени
С версии alterator-auth 0.28 синхронизация времени производится автоматически с контроллером домена.
Для более ранних версий:
Способ 1: Через net time
net time set -S <имя домена>
Способ 2: По протоколу RFC 867
На сервере включается через xinetd daytime-tcp [1]:
# chkconfig --list | grep daytime-tcp daytime-tcp: вкл
А на клиенте — служба settime-rfc867:
chkconfig settime-rfc867 on service settime-rfc867 start
Способ 3: Через Центр управления системой → Дата и время
Включите флажок «Получать точное время с NTP-сервера» и укажите в поле справа pool.ntp.org. После этого нажмите кнопку «Применить».
Способ 4: Через ntpdate
ntpdate pool.ntp.org
Ввод в домен в Центре управления системой
Предварительная настройка - PreliminaryActions
В Центре управления системой перейдите в раздел Пользователи → Аутентификация
Для ввода компьютера в Active Directory потребуется установить пакет task-auth-ad-sssd и все его зависимости.
Выберите пункт «Домен Active Directory» и заполните поля. Нажмите кнопку «Применить».
Ввод в домен в командной строке
# system-auth write ad school.alt host-15 school 'administrator' 'Pa$$word' Joined 'HOST-15' to dns domain 'school.alt'
Настройка SSSD
См. статью SSSD/AD
Проверка работы
# getent passwd ivan ivan:*:10005:10002:ivan:/home/SCHOOL/ivan:/bin/bash # net ads info LDAP server: 192.168.1.1 LDAP server name: c228.school.alt Realm: SCHOOL.ALT Bind Path: dc=SCHOOL,dc=ALT LDAP port: 389 Server time: Ср, 22 апр 2015 16:22:47 MSK KDC server: 192.168.1.1 Server time offset: -1 # net ads testjoin Join is OK
# getent passwd
на клиентской машине. Этот функционал отключен по-умолчанию для того чтобы сократить нагрузку на серверы. Поэтому для проверки необходимо точно указать имя пользователя # getent passwd имя_пользователя
. Список пользователей можно посмотреть на сервере командой # samba-tool user list
Примечания
- Ограничение: имя домена должно указывать на DC. Если это не так, поправляйте /etc/krb5.conf и вводите вручную, либо в файл /etc/hosts добавьте строку с контроллером домена (кдц) ДОМЕН.local и перезапустите сеть. После этого проверьте из командной строки ping ДОМЕН.local и вводите в домен
- При указании домена, имеющего суффикс .local, потребуется на сервере и подключаемых компьютерах под управлением Linux отключить службу avahi-daemon -
# chkconfig avahi-daemon off; reboot
(доменная зона "local." используется в технологии zeroconf). - Следите за синхронизацией времени на клиенте и сервере.
- Для предотвращения кэширования имён пользователя отключите службу nscd.
- В новых версиях Samba до запуска службы winbind должна запускаться служба smb.
- Если возникает проблема просмотра билетов Kerberos под доменным пользователем, скопируйте правильный krb5.conf из samba:
rm -f /etc/krb5.conf cp /var/lib/samba/smb_krb5/krb5.conf* /etc/krb5.conf
- Если у вас домен Windows 2003 (не R2), то в директивы default_tgs_enctypes, default_tkt_enctypes и preferred_enctypes файла /etc/krb5.conf добавьте ещё DES3-CBC-SHA1.
- Для возможности входа в ОС под доменным пользователем при его недоступности можно включить опцию кэширования учетных данных в конфиге SSSD (подробнее тут, опция cache_credentials)
Настройка окна входа
Настройка LightDM
В /etc/lightdm/lightdm.conf раскомментируйте строку в группе [SeatDefaults]:
greeter-hide-users=true
Это позволит вводить имя пользователя вручную, а не прокручивать огромный список доступных доменныx пользователей.
Также полезно выключить выбор языка. В файле /etc/lightdm/lightdm-gtk-greeter.conf в группе [greeter] укажите
show-language-selector=false
В новых версиях lightdm-gtk-greeter можно указать кнопки явно:
show-indicators=~a11y;~power
Полный перечень доступных кнопок:
show-indicators=~a11y;~power;~session;~language
Отображение глобальных групп на локальные
Установка модуля ролей
apt-get install libnss-role
Настройка ролей и привилегий
Добавляем роль локальных администраторов:
# groupadd -r localadmins
Создаём привилегию на право удалённого доступа (по протоколу ssh):
# groupadd -r remote
Включаем удалённый доступ только для группы remote:
# control sshd-allow-groups enabled # sed -i 's/AllowGroups.*/AllowGroups = remote/' /etc/openssh/sshd_config
Настраиваем список привилегий для пользователей (для роли users):
# roleadd users cdwriter cdrom audio proc radio camera floppy xgrp scanner uucp fuse
Настраиваем список привилегий для администраторов (для роли admins):
# roleadd localadmins wheel remote vboxusers
Настраиваем отображение локальных привилегий, назначенных локальным ролям, на глобальные группы безопасности:
# roleadd 'Domain Users' users
или
# roleadd 'Пользователи домена' users
Далее
# roleadd 'Domain Admins' localadmins
или
# roleadd 'Администраторы домена' localadmins
Просматриваем список назначенных ролей и привилегий:
# rolelst # id ivan
Данная настройка назначает заданный список локальных групп (привилегий) всем пользователям, входящим в заданные локальные группы (роли). А также назначает локальные роли для глобальных групп в домене.
Дополнительные роли
Соответственно, если надо выдать права администраторов АРМ пользователям, которые не являются Domain Admins, то нужно завести новую группу в AD (например, PC Admins), добавить туда необходимых пользователей. Затем на АРМ добавить роль для данной группы:
# roleadd 'PC Admins' localadmins # rolelst users: cdwriter cdrom audio video proc radio camera floppy xgrp scanner uucp vboxusers fuse tsusers localadmins: wheel domain users: users domain admins: localadmins pc admins: localadmins
После этого (и после разрешения sudo для группы wheel) под пользователем входящим в группу PC Admins можно запускать команду повышения прав sudo.
user@alt8 ~ $ su - petrov Password: petrov@alt8 ~ $ id uid=445010929(petrov) gid=445000513(domain users) группы=445000513(domain users),10(wheel),14(uucp),19(proc), 22(cdrom),71(floppy),80(cdwriter),81(audio),83(radio),100(users),458(tsusers), 459(localadmins),466(fuse),468(video), 480(camera),492(vboxusers),498(xgrp),499(scanner),445010930(pc admins) petrov@alt8 ~ $ sudo apt-get update Пароль: Получено: 1 http://ftp.altlinux.org p8/branch/x86_64 release [880B] Получено: 2 http://ftp.altlinux.org p8/branch/x86_64-i586 release [537B] Получено: 3 http://ftp.altlinux.org p8/branch/noarch release [673B] Получено 2090B за 0s (36,9kB/s). Найдено http://ftp.altlinux.org p8/branch/x86_64/classic pkglist Найдено http://ftp.altlinux.org p8/branch/x86_64/classic release Найдено http://ftp.altlinux.org p8/branch/x86_64-i586/classic pkglist Найдено http://ftp.altlinux.org p8/branch/x86_64-i586/classic release Найдено http://ftp.altlinux.org p8/branch/noarch/classic pkglist Найдено http://ftp.altlinux.org p8/branch/noarch/classic release Чтение списков пакетов... Завершено Построение дерева зависимостей... Завершено
Подключение файловых ресурсов
Рассматриваемые способы позволяют подключать файловые ресурсы (file shares) для доменного пользователя без повторного ввода пароля (SSO, Single Sign-On).
Через gio
Недостаток такого способа — необходимо открыть ресурс в файловом менеджере (Caja, Pcmanfm). Однако можно открывать любые ресурсы на любых серверах, входящие в домен Active Directory.
1. Устанавливаем необходимые пакеты (с правами root):
apt-get install fuse-gvfs gvfs-backend-smb libgio
2. Включаем пользователя в группу fuse (с правами root):
gpasswd -a <пользователь> fuse
control fusermount public
3. Входим доменным пользователем
4. Открываем ресурс в файловом менеджере (например, по адресу smb://server/sysvol). Ресурс смонтирован по пути /var/run/<uid_пользователя>/gvfs или /var/run/user/<uid_пользователя>/gvfs/smb-share:server=сервер,share=ресурс
Другой вариант (полезно для скриптов в автозапуске):
gio mount smb://server/sysvol/
Через pam_mount
В этом случае заданный ресурс подключается с заданного сервера автоматически при каждом входе доменным пользователем.
1. Устанавливаем pam_mount:
apt-get install pam_mount
2. Прописываем pam_mount в схему /etc/pam.d/system-auth-sss:
(перед auth required pam_sss.so)
auth optional pam_mount.so
и в секцию session:
session optional pam_mount.so
3. Устанавливаем правило монтирования ресурса в файле /etc/security/pam_mount.conf.xml (перед тегом <cifsmount>):
<volume uid="10000-2000200000" fstype="cifs" server="c228" path="sysvol" mountpoint="~/share" options="sec=krb5,cruid=%(USERUID),nounix,uid=%(USERUID),gid=%(USERGID),file_mode=0664,dir_mode=0775" />
где
- uid="10000-2000200000" — диапазон присваиваемых для доменных пользователей UID (подходит и для Winbind и для SSSD)
- server="c228" — имя сервера с ресурсом
- path="sysvol" — имя файлового ресурса
- mountpoint="~/share" — путь монтирования в домашней папке пользователя
<volume uid="10000-2000200000" fstype="cifs" server="c228" path="sysvol" mountpoint="~/share" options="sec=krb5,vers=2.0,cruid=%(USERUID),nounix,uid=%(USERUID),gid=%(USERGID),file_mode=0664,dir_mode=0775" />
Для проверки можно попробовать смонтировать ресурс в сессии:
mount.cifs //server/share /mnt/ -o vers=2.0,user=altlinux
Также можно проверить доступность ресурса с помощью smbclient, например:
smbclient -L server -U altlinux -m SMB2
Через autofs
В этом случае заданный ресурс подключается автоматически при каждом обращении пользователя. И отключается после определенного времени бездействия (определяется конфигуацией Autofs).
Основная статья AutoFS
https://www.altlinux.org/Autofs
Для дистрибутивов c KDE
1. Устанавливаем kde5-autofs-shares:
apt-get install kde5-autofs-shares
2. Следуем инструкции по подключению в разделе Альт_Рабочая_станция_К_8_советы.
Групповые политики
Групповые политики (GPO) на Linux применяются только контроль входа через SSSD и средства Centrify.
SSSD
SSSD имеет внутреннюю поддержку следующих групповых политик:
Политика |
---|
Allow log on locally |
Allow log on through Remote Desktop Services |
Access this computer from the network |
Allow log on as a batch job |
Allow log on as a service |
- ↑ Cм получение прав root:
Ссылки по групповым политикам
- https://fedoraproject.org/wiki/Changes/SssdGpoBasedAccessControl
- http://wiki.eri.ucsb.edu/stadm/AD_Samba4
- http://centrifying.blogspot.ru/2014/01/basics-using-group-policy-on-unixlinux.html
- https://www.youtube.com/watch?v=2cJWnUZ8qLI
Ссылки
- https://wiki.archlinux.org/index.php/Active_Directory_Integration
- Ввод в домен на базе Windows 2003
- https://fedorahosted.org/sssd/wiki/Configuring_sssd_with_ad_server
- https://wiki.samba.org/index.php/Setup_Samba_as_an_AD_Domain_Member