Рейтинг:0

Предлагает ли Ubuntu какие-либо клиентские методы ограничения доступа к серверу?

флаг us

У меня есть домашний мультимедийный файловый сервер, к которому я подключил нового пользователя на Ubuntu 20.04 (через Samba). Файл-сервер — это микро-ПК, выполняющий работу NAS.

Новому пользователю 9 лет, и он хотел бы иметь права на чтение нескольких папок с детскими видео, ее собственными файлами и т. д. Я мог бы просто сделать ей их локальную копию, но было бы лучше найти способ ограничить доступ с гостевой стороны, а не на сервере.

Я заинтересован в том, чтобы оставить пользователя с правами root на общий ресурс samba, но, по-видимому, ограничить его другим способом в пользовательском интерфейсе.

  1. Есть ли преднамеренно ограниченный / доступный только для чтения файловый менеджер, который я могу установить, который не имеет возможности удалять или изменять файлы? Или которые могут использовать внутренние разрешенные или запрещенные списки местоположений папок без привязки к разрешениям пользователя?

  2. Возможно ли (вероятно) удалить команды -rm и -mv из возможностей Thunar? например настраиваемые действия могут использоваться для отключения клавиши «удалить» (и ее нет в меню), но по-прежнему есть возможность перемещаться по файловому серверу. В этом случае «родительский» каталог буквально является родительским каталогом.

  3. Существует ли какая-либо утилита типа родительского контроля, которая может ограничивать файловые менеджеры, а также доступ в Интернет или вместо него?

  4. В качестве альтернативы 1.это только для воспроизведения мультимедиа, так есть ли какое-либо клиентское приложение «Video Jukebox», которое нельзя перемещать/переименовывать/удалять?

  5. Кроме того, в качестве альтернативы 1. Я потенциально мог бы настроить приложение медиасервера на файловом сервере рядом с Samba, но это не похоже на то, что это будет просто с пакетами, доступными для Puppy Linux.

===

Люди часто говорят, что «дети находят способы обойти эти вещи», но это включает в себя множество предположений об уровнях способностей — помните, что мой обходной путь — сделать локальную копию.

спасибо хх Кэтти

Organic Marble avatar
флаг us
«Я заинтересован в том, чтобы оставить пользователю права root на общий ресурс samba, но, по-видимому, ограничить его каким-либо другим способом в пользовательском интерфейсе», это кажется самым сложным способом сделать это. Почему бы не управлять разрешениями и доступом на сервере .
evild4ve avatar
флаг us
@OrganicMarble, привет, спасибо за ответ - диск, смонтированный внутри сервера, имеет формат ntfs, но для его файлов из Windows не было установлено никаких пользователей или разрешений, так что, судя по тому, что я прочитал, это довольно сложно. В данный момент я рассматриваю разрешения Samba как другой уровень безопасности между файловой системой сервера и пользователем на клиентском ПК, но мне интересно, есть ли другие варианты на клиентском ПК.
Organic Marble avatar
флаг us
А, спасибо, это все усложняет.
evild4ve avatar
флаг us
@ evild4ve, я сократил это до проблемы с разрешениями Samba. Проблема, с которой я столкнулся, заключается в том, что ребенок-пользователь должен быть в Samba «список чтения =» в общей подпапке, но не в общей папке, над которой находится подпапка. Я найду другой форум, чтобы спросить об этом, но все равно нужен ограничение на стороне клиента в Ubuntu, если это возможно.
Рейтинг:0
флаг us

Я нашел решение с использованием разрешений Samba, но все же хотел бы знать, есть ли какие-либо подходы на стороне клиента. (никогда о них не слышал, но кто знает).

В моей ситуации, когда есть существующий + работающий файловый сервер, похожий на NAS, совместно использующий внешнюю файловую систему NTFS, где никакие пользовательские разрешения никогда не устанавливались из Windows, работает сервер Samba и клиентский ПК Ubuntu со взрослым пользователем (« взрослое имя") и дочерний пользователь ("дочернее имя")...

  • Сетевому хранилищу Samba требуется возможность добавления имени пользователя Ubuntu в качестве пользователя. Например. через «дочернее имя пользователя adduser»

  • имя пользователя ребенка добавляется на сервер, но его нельзя (легко) использовать для установки каких-либо разрешений для файлов acl/Linux на диске NTFS, мне просто нужно было, чтобы оно было там для Samba

  • На сервере после создания пользователя его необходимо добавить в Samba, а также включить в Samba. Команды для этого были «smbpasswd -a childname», а затем «smbpasswd -e childname».

  • пока они работали нормально до добавления дочернего пользователя (есть много руководств), строка /etc/fstab, которую сервер использует для монтирования своего жесткого диска, не так важна, и ее можно оставить прежней.

  • строка /etc/fstab, которую клиент использует для монтирования общего ресурса Samba, также не так важна, нет необходимости добавлять новые настройки для acl, или fmask= и dmask=, или file_mode= и folder_mode=, или какие-либо дополнительные учетные данные файл, который нужно создать

  • нет необходимости пытаться создать файл сопоставления пользователей, чтобы включить права доступа к файлам acl/POSIX на диске ntfs (это может быть возможно в качестве подхода)

  • в своих соответствующих файлах etc/fstab сервер может использовать ntfs в качестве типа файла, но клиент должен использовать cifs для автоматического монтирования

  • на общем жестком диске лучше не хранить папку дочернего пользователя в папке взрослого пользователя или чтобы папка взрослого была корнем диска (в моем случае я не мог легко избежать этих вещей)

  • простой вид разрешений, необходимых для добавления дочернего пользователя без прав на запись и с ограниченным доступом на чтение, можно управлять внутри Samba, редактируя smb.conf

  • в smb.conf глобальные настройки, необходимые для добавления этой строки: -

    просмотр = нет

  • в smb.conf запись для общего ресурса взрослого пользователя должна была добавить следующие строки:

    список чтения = корень взрослое имя дочернее имя

    список записи = корневое имя взрослого

  • в приведенном выше, хотя это и противоречит здравому смыслу, имя пользователя ребенка должно быть в списке чтения общего ресурса samba взрослого, поскольку его папка находится внутри него, и разрешения не просто «переходят», чтобы позволить им читать свой общий ресурс, не имея при этом возможности чтобы прочитать папку выше

  • настройка browserable = no небезопасна, как удаление разрешений файла acl/POSIX от этого пользователя для этих файлов, но в этом случае этого достаточно.

  • в smb.conf запись для общего ресурса дочернего пользователя должна была добавить следующие строки:

    список чтения = корень взрослое имя дочернее имя

    список записи = корневое имя взрослого

  • в моем случае вышеуказанные изменения не повлияли на локальные ПК с Windows, получающие доступ к общим ресурсам.

Другие подходы могли заключаться в том, чтобы сделать локальные копии всех файлов для дочернего пользователя или переформатировать общий жесткий диск как ext4 и организовать расположение папок по-другому, но я нашел этот способ предпочтительнее, он делает то, что я хотел, и использует Samba. контроль доступа короче acl

Если я сделал какие-либо ошибки, я был бы признателен узнать. Если есть более простой способ ограничения пользователя в пользовательском интерфейсе Ubuntu, это тоже было бы полезно (поскольку не помешает добавить такие вещи сверху, если они там есть).

Ответить или комментировать

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