Школьный сервер LDAP + Kerberos + NFS: различия между версиями
Dkirienko (обсуждение | вклад) |
Dkirienko (обсуждение | вклад) |
||
| Строка 1: | Строка 1: | ||
<big>'''Это черновик статьи, он может содержать ошибки!'''</big> | |||
При установке на реальное железо нужно проверить, что SELINUX отключён. | |||
== | ==Функционал системы== | ||
Целью является создание школьного сервера со следующим функционалом: | Целью является создание школьного сервера со следующим функционалом: | ||
#Сервер является сервером авторизации для учащихся школы. Каждому учащемуся выдаётся логин и пароль, при помощи которого он может авторизоваться на любом компьютере, включенным в "школьный домен". | #Сервер является сервером авторизации для учащихся школы. Каждому учащемуся выдаётся логин и пароль, при помощи которого он может авторизоваться на любом компьютере, включенным в "школьный домен". | ||
#Домашние каталоги учащихся монтируются по NFS, у каждого учащегося домашний каталог (то есть настройки приложений, файлы) будут идентичны на любом компьютере. | #Домашние каталоги учащихся монтируются по NFS, у каждого учащегося домашний каталог (то есть настройки приложений, файлы) будут идентичны на любом компьютере. | ||
| Строка 19: | Строка 18: | ||
#Kerberos для хранения паролей и авторизации. | #Kerberos для хранения паролей и авторизации. | ||
#SSSD для подключения к LDAP и Kerberos. | #SSSD для подключения к LDAP и Kerberos. | ||
#NFS для доступа к домашним каталогам. | #NFS для доступа к домашним каталогам - /home на клиентах является сетевым разделом, монтируемым с сервера. | ||
Для реализации будет использоваться платформа РОСА 13, как более современная. В настоящий момент для реализации такой конфигурации можно использовать: | Для реализации будет использоваться платформа РОСА 13, как более современная. В настоящий момент для реализации такой конфигурации можно использовать: | ||
| Строка 25: | Строка 24: | ||
#Роса "Фреш" 13, версия Server для сервера. | #Роса "Фреш" 13, версия Server для сервера. | ||
# Роса "Фреш" 13, версия с Plasma 6 или МОС-13 (альфа-версия) для клиентских компьютеров. | # Роса "Фреш" 13, версия с Plasma 6 или МОС-13 (альфа-версия) для клиентских компьютеров. | ||
Скорее всего эти инструкции можно применить для дистрибутивов на базе РОСА-2021.1 (МОС-12) без изменений. | |||
== Установка дистрибутивов и общие идеи конфигурации == | |||
Дистрибутивы Роса "Фреш" 13 можно скачать [https://rosa.ru/rosa-linux-download-links/ по ссылке]. Дистрибутивы Роса "Фреш" доступны для бесплатного использования без каких-либо ограничений (см. лицензионное соглашение при установке). | |||
'''Важно! Поскольку будут настраиваться механизмы авторизации и доступа в домашние каталоги, необходимо при установке как сервера, так и клиентов разрешить вход пользователю root. Это упростит починку системы, если будет что-то сломано в механизмах авторизации или доступа к домашним каталогам /home.''' | |||
На клиентских компьютерах удобно помимо сетевых пользователей завести общий логин типа "user" или "student", функционирование которого не было бы привязано к работе сервера. Это позволит использовать компьютерные классы при проблемах с сетью или сервером. При этом домашний каталог такого пользователя '''НЕ ДОЛЖЕН''' находиться в /home, т.к. при проблемах использование этого каталога будет невозможно. Предлагается разместить домашний каталог такого пользователя в /usr/local/home. Туда же следует перенести и домашний каталог локального администратора системы ''[уточнить, как это сделать]''. | |||
На сервере необходимо вынести /home в отдельный раздел, чтобы при отсутствии свободного места на нём это не повлияло на работу сервера. Рекомендуется использование файловой системы XFS на этом разделе, она считается наиболее быстрой. Наоборот, BTRFS не рекомендуется, т.к. нет смысла создавать снимки на этом разделе. | |||
Желательный размер квоты на одного пользователя - 2-3 гигабайта, поэтому в масштабах одного школьного здания на хранение файлов пользователей следует выделять порядка 1 террабайта дискового пространства. | |||
== Настройка доменных имён == | == Настройка доменных имён == | ||
Для работы Kerberos необходимо, чтобы все компьютеры имели имена (FQDN) и взаимодействовали с использованием FQDN. | Для работы Kerberos необходимо, чтобы все компьютеры имели имена (FQDN) и взаимодействовали друг с другом с использованием FQDN. | ||
Мы предположим, что наша сеть имеет следующий вид. | Мы предположим, что наша сеть имеет следующий вид. | ||
Локальный домен называется sch179.local | Локальный домен называется sch179.local. Далее в инструкциях измените название этого домена на своё. | ||
Сервер имеет IP-адрес 192.168.0.1 и имя server.sch179.local | Сервер имеет IP-адрес 192.168.0.1 и имя server.sch179.local | ||
Клиентский компьютер имеет IP-адрес 192.168.1.1 и имя ws01.sch179.local | Клиентский компьютер в дальнейших инструкциях имеет IP-адрес 192.168.1.1 и имя ws01.sch179.local | ||
Вы можете поднять DNS для разрешения имён | Вы можете поднять DNS для разрешения имён ''[поможет ли в этом Avahi?]''. Но для надёжности и независимости от службы DNS можно создать статические записи для всех компьютеров - на каждом компьютере будут прописаны доменные имена других компьютеров. На клиенте достаточно прописать имя и адрес сервера, на сервере необходимо прописать имена всех подключённых к нему компьютеров в локальной сети. | ||
На сервере запишите в файл /etc/hostname единственную строку<syntaxhighlight lang="ini"> | На сервере запишите в файл /etc/hostname единственную строку<syntaxhighlight lang="ini"> | ||
| Строка 43: | Строка 54: | ||
</syntaxhighlight>На клиенте в аналогичный файл запишите его имя<syntaxhighlight lang="ini"> | </syntaxhighlight>На клиенте в аналогичный файл запишите его имя<syntaxhighlight lang="ini"> | ||
ws01.sch179.local | ws01.sch179.local | ||
</syntaxhighlight>В файл /etc/hosts на сервере добавьте для всех клиентских компьютеров строки вида | </syntaxhighlight>В файл /etc/hosts на сервере добавьте для всех клиентских компьютеров - строки вида<syntaxhighlight lang="ini"> | ||
192.168.1.1 ws01.sch179.local ws01 | |||
</syntaxhighlight>Одна строка соответствует одному компьютеру. Замените в этой строке IP-адрес компьютера, его полное и короткое имя. | |||
На клиентском компьютере запишите в этот файл адрес и имя сервера.<syntaxhighlight lang="ini"> | |||
192.168.0.1 server.sch179.local server | 192.168.0.1 server.sch179.local server | ||
</syntaxhighlight>Если вам нужна графическая оболочка на сервере, установите lxqt - лёгкую и нетребовательную к ресурсам оболочку (команда от root).<syntaxhighlight lang="bash"> | |||
</syntaxhighlight>Если вам нужна графическая оболочка на сервере, установите lxqt | |||
dnf install -y task-lxqt | dnf install -y task-lxqt | ||
</syntaxhighlight>Если вы тестируете установку в VirtualBox, установите гостевые расширения (команда от root).<syntaxhighlight lang="bash"> | </syntaxhighlight>Если вы тестируете установку в VirtualBox, установите гостевые расширения (команда от root).<syntaxhighlight lang="bash"> | ||
| Строка 64: | Строка 68: | ||
</syntaxhighlight> | </syntaxhighlight> | ||
==Установка и настройка OpenLDAP== | ==Установка и настройка OpenLDAP на сервере== | ||
=== Установка и запуск LDAP === | === Установка и запуск LDAP === | ||
Версия 21:47, 25 июня 2025
Это черновик статьи, он может содержать ошибки!
При установке на реальное железо нужно проверить, что SELINUX отключён.
Функционал системы
Целью является создание школьного сервера со следующим функционалом:
- Сервер является сервером авторизации для учащихся школы. Каждому учащемуся выдаётся логин и пароль, при помощи которого он может авторизоваться на любом компьютере, включенным в "школьный домен".
- Домашние каталоги учащихся монтируются по NFS, у каждого учащегося домашний каталог (то есть настройки приложений, файлы) будут идентичны на любом компьютере.
Предлагаемые технологии для этого:
- LDAP для хранения базы пользователей.
- Kerberos для хранения паролей и авторизации.
- SSSD для подключения к LDAP и Kerberos.
- NFS для доступа к домашним каталогам - /home на клиентах является сетевым разделом, монтируемым с сервера.
Для реализации будет использоваться платформа РОСА 13, как более современная. В настоящий момент для реализации такой конфигурации можно использовать:
- Роса "Фреш" 13, версия Server для сервера.
- Роса "Фреш" 13, версия с Plasma 6 или МОС-13 (альфа-версия) для клиентских компьютеров.
Скорее всего эти инструкции можно применить для дистрибутивов на базе РОСА-2021.1 (МОС-12) без изменений.
Установка дистрибутивов и общие идеи конфигурации
Дистрибутивы Роса "Фреш" 13 можно скачать по ссылке. Дистрибутивы Роса "Фреш" доступны для бесплатного использования без каких-либо ограничений (см. лицензионное соглашение при установке).
Важно! Поскольку будут настраиваться механизмы авторизации и доступа в домашние каталоги, необходимо при установке как сервера, так и клиентов разрешить вход пользователю root. Это упростит починку системы, если будет что-то сломано в механизмах авторизации или доступа к домашним каталогам /home.
На клиентских компьютерах удобно помимо сетевых пользователей завести общий логин типа "user" или "student", функционирование которого не было бы привязано к работе сервера. Это позволит использовать компьютерные классы при проблемах с сетью или сервером. При этом домашний каталог такого пользователя НЕ ДОЛЖЕН находиться в /home, т.к. при проблемах использование этого каталога будет невозможно. Предлагается разместить домашний каталог такого пользователя в /usr/local/home. Туда же следует перенести и домашний каталог локального администратора системы [уточнить, как это сделать].
На сервере необходимо вынести /home в отдельный раздел, чтобы при отсутствии свободного места на нём это не повлияло на работу сервера. Рекомендуется использование файловой системы XFS на этом разделе, она считается наиболее быстрой. Наоборот, BTRFS не рекомендуется, т.к. нет смысла создавать снимки на этом разделе.
Желательный размер квоты на одного пользователя - 2-3 гигабайта, поэтому в масштабах одного школьного здания на хранение файлов пользователей следует выделять порядка 1 террабайта дискового пространства.
Настройка доменных имён
Для работы Kerberos необходимо, чтобы все компьютеры имели имена (FQDN) и взаимодействовали друг с другом с использованием FQDN.
Мы предположим, что наша сеть имеет следующий вид.
Локальный домен называется sch179.local. Далее в инструкциях измените название этого домена на своё.
Сервер имеет IP-адрес 192.168.0.1 и имя server.sch179.local
Клиентский компьютер в дальнейших инструкциях имеет IP-адрес 192.168.1.1 и имя ws01.sch179.local
Вы можете поднять DNS для разрешения имён [поможет ли в этом Avahi?]. Но для надёжности и независимости от службы DNS можно создать статические записи для всех компьютеров - на каждом компьютере будут прописаны доменные имена других компьютеров. На клиенте достаточно прописать имя и адрес сервера, на сервере необходимо прописать имена всех подключённых к нему компьютеров в локальной сети.
На сервере запишите в файл /etc/hostname единственную строку
server.sch179.local
На клиенте в аналогичный файл запишите его имя
ws01.sch179.local
В файл /etc/hosts на сервере добавьте для всех клиентских компьютеров - строки вида
192.168.1.1 ws01.sch179.local ws01
Одна строка соответствует одному компьютеру. Замените в этой строке IP-адрес компьютера, его полное и короткое имя. На клиентском компьютере запишите в этот файл адрес и имя сервера.
192.168.0.1 server.sch179.local server
Если вам нужна графическая оболочка на сервере, установите lxqt - лёгкую и нетребовательную к ресурсам оболочку (команда от root).
dnf install -y task-lxqt
Если вы тестируете установку в VirtualBox, установите гостевые расширения (команда от root).
dnf install -y virtualbox-guest-additions
Установка и настройка OpenLDAP на сервере
Установка и запуск LDAP
Установите на сервере пакеты (команда от root).
dnf install -y openldap-servers openldap-clients
После установки наблюдались ошибки с правами на /etc/openldap/slapd.d, помогло удалить и переустановить пакет openldap-servers (уточнить - какие должны быть права? проверить воспроизводимость проблемы).
Запуск службы LDAP (команда от root).
systemctl enable --now slapd
Проверьте, что LDAP запущен и отвечает на запросы (команда от root).
ldapsearch -Y EXTERNAL -H ldapi:/// -b cn=config dn
systemctl status slapd.service
Настройка базы данных LDAP
Создание хеша пароля администратора
slappasswd
Пример результата:
{SSHA}GmLFgTlVi1ilt4IW0duB4/eCr3tpIuDu
Файл create-db.ldif
dn: olcDatabase={2}mdb,cn=config
changetype: add
objectClass: olcDatabaseConfig
objectClass: olcMdbConfig
olcDatabase: {2}mdb
olcDbDirectory: /var/lib/ldap
olcSuffix: dc=sch179,dc=local
olcRootDN: cn=admin,dc=sch179,dc=local
olcRootPW: {SSHA}GmLFgTlVi1ilt4IW0duB4/eCr3tpIuDuПрименение изменений:
ldapmodify -Y EXTERNAL -H ldapi:/// -f create-db.ldif
Проверка созданной базы
ldapsearch -Y EXTERNAL -H ldapi:/// -b "cn=config" "(olcDatabase=*)"
Создание базовой структуры LDAP
dn: dc=sch179,dc=local
objectClass: top
objectClass: organization
objectClass: dcObject
o: Sch179 School
dc: sch179
dn: ou=people,dc=sch179,dc=local
objectClass: organizationalUnit
ou: people
dn: ou=groups,dc=sch179,dc=local
objectClass: organizationalUnit
ou: groups
dn: cn=admin,dc=sch179,dc=local
objectClass: organizationalRole
cn: admin
description: LDAP AdministratorДобавление в LDAP:
ldapadd -x -D "cn=admin,dc=sch179,dc=local" -W -f base.ldif
Добавление схем
ldapadd -Y EXTERNAL -H ldapi:/// -f /etc/openldap/schema/cosine.ldif
ldapadd -Y EXTERNAL -H ldapi:/// -f /etc/openldap/schema/nis.ldif
ldapadd -Y EXTERNAL -H ldapi:/// -f /etc/openldap/schema/inetorgperson.ldif
Проверка схем:
ldapsearch -Y EXTERNAL -H ldapi:/// -b "cn=schema,cn=config" dn
Добавление групп пользователей
Создайте файл groups.ldif:
dn: cn=admins,ou=groups,dc=sch179,dc=local
objectClass: top
objectClass: posixGroup
cn: admins
gidNumber: 1000
description: System administrators
dn: cn=teachers,ou=groups,dc=sch179,dc=local
objectClass: top
objectClass: posixGroup
cn: teachers
gidNumber: 2000
description: School teachers
dn: cn=misc,ou=groups,dc=sch179,dc=local
objectClass: top
objectClass: posixGroup
cn: misc
gidNumber: 3000
description: Miscellaneous people
dn: cn=students,ou=groups,dc=sch179,dc=local
objectClass: top
objectClass: posixGroup
cn: students
gidNumber: 4000
description: StudentsДобавление:
ldapadd -x -D "cn=admin,dc=sch179,dc=local" -W -f groups.ldif
Проверка:
ldapsearch -x -b "ou=groups,dc=sch179,dc=local" "(objectClass=posixGroup)"
Добавление пользователя (например, dk)
Создание пароля
slappasswd -s t9cdw3qR -v
user-dk.ldif
dn: cn=dk,ou=groups,dc=sch179,dc=local
objectClass: posixGroup
cn: dk
gidNumber: 1001
description: Primary group for user dk
dn: uid=dk,ou=people,dc=sch179,dc=local
objectClass: inetOrgPerson
objectClass: posixAccount
objectClass: shadowAccount
uid: dk
sn: Кириенко
givenName: Денис
cn: Денис Кириенко
uidNumber: 1001
gidNumber: 1001
homeDirectory: /home/dk
loginShell: /bin/bash
userPassword: {SSHA}rKkuYpM736DjDANzimaJOW0vV8bO8dN9
description: User Denis KirienkoДобавление:
ldapadd -c -x -D "cn=admin,dc=sch179,dc=local" -W -f user-dk.ldif
Проверка:
ldapsearch -x -b "ou=people,dc=sch179,dc=local" "(uid=dk)"
ldapsearch -x -b "ou=groups,dc=sch179,dc=local" "(cn=dk)"
Настройка Kerberos
Установка пакетов
dnf install -y krb5-server krb5-libs krb5-workstation
Конфигурация /etc/krb5.conf
[libdefaults]
default_realm = SCH179.LOCAL
dns_lookup_realm = false
dns_lookup_kdc = false
ticket_lifetime = 24h
renew_lifetime = 7d
forwardable = true
[realms]
SCH179.LOCAL = {
kdc = 127.0.0.1
admin_server = 127.0.0.1
}
[domain_realm]
.sch179.local = SCH179.LOCAL
sch179.local = SCH179.LOCAL
Создание базы данных
kdb5_util create -s
Задайте мастер-пароль, например: `3yomdiYp`
Конфигурация /var/kerberos/krb5kdc/kdc.conf
[realms]
SCH179.LOCAL = {
database_name = /var/kerberos/krb5kdc/principal
admin_keytab = /var/kerberos/krb5kdc/kadm5.keytab
acl_file = /var/kerberos/krb5kdc/kadm5.acl
key_stash_file = /var/kerberos/krb5kdc/.k5.SCH179.LOCAL
kdc_ports = 88
kdc_tcp_ports = 88
max_life = 24h
max_renewable_life = 7d
default_principal_flags = +forwardable
}
ACL файл
Файл: /var/kerberos/krb5kdc/kadm5.acl
*/admin@SCH179.LOCAL *Запуск служб
systemctl enable --now krb5kdc
systemctl enable --now kadmin
Создание принципалов
kadmin.local
addprinc kadmin/admin
quit
Однострочная команда для создания пароля для заданного пользователя.
kadmin.local addprinc -pw xWnp7NoX dk
Интеграция LDAP и Kerberos через SSSD
Установка пакетов
dnf install -y sssd sssd-krb5 sssd-ldap oddjob-mkhomedir
Конфигурация SSSD
Файл: /etc/sssd/sssd.conf
[sssd]
domains = sch179.local
services = nss, pam
[domain/sch179.local]
id_provider = ldap
auth_provider = krb5
ldap_uri = ldap://localhost
ldap_search_base = dc=sch179,dc=local
ldap_id_use_start_tls = false
ldap_tls_reqcert = never
krb5_realm = SCH179.LOCAL
krb5_server = localhost
cache_credentials = true
enumerate = true
Права:
chmod 600 /etc/sssd/sssd.conf
chown root:root /etc/sssd/sssd.conf
NSS и PAM
Измените `/etc/nsswitch.conf, заменив в нём три строки на следующие:
passwd: files sss
shadow: files sss
group: files sss
Измените `/etc/pam.d/system-auth`, добавив строки (НУЖЕН ПРИМЕР, КУДА ДОБАВЛЯТЬ):
auth sufficient pam_sss.so use_first_pass
account [default=bad success=ok user_unknown=ignore] pam_sss.so
password sufficient pam_sss.so use_authtok
session optional pam_sss.so
session required pam_mkhomedir.so skel=/etc/skel umask=0077Сделайте такие же правки в файле /etc/pam.d/pasword-auth
Запуск служб
systemctl enable --now sssd
systemctl enable --now oddjobd
Проверка возможности входа
getent passwd dk
su - dk
Настройка клиента
Установите нужные пакеты.
dnf install -y sssd sssd-ldap sssd-krb5 sssd-common oddjob-mkhomedir krb5-workstation openldap-clients
Создайте файл /etc/sssd/sssd.conf следующего содержания. В строках ldap_uri и krb5_server укажите адрес вашего сервера.
[sssd]
domains = sch179.local
services = nss, pam
[domain/sch179.local]
id_provider = ldap
auth_provider = krb5
ldap_uri = ldap://192.168.1.82
ldap_search_base = dc=sch179,dc=local
ldap_id_use_start_tls = false
ldap_tls_reqcert = never
krb5_realm = SCH179.LOCAL
krb5_server = 192.168.1.82
cache_credentials = true
enumerate = true
Установите права доступа на этот файл
chown root:root /etc/sssd/sssd.conf
chmod 600 /etc/sssd/sssd.conf
В файле /etc/nsswitch.conf замените три строки на такие:
passwd: files sss
shadow: files sss
group: files sss
Исправьте файл /etc/krb5.conf, указав в двух местах адрес сервера.
[libdefaults]
default_realm = SCH179.LOCAL
dns_lookup_realm = false
dns_lookup_kdc = false
ticket_lifetime = 24h
renew_lifetime = 7d
forwardable = true
[realms]
SCH179.LOCAL = {
kdc = 192.168.1.82
admin_server = 192.168.1.82
}
[domain_realm]
.sch179.local = SCH179.LOCAL
sch179.local = SCH179.LOCAL
Добавьте в файлы /etc/pam.d/system-auth и /etc/pam-d/password-auth строки, как в настройках сервера. Запустите службы.
systemctl enable --now sssd
systemctl enable --now oddjobd
Теперь проверьте работу всех сервисов. Проверка ldap. Должна вывести информацию о пользователе.
getent passwd dk
Получение тикета керберос. Нужно ввести пароль пользователя dk.
kinit dkПосле этого введите команду вывода информации о полученном тикете.
klist
Удалите полученный тикет командой
kdestroy
Попробуйте переключиться в пользователя.
su - dk
Наконец. попробуйте войти в систему в консоли и в десктоп-менеджере.
Установка NFS на сервере
Установите нужные пакеты.
dnf install -y nfs-utils krb5-server krb5-workstation
Включите и запустите нужные службы.
systemctl enable --now nfs-server
systemctl enable --now rpcbind
systemctl enable --now gssproxy
Создадим ключи Kerberos на сервере. От имени пользователя root нужно запустить команду
kadmin.local
В приложении kadmin.local нужно ввести команды.
addprinc -randkey nfs/server.sch179.local
ktadd -k /etc/krb5.keytab nfs/server.sch179.local
quit
Проверим, что ключи были созданы, для этого введите команду от root
klist -k /etc/krb5.keytab
Вывод будет таким.
Keytab name: FILE:/etc/krb5.keytab
KVNO Principal
---- --------------------------------------------------------------------------
2 nfs/server.sch179.local@SCH179.LOCAL
2 nfs/server.sch179.local@SCH179.LOCALСозданный в результате файл /etc/krb5.keytab необходимо будет скопировать на каждый клиентский компьютер - иначе kerberos будет отказываться устанавливать соединение с этим компьютером. Теперь настроим экспорт файловой системы /home сервера по сети. Для этого в файле /etc/exports напишем строку
/home 192.168.0.0/16(rw,sec=krb5p,sync,no_subtree_check)192.168.0.0/16 - сеть, из которой разрешён доступ (можете поменять)
krb5p - уровень безопасности Kerberos, означающий полное шифрование всех передаваемых данных. Это наиболее безопасно и даёт дополнительную нагрузку на процессор. Для уменьшения нагрузки можно использовать варианты без шифрования (но тогда возможен перехват данных): krb5 (только авторизация) или krb5i (проверка контрольных сумм данных для защиты от подмены).
Примените изменения командой
exportfs -ra
Проверьте, что система экспортируется, выполнив команду
exportfs -v
Установка NFS на клиенте
Установите нужные пакеты.
dnf install nfs-utils krb5-workstation
Скопируйте файл с ключами /etc/krb5.keytab с сервера на клиентскую машину. Установите владельца root:root и права доступа 600 на этот файл. Запустите нужные службы.
systemctl enable --now nfs-client.target
systemctl enable --now gssproxy
Теперь попробуем подмонтировать каталог /home с сервера. Это тестовая процедура, чтобы убедиться в том, что связка NFS + Kerberos настроена правильно.
Выполняйте все последующие действия под пользователем root.
Монтирование разделов при помощи NFS+Kerberos требует, чтобы у пользователя был действующий билет Kerberos. Этот билет нужно получить командой (выполним её от root)
kinit dk
Понадобится ввести пароль пользователя dk. Убедитесь, что билет получен, введя команду
klist
Имея билет, можно выполнить команду монтирования. Создайте на компьютере точку для монтирования, например, /root/home. Затем дайте команду.
mount -t nfs -o sec=krb5p server.sch179.local:/home /root/home
Эта команда подмонтирует раздел /home с сервера в каталог /root/home на клиенте.
Автомонтирование домашних каталогов при помощи autofs
Поскольку монтирование раздела через NFS+Kerberos требует получение билета, а получение билета происходит при авторизации в системе, домашние каталоги пользователей могут монтироваться только после авторизации в системе. Настроим на клиенте autofs, чтобы домашний каталог пользователя монтировался автоматически после входа.
Установим нужные пакеты.
sudo dnf install autofs
Создадим файл /etc/autofs/auto.master.d/home.autofs и запишем в него
/home /etc/auto.home --timeout=60Создадим файл /etc/auto.home и запишем в него
* -sec=krb5p,rw server.sch179.local:/home/&Включим и запустим службу autofs
sudo systemctl enable --now autofs