Дерево страниц

Вы просматриваете старую версию данной страницы. Смотрите текущую версию.

Сравнить с текущим просмотр истории страницы

« Предыдущий Версия 9 Следующий »

Примерно начиная с версии Samba 4.10 команда smbtree не находит никаких доступных ресурсов, не выдавая при этом никакой диагностики, при этом команда smbclient -L ресурсы конкретных машин отображает правильно. Кроме этого, команды smbtree и smbclient ещё и запрашивают пароль для текущего пользователя при каждом выполнении, чего ранее не было.

Samba и системы виртуализации

Samba (и 4.9 тоже) по умолчанию привязывается ко всем обнаруженным интерфейсам. Если на сервере samba установлена система виртуализации (проверено с Oracle VirtualBox и с KVM), то samba привязывается и к адаптерам виртуальных мостов, после чего в виртуальной подсети сама среди себя проводит выборы мастер-браузера, объявлет себя мастером и перестаёт видеть расшаренные ресурсы на физическом сетевом интерфейсе. Характерный симптом - после команды

sudo systemctl restart nmbd
при выполнении команды smbtree все (чужие) сетевые ресурсы отображаются около минуты, затем чужие ресурсы исчезают из выводимого списка. В /var/log/samba/log.smbd при этом появляется сообщение, что smbd сам себя назначил мастером виртуальной подсети:

 Samba name server ASTRA is now a local master browser for workgroup WORKGROUP on subnet 192.168.27.1

Чтобы этого избежать нужно в секцию [global] конфигурационного файла /etc/samba/smb.conf добавить указание, с какими интерфейсами работать, и запрет работать с другими интерфейсами:

interfaces = 192.168.32.0/24
bind interfaces only = yes

После чего перезапустить сервисы:

sudo systemctl restart smbd nmbd

Побочный эффект - команда smbtree, выполненная на сервере, при этом почему-то перестаёт показывать собственные ресурсы, хотя свой сервер показывает.

Отключение запроса пароля в командах smbtree и smbclient

Запрос пароля отключается опцией -N:

smbtree -N
или 
smblient -N -L ...

Включение обнаружения разделяемых ресурсов командой smbtree

На клиентах

Для того, чтобы КЛИЕНТЫ samba корректно запрашивали разделяемые ресурсы нужно:
в файл /etc/samba/smb.conf НА КЛИЕНТСКОМ КОМПЬЮТЕРЕ в секцию [global] добавить параметр:

client min protocol = NT1

После этого запросы к серверам samba версии 4.9 будут отправляться и отрабатываться корректно, запросы к настроенным по умолчанию серверам версии 4.11 и новее будут завершаться ошибкой вида:

smbtree -N

\\CE-2-13-3-1115                Samba 4.12.5-Debian
smbXcli_negprot_smb1_done: No compatible protocol selected by server.

На серверах

Для того, чтобы новые СЕРВЕРЫ samba корректно отвечали на запросы нужно:
в файл /etc/samba/smb.conf в секцию [global] НА СЕРВЕРЕ SAMBA добавить параметр:

server min protocol = NT1

После чего перезагрузить конфигурацию сервера:

sudo smbcontrol smbd reload-config

Прочее

В дефолтных настройках samba для ALD прописан параметр wide links = yes (следовать ссылкам вне экспортируемого дерева) , который не работает в сочетении с дефолтным параметром unix extensions = yes из соображений безопасности. Чтобы они работали нужно добавить allow insecure wide links = yes.


  • Нет меток