Назад | Перейти на главную страницу

Удаленные домашние папки с необязательной, но предпочтительной папкой с локальным шифрованием

У меня есть вариант использования, что по умолчанию все пользователи работают в удаленных домашних каталогах. Однако иногда они предпочитают локальный дом на одной или нескольких машинах, например потому что сеть слишком медленная, объем данных и т. д.

Таким образом, мне нравится настраивать следующее:

  1. Распределение пользователей через LDAP
  2. По умолчанию пользователи получают свою удаленную домашнюю папку, например /mnt/smb/$SERVER/$USER
  3. Если домашняя папка в /home/$USER существует (символическая ссылка или папка), его следует выбрать и установить как $HOME-env и т. д.
  4. Если необходимо создать домашний каталог (потому что он указывает на /home/$USER), он должен быть создан с помощью ecryptfs

Вкратце: не определяйте домашний каталог пользователя глобально, а на уровне компьютера с расположением по умолчанию.

Текущее состояние:

  1. OpenLDAP с аутентификацией и т. Д. Запущен и работает. homeDirectory установлен на /home/$USER в LDAP
  2. Удаленная папка монтируется с помощью pam_mount с жестко запрограммированным сервером и местоположением для /smb/$USER
  3. Если пользователь хочет использовать свою удаленную папку на машине, он создает символические ссылки /home/$USER к /smb/$USER. С другой стороны, пустой каталог (или копия /etc/skel) создается вручную, если пользователю нужна локальная домашняя папка.

Делать:

  1. Избавьтесь от символической ссылки (если возможно)
  2. Позволяет указать динамический удаленный сервер, на котором находится домашняя папка
  3. Создайте зашифрованную домашнюю папку (ecryptfs), если локальной не существует или если невозможно смонтировать удаленную папку

Пытаясь реализовать это с помощью pam_script, я натолкнулся на несколько препятствий:

  1. Скрипт запускается от имени пользователя root, поэтому просто экспортируется новый $HOME-variable не действует
  2. ecryptfs-utils ужасно задокументирован и имеет много недостатков. Нет возможности указать вручную домашний каталог пользователя. Afaik это взято из getent, которое будет точкой монтирования удаленной папки, а не /home/$USER