Вопрос или проблема
Перед обновлением моего основного сервера до Ubuntu 18.04 LTS я решил сначала протестировать установку на запасном ноутбуке. Все шло хорошо, пока я не попытался просмотреть файлы в Проводнике Windows через Samba.
Мой компьютер с Windows 10 может просматривать файлы (через Samba) на моем основном сервере Ubuntu (версия Ubuntu 16.04.3 LTS с Samba версии 4.3.11-Ubuntu). Однако он не может просматривать файлы на сервере Ubuntu 18.04 с Samba версии 4.7.6-Ubuntu. Компьютер с Windows 10 может видеть сервер Ubuntu 18.04 в Проводнике Windows, но каждый раз, когда я нажимаю, чтобы получить доступ к «общим» папкам и файлам, я получаю сообщение, что Windows не может получить доступ к серверу.
Я гуглил часами и пробовал различные возможные решения, предложенные другими, но ничего не получается. Я могу получить доступ к общим областям на любом компьютере с Ubuntu с другого компьютера, используя smbclient. Я склонен считать, что мой файл smb.conf в значительной степени правильный.
Может ли кто-нибудь пролить свет на эту проблему и подсказать, в чем может быть решение. Спасибо.
Чтобы упростить задачу, в настоящее время у меня файлы smb.conf одинаковые на обоих серверах Ubuntu. Как объяснено выше, Windows 10 может получить доступ к файлам на одном сервере, но не на другом.
smb.conf
[global]
server string = %h server (Samba, Ubuntu)
server role = standalone server
security = USER
map to guest = Bad User
obey pam restrictions = Yes
pam password change = Yes
passwd program = /usr/bin/passwd %u
passwd chat = *Enter\snew\s*\spassword:* %n\n *Retype\snew\s*\spassword:* %n\n *password\supdated\ssuccessfully* .
username map = /etc/samba/smbusers
unix password sync = Yes
syslog = 0
log file = /var/log/samba/log.%m
max log size = 1000
dns proxy = No
usershare allow guests = Yes
panic action = /usr/share/samba/panic-action %d
idmap config * : backend = tdb
[printers]
comment = All Printers
path = /var/spool/samba
create mask = 0700
printable = Yes
browseable = No
[print$]
comment = Printer Drivers
path = /var/lib/samba/printers
[www]
comment = websites
path = /var/www
valid users = chris
read only = No
Спасибо за вашу помощь.
У меня такая же проблема с доступом к Samba 4.7.6 на Ubuntu 18.04 с VMware на этом компьютере, работающим под Windows 10. Я не нашел решения, но нашел обходной путь. Я действительно могу подключиться к общему ресурсу, если вручную введу IP-адрес, в то время как попытка через имя компьютера в Проводнике Windows не работает. Она даже не показывает возможность подключения с другим пользователем.
У меня была такая же проблема. Решил так:
vi /etc/samba/smb.conf
[global]
(...)
ntlm auth=true
(...)
Попробуйте также следующие настройки
[data]
path = /data
browsable = yes
available = yes
read only = no
public = yes
writable = yes
guest ok = yes
create mask = 777
directory mask = 777
force create mode = 777
force directory mode = 777
.
Ответ или решение
Проблема совместимости между Windows 10 и Samba 4.7.6 на сервере Ubuntu 18.04 – частое явление, которое может быть обусловлено различными факторами. Я постараюсь подробно разобрать возможные причины и решения, опираясь на предоставленные данные и практический опыт.
Теория
Samba — это популярный программный пакет для интеграции UNIX/Linux-систем с Windows и другими системами. Он позволяет UNIX и Linux выступать в роли серверов-файлов и принтеров в сети, поддерживая протокол SMB/CIFS, который используют системы Windows. При работе с разными версиями Samba и Windows могут возникать проблемные моменты, связанные с изменениями в самих операционных системах и их взаимодействии. Windows 10, начиная с некоторых сборок, ужесточила безопасность сетевых подключений, в том числе понижая поддержку устаревших протоколов аутентификации и передачи данных, таких как NTLMv1, что может служить причиной данной проблемы.
Пример
Перед вами типичная проблема: Windows 10 видит сервер Ubuntu 18.04 в проводнике, но не может получить доступ к ресурсам. Важно отметить, что на предыдущем сервере Ubuntu с Samba 4.3.11 проблема не возникает. Сначала рассмотрим основные области, на которые стоит обратить внимание:
-
Конфигурация Samba: Ваша конфигурация кажется правильной на первый взгляд, однако она может потребовать небольших изменений для учета новых требований безопасности в Windows 10.
-
Настройки безопасности в Windows 10: Windows 10 по умолчанию может блокировать подключение, если замечены несовместимые уровни аутентификации.
-
Сетевые настройки: Это включает в себя и проверки, что все устройства в одной сети и нет ограничений на уровне брандмауэра или антивирусного ПО.
Применение
-
Обновите конфигурацию Samba: Добавьте параметр
ntlm auth = yes
в секцию[global]
вашего smb.conf. Это позволит включить поддержку старого NTLM-протокола, который может быть отключен по умолчанию в Windows 10.[global] ... ntlm auth = yes ...
-
Используйте IP-адреса: Как вы упомянули, у вас получается подключиться к Samba-ресурсам через IP-адрес вместо имени. Это может свидетельствовать о проблемах с DNS или именами в вашей сети. Поэтому временным решением может быть использование IP-адреса сервера в проводнике.
-
Проверьте настройки сетевой политики Windows: Убедитесь, что в редакторе групповых политик включены старые протоколы аутентификации. Это можно сделать через Политики безопасности Windows. В частности, параметр "Сетевая безопасность: Минимальный уровень аутентификации менеджера защиты" можно изменить на более высокий уровень совместимости.
-
Обновление систем и программного обеспечения: Убедитесь, что и Windows, и Ubuntu обновлены до последних стабильных версий. Обновления могут содержать исправления, которые решают известные проблемы с подключением.
-
Тестирование с отключенной аутентификацией: Временно упростите конфигурацию Samba, чтобы прозондировать, не является ли сложная аутентификация причиной проблемы. Попробуйте убрать строки
valid users = chris
в определении ресурса[www]
и проверьте, работает ли доступ с гостевыми настройками. -
Журналы ошибок: Регулярно проверяйте логи Samba, чтобы понять, какие ошибки возникают. Это часто даст точное указание на проблему.
-
Брандмауэр и антивирус: Некоторые антивирусные программы или брандмауэры в Windows могут блокировать подключения к сетевым ресурсам. Проверьте настройки безопасности, отключите антивирусный софт временно для тестирования.
Эти подходы могут помочь вам диагностировать и решить проблему с доступом к ресурсам через Samba. Успешное решение вопроса может потребовать некоторых изменений в настройках безопасности, но стоит учесть, что любое снижение уровня безопасности должно быть обоснованием и временным.