Samba windows 10 не может получить доступ

Обновлено: 21.11.2024

У меня есть сервер Samba версии 4.1.11, работающий на Ubuntu 14.04. Я не могу подключиться из Windows 10 (но могу из Windows 7).

Сервер и клиенты не находятся в одной локальной сети.

Сообщение об ошибке, выдаваемое Windows, заключается в том, что сервер подключен к сети, но не отвечает. Однако журналы Samba говорят об обратном.

Я приложил журналы неудачной попытки подключения из Windows 10 и успешной попытки подключения из Windows 7 (для сравнения).

Вкратце, в отличие от успешной попытки, неудачная начинается с:

затем он запрашивает несколько различных протоколов, прежде чем выбрать SMB2_FF . Затем, после некоторых согласований безопасности, он переключается на протокол SMB 2. , затем SMB3_00 , а затем:

При успешной попытке с самого начала выбирается протокол SMB2_10, но этот протокол даже не запрашивается Windows 10.

Вот журналы:

Я добавил свой файл smb.conf в комментарий (не может быть более 2 ссылок с подпиской

16 ответов 16

Это решило мою проблему:

Дополнительная литература:

  • MSKB, упомянутый выше: поддержка Microsoft, KB2696547: Как обнаружить, включить и отключить SMBv1, SMBv2 и SMBv3 в Windows и Windows Server

Думаю, у меня есть решение, которое работает в Windows 7–10 и на Server 2012

В моем случае помогло закомментировать строку "smb ports 139".

Я использую FreeBSD 10 с Samba 4.4.5

Вот копия моего файла SMB4.conf. Я надеюсь, что это кому-то поможет.

Потратив целый день на решение проблемы, закомментирование строки "smb ports 139" ДЕЙСТВИТЕЛЬНО помогло! Огромное спасибо!!

Проблема: Windows удалила протокол SMB v1 в последней версии ОС Windows, Linux пытается подключиться по протоколу v1, а Windows/Linux не может попробовать протокол 2, 3 и т. д.

Решение: отредактируйте файл конфигурации linux (ubuntu) Samba:

sudo nano /etc/samba/smb.conf

в разделе [GLOBAL] добавить:

минимальный протокол клиента = SMB2

максимальный протокол клиента = SMB3

затем сохраните файл и перезапустите Samba

в моем случае мне также пришлось явно указать пароль или моего пользователя Samba, но я думаю, что это была моя конкретная системная проблема.

Я согласен с другими, связанными с настройками по умолчанию в Windows 10 в качестве клиента. Во всяком случае, я заработал БЕЗ каких-либо изменений на клиентской стороне с этим параметром в разделе Global на сервере samba (samba-4.7.1-9.el7_5.x86_64 - версия репо для CentOs 7):

Я обнаружил, что это будет работать, и без необходимости редактировать реестр или отключать службы SMB 2/3 я смог подключиться к своему raspi 3, который использует Samba-4.2.10-Debian, также вручную введя адрес как ввести настройку имени netbios в файле raspi smb.conf в адресной строке проводника в Windows 10.

Я нажимал на вкладку сети, но не мог найти свой общий ресурс samba, хотя общий доступ к сети был включен, а что нет, но после ввода //192.168.0.22 (адрес моего пи) или //SAMBA ( имя netbios, которое я установил в smb.conf), после чего я смог подключиться и использовать общий ресурс samba.

Моя Windows 10 в то время все еще не подключалась к SMB 4.x, но, похоже, это помогло обойти это. После этого просто подключите диск, и вам больше не нужно вручную вводить адрес.

Вместо Проводника откройте общую папку с помощью командной строки, используя следующую команду:

Дополнительную информацию см. в разделе Использование сети.

Включите функцию поддержки SMB 1.0 из панели управления, выполнив следующие действия:

Откройте панель управления.

Выберите «Программы» > «Программы и компоненты» > «Включить или отключить функции Windows» > «Поддержка общего доступа к файлам SMB 1.0/CIFS».

Отметьте Клиент SMB 1.0/CIFS и нажмите Enter.

Включите сетевое обнаружение и параметры общего доступа к файлам и принтерам, выполнив следующие действия:

Откройте панель управления.

Выберите Сеть и Интернет > Центр управления сетями и общим доступом > Дополнительные параметры общего доступа.

Выберите Включить сетевое обнаружение.

Выберите Включить общий доступ к файлам и принтерам в разделе Личное.

Выберите Сохранить изменения.

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

  1. Начать.
  2. Откройте Поиск, введите слово Службы и нажмите Enter.
  3. Измените свойство "Тип запуска" на "Автоматически" для следующих служб.
    • Хост поставщика функций обнаружения
    • Публикация ресурсов для обнаружения функций
    • Обнаружение SSDP
    • Хост устройства UPnP
  4. Перезагрузите систему.

Вы можете получать следующие сообщения об ошибках:

У вас нет разрешения на доступ\\

Разрешение

  1. Нажмите и удерживайте (или щелкните правой кнопкой мыши) общую папку.
  2. Выберите «Свойства», а затем выберите «Расширенный общий доступ» на вкладке «Общий доступ».
  3. Выберите «Разрешения», установите флажок «Разрешить полный доступ ко всем» и нажмите «Ввод».
  4. Нажмите "ОК" в диалоговом окне "Расширенный общий доступ".

Вот как предоставить разрешение «Полный доступ» всем:

  1. Выберите "Изменить" на вкладке "Безопасность".
  2. Выберите "Добавить", введите Все в поле "Введите имена объектов для выбора" и нажмите клавишу "Ввод".
  3. Отметьте Разрешить для полного доступа ко всем и нажмите Enter.
  4. Закройте диалоговое окно "Свойства".

Вот как убедиться, что протокол TCP/IP NetBIOS включен:

Откройте Поиск, введите слово Службы и нажмите Enter.

Дважды щелкните TCP/IP NetBIOS Helper на правой панели и убедитесь, что для свойства Тип запуска установлено значение Автоматически.

Выберите Панель управления > Сеть и Интернет > Центр управления сетями и общим доступом, выберите Изменить параметры адаптера на левой панели, а затем дважды щелкните Ethernet.

Выберите «Свойства» и дважды щелкните «Протокол Интернета версии 4 (TCP/IPv4)» на вкладке «Сеть».

Выберите «Дополнительно», выберите «Включить NetBIOS через TCP/IP» на вкладке WINS и нажмите «Ввод».

Дважды нажмите OK, чтобы закрыть диалоговое окно.

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

Разрешение

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

Способ 1. Включите небезопасный гостевой вход с помощью редактора реестра

Откройте редактор реестра.

Перейдите в раздел Компьютер\HKEY_LOCAL_MACHINE\SOFTWARE\Policies\Microsoft\Windows\LanmanWorkstation .

Вы должны создать ключ, если он не существует. Нажмите и удерживайте (щелкните правой кнопкой мыши) Windows, выберите «Создать» > «Ключ» и назовите ключ LanmanWorkstation.

Нажмите и удерживайте (щелкните правой кнопкой мыши) LanmanWorkstation, выберите «Создать» > «Значение DWORD (32-разрядное)», а затем назовите его AllowInsecureGuestAuth. Дважды щелкните его, задайте для параметра «Значение» значение 1 и нажмите клавишу ВВОД.

Способ 2. Включите небезопасный гостевой вход с помощью редактора локальной групповой политики

Откройте поиск, введите слово gpedit.msc и нажмите клавишу ВВОД.

Выберите Конфигурация компьютера > Административные шаблоны > Сеть > Рабочая станция Lanman.

На правой панели дважды щелкните Включить небезопасный гостевой вход.

Выберите "Включено" и нажмите клавишу ВВОД.

Код ошибки: 0x80004005. Неизвестная ошибка

Вместо автоматического получения IP-адреса укажите IP-адрес. Следуйте этим инструкциям:

У меня возникла проблема с подключением из Windows 10 к общей общедоступной папке, на которой размещен мой сервер Ubuntu 20.04. Я мог получить к нему доступ на двух других компьютерах с Windows 10, но не на другом.

Общедоступные ресурсы Samba недоступны

При попытке открыть общий сетевой ресурс Samba я постоянно получал эту ошибку:

Ошибка сети: Windows не может получить доступ к \\hostname. Проверьте написание имени. В противном случае могут возникнуть проблемы с вашей сетью. Чтобы попытаться идентифицировать и решить сетевые проблемы, нажмите Диагностика.

0x80070035 сетевой путь не найден

Запуск сетевого использования в командной строке Windows вызвал еще одну ошибку.

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

Эта ошибка возникает из-за ограничений локальной групповой политики Windows, не разрешающих доступ к «небезопасным гостевым входам». Похоже, Microsoft решила отключить доступ по умолчанию в новых обновлениях Windows из-за проблем с безопасностью.

Согласно сообщению Microsoft, они говорят:

Гостевой доступ в SMB2 отключен по умолчанию в Windows
Вредоносный компьютер, выдающий себя за законный файловый сервер, может разрешить пользователям подключаться в качестве гостей без их ведома. Корпорация Майкрософт рекомендует не изменять этот параметр по умолчанию. Если удаленное устройство настроено на использование гостевых учетных данных, администратор должен отключить гостевой доступ к этому удаленному устройству и настроить правильную аутентификацию и авторизацию.

Если вы знаете о последствиях для безопасности и хотите разрешить гостям доступ к вашим общедоступным общим ресурсам Samba, вы можете повторно включить его в regedit.

Regedit: установите для AllowInsecureGuestAuth значение 1

Нажмите на меню "Пуск", введите regedit и откройте его в административном режиме.

В regedit нажмите Control + F и найдите AllowInsecureGuestAuth . Это может занять минуту или около того, чтобы вернуть результат.

Когда вы получите результат, измените AllowInsecureGuestAuth на 1 .

Снова нажмите Control + F и нажмите «Найти далее».

Когда вы получите результат, измените AllowInsecureGuestAuth на 1 .

Снова нажмите Control + F, нажмите «Найти далее» и повторяйте описанные выше шаги, пока не измените все экземпляры AllowInsecureGuestAuth в regedit на 1 . В большинстве случаев в regedit есть только две записи.

Regedit: установите для параметра RequireSecuritySignature значение 1

В regedit нажмите Control + F и введите RequireSecuritySignature .

В группе флажков "Просмотреть" снимите все флажки, кроме "Значение", и нажмите "Найти далее".

Это может занять около минуты, прежде чем будет возвращен результат.

Когда вы получите результат, измените RequireSecuritySignature на 1 .

Снова нажмите Control + F, нажмите «Найти далее» и повторяйте описанные выше шаги, пока все экземпляры RequireSecuritySignature не будут изменены на 1 . В большинстве случаев в regedit есть только две записи.

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

Сообщите мне, помогло ли это. Подпишитесь на меня в Twitter, Facebook и YouTube или 🍊 купите мне смузи.

У меня возникла проблема с доступом к некоторым общим ресурсам Linux Samba в Windows 10 со следующей ошибкой:

Я могу успешно просматривать данные со старой версии openSUSE 12.1, которая использует только SMB1/CIFS, но не с более поздней версии openSUSE Leap 15, за исключением случаев, когда я принудительно использую протокол NT1 (то есть для SMB1/CIFS) на его сторона, в разделе /etc/samba/smb.conf global:

Для справки: по умолчанию минимальный протокол – это LANMAN1, а максимальный протокол – SMB3, затем этот диапазон включает Протокол NT1 (см. доступные минимальные и максимальные значения протокола SMB?):

И я могу получить доступ к этим общим папкам с другого компьютера с Linux, не навязывая протокол, с помощью следующей команды, например, я могу перечислить папки:

Или подключитесь к общей папке tmp с помощью:

Я также подтвердил, что SMB2 и 3 действительно активны с Как обнаружить, включить и отключить SMBv1, SMBv2 и SMBv3 в Windows, а также смог получить к ним доступ с другой Windows 10. И с компьютера, на котором я не могу получить к ним доступ, я успешно пропинговал MyLeap15Computer.

Во всяком случае, технически я могу получить доступ к своим общим папкам, принудительно задействовав протокол NT1, но, поскольку это должно быть возможно, я хочу иметь доступ к ним из SMB2 или SMB3, поскольку в SMB1/CIFS есть проблемы с безопасностью (а затем деактивировать его в Windows 10 тоже), кроме того, поскольку я могу получить к ним доступ из другой Windows 10 без принудительного использования этого протокола, это должно быть что-то в конфигурации Windows, но я не могу увидеть, что именно, поскольку все отображается активным на обоих.

И, наконец, даже если проблема кажется больше на стороне клиента, вот конфигурация сервера, /etc/samba/smb.conf без принудительного использования протокола NT1 (эта конфигурация допускает гостевых пользователей, поэтому для подключения не нужно указывать учетные данные):

Редактировать: вот дополнительная информация после того, что предложил @JW0914, то, что было предложено, не сработало, но я нашел кое-что интересное в журналах сервера (добавлен log level = 3 в /etc/samba /smb.conf global затем просматривал /var/log/samba/log.smbd после попытки подключения):

Я вижу, что сервер пытается аутентифицировать пользователя, вошедшего в Windows 10, но, поскольку он не существует, он возвращается к гостевому пользователю, но сразу после этого соединение сбрасывается. С другой стороны, с компьютером, на котором он работает, при входе в систему с тем же доменом / пользователем и успешном доступе у меня есть те же журналы (другое имя компьютера и IP), но в конце:

Я изучаю это, но был бы рад, если бы кто-нибудь понял, что происходит.

Edit2: после быстрого просмотра я нашел обходной путь для осеннего обновления Windows 10 и гостевой учетной записи samba, но при попытке использовать команду net use у меня возникла следующая проблема, значит, это моя компания, которая может изменить безопасность на более новом компьютере (оба используемых находятся в одном домене, но тот, который не работает, связан с более новой установкой):

Читайте также: