Назад |
Перейти на главную страницу
Удаленные домашние папки с необязательной, но предпочтительной папкой с локальным шифрованием
У меня есть вариант использования, что по умолчанию все пользователи работают в удаленных домашних каталогах. Однако иногда они предпочитают локальный дом на одной или нескольких машинах, например потому что сеть слишком медленная, объем данных и т. д.
Таким образом, мне нравится настраивать следующее:
- Распределение пользователей через LDAP
- По умолчанию пользователи получают свою удаленную домашнюю папку, например
/mnt/smb/$SERVER/$USER
- Если домашняя папка в
/home/$USER
существует (символическая ссылка или папка), его следует выбрать и установить как $HOME
-env и т. д. - Если необходимо создать домашний каталог (потому что он указывает на
/home/$USER
), он должен быть создан с помощью ecryptfs
Вкратце: не определяйте домашний каталог пользователя глобально, а на уровне компьютера с расположением по умолчанию.
Текущее состояние:
- OpenLDAP с аутентификацией и т. Д. Запущен и работает.
homeDirectory
установлен на /home/$USER
в LDAP - Удаленная папка монтируется с помощью pam_mount с жестко запрограммированным сервером и местоположением для
/smb/$USER
- Если пользователь хочет использовать свою удаленную папку на машине, он создает символические ссылки
/home/$USER
к /smb/$USER
. С другой стороны, пустой каталог (или копия /etc/skel
) создается вручную, если пользователю нужна локальная домашняя папка.
Делать:
- Избавьтесь от символической ссылки (если возможно)
- Позволяет указать динамический удаленный сервер, на котором находится домашняя папка
- Создайте зашифрованную домашнюю папку (ecryptfs), если локальной не существует или если невозможно смонтировать удаленную папку
Пытаясь реализовать это с помощью pam_script, я натолкнулся на несколько препятствий:
- Скрипт запускается от имени пользователя root, поэтому просто экспортируется новый
$HOME
-variable не действует - ecryptfs-utils ужасно задокументирован и имеет много недостатков. Нет возможности указать вручную домашний каталог пользователя. Afaik это взято из getent, которое будет точкой монтирования удаленной папки, а не
/home/$USER