В настоящее время наши Клиенты Ubuntu соединяются с долями cifs во время начальной загрузки системы через/etc/fstab. Это имеет следующие недостатки:
Что я уже успешно протестировал на наших Клиентах Ubuntu: Используя kerberos аутентификацию на пользовательском входе в систему - таким образом, существует kerberos билет, доступный пользователю.
Используя это kerberos билет к (sudo) монтируют долю cifs в systemd userservice
Используя это kerberos билет для динамичного монтирования доли от наутилуса файловых браузеров и thunar
Таким образом, то, что я хотел бы, должно получить доступ к доле cifs как, я получаю доступ к доле nfs.
Я мог смонтировать долю CIFS многократно, отдельно для каждого пользователя в его корневой каталог, но
Существует ли способ смонтировать долю CIFS во время начальной загрузки пользовательским корнем, не указывая соединяющегося пользователя и затем с помощью полномочий от зарегистрированного пользователя (например, с помощью kerberos билета)?
Заранее спасибо, Bastian
Можно достигнуть этого использования, автомонтируются и многопользовательская опция для mount.cifs. Установите необходимые пакеты:
sudo apt install autofs keyutils cifs-utils
Следующий пример предполагает, что cifs сервер экспортирует долю, которую называют в честь пользователя, который получает доступ к нему. Обычно это подошло бы для корневых каталогов.
Добавьте это к Вашему /etc/auto.master
:
/cifs /etc/auto.cifs
В /etc/auto.cifs
помещать это:
* -fstype=cifs,multiuser,cruid=${UID},sec=krb5 ://server.domain/&
Удостоверьтесь, что заменили server.domain своим файловым сервером. Вы могли также использовать фиксированную долю этот путь. Просто замените *
фиксированным именем и также &
.
Важная деталь в вышеупомянутой конфигурации cruid=${UID}
. Это заставит ядро искать kerberos билет в контексте пользователя, получающего доступ к доле. Иначе это попробовало бы корневой кэш билета.
Наконец перезагрузка автомонтируется:
sudo service autofs reload
Если у Вас будет kerberos билет, то он смонтирует файловую систему /cifs/$USER
на первом доступе. Это означает, что необходимо явно ввести, например. cd /cifs/myuser
или подобное действие в файловом браузере GUI. Для предотвращения этого, Вы могли поместить символьные ссылки, указывающие на это от где-то в другом месте, и сказать пользователям получать доступ к ним.
Если Вы используете фиксированную долю (не использование *
и &
) конечно, необходимо было бы ввести cd /cifs/sharename
.
Последующий доступ другими пользователями к той же доле будет использовать их полномочия, сделанные возможными multiuser
опция. Никакое дополнительное монтирование не будет сделано, но существующий снова используется.
От mount.cifs (8):
multiuser Map user accesses to individual credentials when accessing the server. By default, CIFS mounts only use a single set of user credentials (the mount credentials) when accessing a share. With this option, the client instead creates a new session with the server using the user's credentials whenever a new user accesses the mount. Further accesses by that user will also use those credentials. Because the kernel cannot prompt for passwords, multiuser mounts are limited to mounts using sec= options that don't require passwords.
Также возможно добавить, что необходимое автомонтирование отображается на сервер LDAP для централизованного управления, но это, вероятно, выходит за рамки этого ответа.
В Вашем вопросе Вы попросили монтирование быть смонтированными как корень на начальной загрузке. Технически это сделано здесь в форме заполнителя, монтируются для autofs. Практически реальное монтирование только сделано на первом доступе пользователем.
Мы используем эту установку для ~100 клиентов на моем рабочем месте для доступа вполне к большой файловой системе блеска, и это работает надежно.