CIFS монтируется и Kerberos - полномочия на доступе или лучшей практике

В настоящее время наши Клиенты Ubuntu соединяются с долями cifs во время начальной загрузки системы через/etc/fstab. Это имеет следующие недостатки:

  • Пароли записаны в простом тексте, как монтируют опцию
  • Пароль должен истечь, но если он делает,/etc/fstab должен быть изменен на каждом клиенте. Таким образом, большинство паролей, используемых для монтирования просто, не истекает в данный момент
  • Доля CIFS смонтирована при соединяющемся пользователе и его полномочиях, таким образом, пользователь, на самом деле работающий с долей на Ubuntu, не отображен. Побочный эффект является размытостью полномочий, потому что пользователи Ubuntu не перечислены в полномочиях файловой системы Windows.

Что я уже успешно протестировал на наших Клиентах Ubuntu: Используя kerberos аутентификацию на пользовательском входе в систему - таким образом, существует kerberos билет, доступный пользователю.

Используя это kerberos билет к (sudo) монтируют долю cifs в systemd userservice

  • Pro: Работы над графическим входом в систему, а также ssh
  • Pro: Доля доступна как локальная файловая система
  • ДОВОД "ПРОТИВ": Если я монтируюсь на глобальной точке монтирования как/servers/mymount, я должен заботиться, который я не накладываю, монтируется multile пользователями. И соединяющийся пользователь затем был бы тем, который полномочия, использовался бы любым читающим пользователем.

Используя это kerberos билет для динамичного монтирования доли от наутилуса файловых браузеров и thunar

  • Pro: Если соединение с долей устанавливается через файловый браузер, никакой дополнительный сценарий или сервис не необходимы
  • Pro: доля смонтирована в пользовательский контекст, так определенно с пользовательским разрешением. Если у пользователя нет разрешения, существует все еще возможность соединить долю с другим пользователем.
  • Pro: монтирование могло быть автоматизировано использованием/etc/profile, gvfs-монтируются
  • Pro: Никакие sudo-права не необходимы, пользователь может gvfs-смонтироваться и - размонтирование, как он желает, очень интуитивный через файловый браузер
  • ДОВОД "ПРОТИВ": нет никакой фактической точки монтирования, стандартные команды Unix как ls, CP и так далее не работает. Я должен был бы использовать gvfs -* альтернативы. В этой точке вышеупомянутое решение с mount.cifs, кажется, лучше.

Таким образом, то, что я хотел бы, должно получить доступ к доле cifs как, я получаю доступ к доле nfs.

  • Никакие пароли не используются во время монтирования
  • Полномочия зарегистрированного пользователя должны использоваться
  • Файловая система должна вести себя как локальная файловая система (стандартные команды Unix должны работать),

Я мог смонтировать долю CIFS многократно, отдельно для каждого пользователя в его корневой каталог, но

Существует ли способ смонтировать долю CIFS во время начальной загрузки пользовательским корнем, не указывая соединяющегося пользователя и затем с помощью полномочий от зарегистрированного пользователя (например, с помощью kerberos билета)?

Заранее спасибо, Bastian

6
задан 19 April 2018 в 02:41

1 ответ

Используйте автомонтируются + многопользовательская опция mount.cifs

Можно достигнуть этого использования, автомонтируются и многопользовательская опция для 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 клиентов на моем рабочем месте для доступа вполне к большой файловой системе блеска, и это работает надежно.

3
ответ дан 23 November 2019 в 08:04

Другие вопросы по тегам:

Похожие вопросы: