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

Скрытие доли samba из списка просмотра для неавторизованных пользователей

Я пытался правильно настроить свои акции samba.

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

Проблема возникает при настройке общего ресурса, который могут просматривать только определенные пользователи, хотя я установил общий ресурс, который будет разрешать доступ только определенным пользователям. Мне не удалось скрыть эту долю от гостей.

Я изучал опцию browseable = yes, но она скрывает ее от всех, включая пользователей, которые вошли в систему.

Есть идеи, как с этим справиться?

У меня есть следующие настройки для этой частной папки:

[private]
comment = private share for certain users
path = /media/drive/private
create mask = 0777
directory mask = 0777
writable = yes
public = no
users = admin

У меня сейчас есть

security = share

Но пробовали использовать browseable = no с

security = user

Чтобы скрыть полную долю, вы можете использовать следующую опцию:

[global]
access based share enum = yes

Чтобы скрыть файлы / папки внутри общего ресурса для пользователей, у которых нет разрешения на чтение этих файлов / папок, вы можете использовать:

[share]
...
hide unreadable = yes 

Вы можете использовать 'включают' директива внутри раздела определения общего ресурса.

Например: 'smb.conf':

security = user

[private]
...
browseable = no
...
include = /etc/samba/per-user-config/%u.conf

'allowed-user.conf':

browseable = yes

Пожалуйста, обратитесь к официальной документации Samba для получения дополнительной информации и переменных: http://www.samba.org/samba/docs/using_samba/ch06.html

Денис почти прав.

К сожалению, согласно официальной документации Samba (Вот), пользовательская переменная '% u' не работает с 'включают'.

Однако в большинстве случаев домашний каталог пользователя имеет то же значение, что и имя пользователя, и вы можете использовать это вместо этого так:

[share]
...
browseable = no
...
include = /etc/samba/%U.conf

где% U (обратите внимание на заглавную U) будет домашним каталогом текущего пользователя. Теперь предположим, что пользователь Итан с домашней папкой Итан. В этом случае вы создадите файл в /etc/samba/ethan.conf с содержанием:

browseable = yes

Почему бы вам не использовать browseable = no и сценарий входа в систему (если вы находитесь в домене), который отображает скрытый общий ресурс на диск (чистое использование)?
Никогда не пробовал, но должно работать

С FreeBSD (12.1) и Samba 4.11 ответ, предоставленный кгиздов, также не работает. Если вы протестируете файл smb.conf с помощью testparm, вы увидите, что% U исчезает в строке с оператором include.

[share]
...
browsable = no
...
include = /usr/local/etc/samba/%U.conf

изменяется на следующее при запуске testparm:

[share]
...
browsable = no
...
include = /usr/local/etc/samba/.conf

Что, конечно, не сработает.

Использование% G для использования основной группы аутентифицированного пользователя действительно работает. Поскольку большинство систем FreeBSD по умолчанию используют имя пользователя в качестве основной группы, конфигурация остается той же. В противном случае вам нужно будет добавить файлы .conf для каждой основной группы пользователей, для которой должен быть виден общий ресурс.

Так что измените:

include = /usr/local/etc/samba/%U.conf
to
include = /usr/local/etc/samba/%G.conf

и создайте файлы .conf в каталоге выше с текстом:

browseable = yes

Это помогло мне.

Это можно сделать, установив параметр browsable = no в общей папке samba.

вы можете ввести «допустимые пользователи = хранилище данных» в эту строку в вашем файле smb.conf.

Например: - ** [systemoft] comment = Samba в Ubuntu
путь = / home / datastore / share / backup
только чтение = нет

browsable = да
гость ok = нет действительных пользователей = user1 user2 user3 user4 **