SSSD/AD: различия между версиями
(не показано 29 промежуточных версий 14 участников) | |||
Строка 1: | Строка 1: | ||
Подготовка клиентской станции (подключение к домену AD), настройка и установка аутентификации и авторизации помощью сервиса SSSD. | Подготовка клиентской станции (подключение к домену AD), настройка и установка аутентификации и авторизации c помощью сервиса SSSD. | ||
= Подключение к домену = | == Подключение к домену == | ||
Нижеописанная процедура настройки автоматизирована с помощью пакета {{pkg|task-auth-ad-sssd}} и введения в домен через ЦУС (acc) — {{pkg|alterator-auth}} версии >=0.31 | |||
$ su - | |||
# apt-get update; apt-get install task-auth-ad-sssd | |||
# acc | |||
{{note|Однако ознакомиться со всей статьей никто не запрещает.}} | |||
==Настройки сети== | === Настройки сети === | ||
Для подключением к домену проводим проверку настроек сети: | Для подключением к домену проводим проверку настроек сети: | ||
* в качестве первичного DNS (первая запись nameserver в /etc/resolv.conf) должен быть указан DNS-сервер домена | * в качестве первичного DNS (первая запись nameserver в {{path|/etc/resolv.conf}}) должен быть указан DNS-сервер домена: | ||
domain dom.loc | domain dom.loc | ||
search dom.loc | search dom.loc | ||
Строка 13: | Строка 18: | ||
<source lang="bash">$ host dom.loc | <source lang="bash">$ host dom.loc | ||
dom.loc has address 192.168.1.148</source> | dom.loc has address 192.168.1.148</source> | ||
* имя подключаемого, клиентского узла | * имя подключаемого, клиентского узла должно быть определено, как FQDN. Например, для рабочей станции client2 в домене dom.loc: | ||
<source lang="bash">$ hostname | <source lang="bash">$ hostname | ||
client2.dom.loc</source> | client2.dom.loc</source> | ||
==Настройки kerberos== | === Настройки kerberos === | ||
Далее проверяем клиентские настройки kerberos через DNS. В данном случае, для домена '''dom.loc.''': | Далее проверяем клиентские настройки kerberos через DNS. В данном случае, для домена '''dom.loc.''': | ||
Строка 24: | Строка 29: | ||
$ dig _kerberos._tcp.dom.loc SRV | grep ^_kerberos | $ dig _kerberos._tcp.dom.loc SRV | grep ^_kerberos | ||
_kerberos._tcp.dom.loc. 900 IN SRV 0 100 88 server.dom.loc.</source> | _kerberos._tcp.dom.loc. 900 IN SRV 0 100 88 server.dom.loc.</source> | ||
И задаем их в файле /etc/krb5.conf | И задаем их в файле {{path|/etc/krb5.conf}}: | ||
* kerberos-имя домена ("рилма", realm): | * kerberos-имя домена ("рилма", realm): | ||
default_realm = DOM.LOC | default_realm = DOM.LOC | ||
* отключаем | * отключаем поиск kerberos-имени домена через DNS: | ||
dns_lookup_realm = false | dns_lookup_realm = false | ||
* оставляем (или включаем) поиск kerberos-настроек домена через DNS: | * оставляем (или включаем) поиск kerberos-настроек домена через DNS: | ||
Строка 44: | Строка 49: | ||
renew until 20.12.2016 04:13:18</source> | renew until 20.12.2016 04:13:18</source> | ||
==Настройки samba== | === Настройки samba === | ||
Для подключения рабочей станции в домену требуется утилита ''net'' из пакета | Для подключения рабочей станции в домену требуется утилита ''net'' из пакета {{pkg|samba-common-tools}}, кроме того стоит сразу установить пакет {{pkg|samba-client}} с набором клиентских утилит: | ||
# apt-get install samba-client | # apt-get install samba-client | ||
В файле, минимально, необходимо задать следующие параметры в секции [global]: | В файле {{path|/etc/samba/smb.conf}}, минимально, необходимо задать следующие параметры (в секции [global]): | ||
* kerberos-имя домена: | * kerberos-имя домена: | ||
realm = DOM.LOC | realm = DOM.LOC | ||
Строка 58: | Строка 63: | ||
* уровень безопасности Active Directory: | * уровень безопасности Active Directory: | ||
security = ADS | security = ADS | ||
* | * метод хранения kerberos-ключей рабочей станции: | ||
kerberos method = system keytab | kerberos method = system keytab | ||
* алгоритм преобразования SID'ов: | * алгоритм преобразования SID'ов: | ||
Строка 99: | Строка 104: | ||
browseable = No | browseable = No | ||
printable = Yes</source> | printable = Yes</source> | ||
Ошибка '''rlimit_max: increasing rlimit_max (1024) to minimum Windows limit (16384)''' до перезагрузки исправляется командой: | |||
<pre># ulimit -n 16384</pre> | |||
Что бы лимиты действовали и после перезагрузки необходимо отредактировать файл {{path|/etc/security/limits.conf}}: | |||
<pre>* - nofile 16384 | |||
root - nofile 16384</pre> | |||
==Подключение к домену== | === Подключение к домену === | ||
<source lang="text"># net ads join -U administrator | <source lang="text"># net ads join -U administrator | ||
Строка 107: | Строка 117: | ||
Joined 'CLIENT2' to dns domain 'dom.loc'</source> | Joined 'CLIENT2' to dns domain 'dom.loc'</source> | ||
Проверка наличия kerberos-ключей для рабочей станции | Проверка наличия kerberos-ключей для рабочей станции: | ||
<source lang="text"># klist -k -e | <source lang="text"># klist -k -e | ||
Keytab name: FILE:/etc/krb5.keytab | Keytab name: FILE:/etc/krb5.keytab | ||
Строка 128: | Строка 138: | ||
7 CLIENT2$@DOM.LOC (arcfour-hmac)</source> | 7 CLIENT2$@DOM.LOC (arcfour-hmac)</source> | ||
= Настройка SSSD = | == Настройка SSSD == | ||
==Установка sssd-модуля== | === Установка sssd-модуля === | ||
Для работы с Active Directory в SSSD имеется специальный AD-провайдер: | Для работы с Active Directory в SSSD имеется специальный AD-провайдер: | ||
apt-get install sssd-ad | # apt-get install sssd-ad | ||
Минимальный конфигурационный файл (/etc/sssd/sssd.conf) для sssd-ad выглядит следующим образом: | Минимальный конфигурационный файл ({{path|/etc/sssd/sssd.conf}}) для sssd-ad выглядит следующим образом: | ||
<source lang="text">[sssd] | <source lang="text">[sssd] | ||
config_file_version = 2 | config_file_version = 2 | ||
Строка 142: | Строка 152: | ||
domains = DOM.LOC | domains = DOM.LOC | ||
debug_level = 1 | debug_level = 1 | ||
; Should be used until ALT#34124 will be resolved | |||
user = root | |||
[nss] | [nss] | ||
Строка 154: | Строка 167: | ||
chpass_provider = ad | chpass_provider = ad | ||
; ldap_id_mapping = False | ;ldap_id_mapping = False | ||
default_shell = /bin/bash | default_shell = /bin/bash | ||
fallback_homedir = /home/%d/%u | fallback_homedir = /home/%d/%u | ||
; use_fully_qualified_names = True</source> | ;use_fully_qualified_names = True | ||
;cache_credentials = true</source> | |||
Опция '''ldap_id_mapping = False''' позволяет включить использование POSIX атрибутов, определённых в Active Directory, вместо встроенной, однозначной трансляции SID'ов. | Опция '''ldap_id_mapping = False''' позволяет включить использование POSIX атрибутов, определённых в Active Directory, вместо встроенной, однозначной трансляции SID'ов. | ||
Основная проблема применения POSIX-атрибутов состоит в том, что они могут быть не заданы. В этом случае сервис sssd не | Основная проблема применения POSIX-атрибутов состоит в том, что они могут быть не заданы. В этом случае сервис sssd не загрузится. | ||
Опция '''use_fully_qualified_names = True''' включает режим полных имён (включая домен) для пользователей и групп. | Опция '''use_fully_qualified_names = True''' включает режим полных имён (включая домен) для пользователей и групп. | ||
= | Опция '''fallback_homedir = /home/%d/%u''' задает домашнюю папку для доменных пользователей. При такой записи %d означает FQDN. Здесь вручную можно указать имя рабочей группы, например /home/DOM/%u. | ||
Авторизационные NSS-базы GLibc настраиваются | Опция '''cache_credentials''' включает режим кэширования аутентификационных данных (полезно при недоступности домена). | ||
Опция '''user''' позволяет задать имя пользователя, под которым будет исполняться непривилегированная часть службы SSSD. | |||
{{Attention|Пока не решена задача [[https://bugzilla.altlinux.org/show_bug.cgi?id=34124 #34124]] опция '''user''' должна быть задана, как '''root'''.}} | |||
=== Настройка авторизации === | |||
Авторизационные NSS-базы GLibc настраиваются в файле {{path|/etc/nsswitch.conf}}. | |||
При использовании sssd, требуется внести исправления в следующие строчки: | При использовании sssd, требуется внести исправления в следующие строчки: | ||
<source lang="text"># grep sss /etc/nsswitch.conf | <source lang="text"># grep sss /etc/nsswitch.conf | ||
Строка 175: | Строка 197: | ||
netgroup: files sss</source> | netgroup: files sss</source> | ||
==Настройка аутентификации== | === Настройка аутентификации === | ||
Для изменения настроек аутентификации (параметров PAM) в | Для изменения настроек аутентификации (параметров PAM) в ALT Linux используется утилита ''control'': | ||
# control system-auth sss | # control system-auth sss | ||
==Запуск и проверка сервиса sssd== | === Запуск и проверка сервиса sssd === | ||
Если все настройки выполнены правильно, то после запуска сервиса sssd: | Если все настройки выполнены правильно, то после запуска сервиса sssd: | ||
Строка 202: | Строка 224: | ||
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> | 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> | ||
{{Attention|Если машина до этого была в других доменах или есть проблемы со входом пользователей рекомендуется очистить кэш sssd: | |||
<pre># systemctl stop sssd | |||
# rm -f /var/lib/sss/db/* | |||
# rm -f /var/lib/sss/mc/* | |||
# systemctl start sssd</pre>}} | |||
== Подключение файловых ресурсов == | |||
Рассматриваемые способы позволяют подключать файловые ресурсы (file shares) для доменного пользователя без повторного ввода пароля (SSO, Single Sign-On). | |||
{{:pam_mount}} | |||
== Ссылки == | |||
* https://access.redhat.com/documentation/en-US/Red_Hat_Enterprise_Linux/7/html/Windows_Integration_Guide/SSSD-AD.html | |||
[[Категория:SSSD]] | [[Категория:SSSD]] | ||
[[Категория:Active Directory]] | [[Категория:Active Directory]] |
Текущая версия от 08:14, 17 августа 2022
Подготовка клиентской станции (подключение к домену AD), настройка и установка аутентификации и авторизации c помощью сервиса SSSD.
Подключение к домену
Нижеописанная процедура настройки автоматизирована с помощью пакета task-auth-ad-sssd и введения в домен через ЦУС (acc) — alterator-auth версии >=0.31
$ su - # apt-get update; apt-get install task-auth-ad-sssd # acc
Настройки сети
Для подключением к домену проводим проверку настроек сети:
- в качестве первичного 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
В файле /etc/samba/smb.conf, минимально, необходимо задать следующие параметры (в секции [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
Ошибка rlimit_max: increasing rlimit_max (1024) to minimum Windows limit (16384) до перезагрузки исправляется командой:
# ulimit -n 16384
Что бы лимиты действовали и после перезагрузки необходимо отредактировать файл /etc/security/limits.conf:
* - nofile 16384 root - nofile 16384
Подключение к домену
# 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
; Should be used until ALT#34124 will be resolved
user = root
[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
;cache_credentials = true
Опция ldap_id_mapping = False позволяет включить использование POSIX атрибутов, определённых в Active Directory, вместо встроенной, однозначной трансляции SID'ов. Основная проблема применения POSIX-атрибутов состоит в том, что они могут быть не заданы. В этом случае сервис sssd не загрузится.
Опция use_fully_qualified_names = True включает режим полных имён (включая домен) для пользователей и групп.
Опция fallback_homedir = /home/%d/%u задает домашнюю папку для доменных пользователей. При такой записи %d означает FQDN. Здесь вручную можно указать имя рабочей группы, например /home/DOM/%u.
Опция cache_credentials включает режим кэширования аутентификационных данных (полезно при недоступности домена).
Опция user позволяет задать имя пользователя, под которым будет исполняться непривилегированная часть службы SSSD.
Настройка авторизации
Авторизационные 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) в ALT Linux используется утилита 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)
# systemctl stop sssd # rm -f /var/lib/sss/db/* # rm -f /var/lib/sss/mc/* # systemctl start sssd
Подключение файловых ресурсов
Рассматриваемые способы позволяют подключать файловые ресурсы (file shares) для доменного пользователя без повторного ввода пароля (SSO, Single Sign-On).
Заданный файловый ресурс подключается с заданного сервера автоматически при каждом входе доменным пользователем.
1. Устанавливаем pam_mount:
# apt-get install pam_mount
Если осуществляется подключение файловых ресурсов по протоколу CIFS (SMB), то установите cifs-utils:
# apt-get install cifs-utils
# apt-get install systemd-settings-enable-kill-user-processes
2. Прописываем pam_mount в схему аутентификации по умолчанию. В конец файла (/etc/pam.d/system-auth) добавьте строки
session [success=1 default=ignore] pam_succeed_if.so service = systemd-user quiet session optional pam_mount.so disable_interactive
Параметр disable_interactive нужен для того, чтобы pam_mount не спрашивал пароль. Первая строка предназначена для того, чтобы не монтировать дважды при запуске systemd --user. Подробнее: https://wiki.archlinux.org/title/pam_mount#Login_manager_configuration
Пример файла /etc/pam.d/system-auth при аутентификации доменного пользователя под SSSD:
#%PAM-1.0
auth [success=4 perm_denied=ignore default=die] pam_localuser.so
auth [success=1 default=bad] pam_succeed_if.so uid >= 500 quiet
auth [default=1] pam_permit.so
auth substack system-auth-sss-only
auth [default=1] pam_permit.so
auth substack system-auth-local-only
auth substack system-auth-common
account [success=4 perm_denied=ignore default=die] pam_localuser.so
account [success=1 default=bad] pam_succeed_if.so uid >= 500 quiet
account [default=1] pam_permit.so
account substack system-auth-sss-only
account [default=1] pam_permit.so
account substack system-auth-local-only
account substack system-auth-common
password [success=4 perm_denied=ignore default=die] pam_localuser.so
password [success=1 default=bad] pam_succeed_if.so uid >= 500 quiet
password [default=1] pam_permit.so
password substack system-auth-sss-only
password [default=1] pam_permit.so
password substack system-auth-local-only
password substack system-auth-common
session [success=4 perm_denied=ignore default=die] pam_localuser.so
session [success=1 default=bad] pam_succeed_if.so uid >= 500 quiet
session [default=1] pam_permit.so
session substack system-auth-sss-only
session [default=1] pam_permit.so
session substack system-auth-local-only
session substack system-auth-common
session [success=1 default=ignore] pam_succeed_if.so service = systemd-user
session optional pam_mount.so disable_interactive
3. Устанавливаем правило монтирования ресурса в файле /etc/security/pam_mount.conf.xml:
<volume uid="10000-2000200000"
fstype="cifs"
server="c253.test.alt"
path="sysvol"
mountpoint="~/share"
options="sec=krb5i,cruid=%(USERUID),nounix,uid=%(USERUID),gid=%(USERGID),file_mode=0664,dir_mode=0775"/>
где
- uid="10000-2000200000" — диапазон присваиваемых для доменных пользователей UID (подходит и для Winbind и для SSSD);
- server="c253.test.alt" — имя сервера с ресурсом;
- path="sysvol" — имя файлового ресурса;
- mountpoint="~/share" — путь монтирования в домашней папке пользователя.
Опционально можно добавить:
- sgrp="group_name" — имя группы, при членстве пользователя в которой, папка будет примонтирована.
Параметр sec=krb5i более безопасный, но требует больше вычислительных ресурсов. Вместо него можно указать sec=krb5.
Пример файла /etc/security/pam_mount.conf.xml:
С комментариями для изучения |
---|
<?xml version="1.0" encoding="utf-8" ?>
<!DOCTYPE pam_mount SYSTEM "pam_mount.conf.xml.dtd">
<!--
См. pam_mount.conf(5) для описания.
-->
<pam_mount>
<!--
Отладка должна быть раньше всего остального,
т.к. этот файл все равно считываются за
один проход сверху вниз
-->
<debug enable="0" />
<!-- Определение монтируемых томов -->
<volume uid="10000-2000200000"
fstype="cifs"
server="c253.test.alt"
path="sysvol"
mountpoint="~/share"
options="sec=krb5,cruid=%(USERUID),nounix,uid=%(USERUID),gid=%(USERGID),file_mode=0664,dir_mode=0775" />
<!--
pam_mount parameters: General tunables
-->
<!--
<luserconf name=".pam_mount.conf.xml" />
-->
<!--
Обратите внимание, что если закомментировать mntoptions, то будут заданы значения по умолчанию.
Необходимо явно инициализировать его пустой строкой чтобы сбросить значения на по-умолчанию.
-->
<mntoptions allow="nosuid,nodev,loop,encryption,fsck,nonempty,allow_root,allow_other,sec" />
<!--
<mntoptions deny="suid,dev" />
<mntoptions allow="*" />
<mntoptions deny="*" />
-->
<mntoptions require="nosuid,nodev" />
<!--
Требуется наличие ofl из hxtools
-->
<logout wait="0" hup="no" term="no" kill="no" />
<!-- Параметры pam_mount: связанные тома -->
<mkmountpoint enable="1" remove="true" />
</pam_mount>
|
Без комментариев для "продакшена" |
---|
<?xml version="1.0" encoding="utf-8" ?>
<!DOCTYPE pam_mount SYSTEM "pam_mount.conf.xml.dtd">
<pam_mount>
<debug enable="0" />
<volume uid="10000-2000200000"
fstype="cifs"
server="c253.test.alt"
path="sysvol"
mountpoint="~/share"
options="sec=krb5,cruid=%(USERUID),nounix,uid=%(USERUID),gid=%(USERGID),file_mode=0664,dir_mode=0775" />
<mntoptions allow="nosuid,nodev,loop,encryption,fsck,nonempty,allow_root,allow_other,sec" />
<mntoptions require="nosuid,nodev" />
<logout wait="0" hup="no" term="no" kill="no" />
<mkmountpoint enable="1" remove="true" />
</pam_mount>
|
Для отладки подключения замените в файле /etc/security/pam_mount.conf.xml
<debug enable="0" />
на
<debug enable="1" />
При этом отладочные сообщения будут показываться в журнале Journald.
Вы можете сменить механизм монтирования отдав его на откуп systemd. Для этого в pam_mount.xml.conf можно задать\переопределить опции cifsmount, umount
<cifsmount>systemd-mount -A -G -q -t cifs %(COMBOPATH) %(MNTPT) -o uid=%(USERUID),gid=%(USERGID),username=%(USER),%(OPTIONS)</cifsmount>
<umount>systemd-mount -u %(MNTPT)</umount>
Советы
- Для того, чтобы подключенная папка не показывалась на рабочем столе Mate, следует в параметры добавить x-gvfs-hide.
- Если при выходе пользователя всё равно файловый ресурс остаётся подключенным, отмонтируйте его и удалите файл /run/pam_mount/<имя_пользователя>
Ссылки