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

Не удается подключиться к общему ресурсу Samba Linux из Windows 10

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

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

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

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

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

switch message SMBnegprot (pid 2855) conn 0x0

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

Server exit (NT_STATUS_END_OF_FILE).

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

Вот журналы:

Неудачная попытка (из Windows 10)
http://pastebin.com/M0xmBuY3

Успешная попытка (из Windows 7)
http://pastebin.com/jF8VzaiA

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

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

Windows 10 попытается согласовать SMB3_11, который Samba4 еще не поддерживает
за исключением текущего релиз-кандидата 4.3. Подозреваю на данный момент отключение
SMB2 / 3 на клиенте Windows 10 - ваш лучший, если не идеальный вариант.

Инструкцию по выполнению этого можно найти
Вот: https://support.microsoft.com/en-us/kb/2696547

https://lists.samba.org/archive/samba/2015-September/193886.html

Дальнейшее чтение:

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

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

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

Вот копия моего SMB4.conf. Надеюсь, это кому-то поможет.

[global]
    netbios name = SERV
    server string = FreeBSD Samba Server
    security = ADS
    workgroup = FFTPJ
    realm = fftpj.local

    log file = /var/log/samba4/%m.log
    log level = 1

    # Default idmap config used for BUILTIN and local windows accounts/groups
    idmap config *:backend = tdb
    idmap config *:range = 2000-9999

    # idmap config for domain FFTPJ
    idmap config DOMAIN:backend = rid
    idmap config DOMAIN:range = 10000-99999

    # Use template settings for login shell and home directory
    winbind nss info = template
    winbind enum users = Yes
    winbind enum groups = Yes
    winbind use default domain = yes

    client use spnego = yes
    client ntlmv2 auth = yes

    encrypt passwords = yes
    restrict anonymous = 2

    valid users = @"Domain Users

    # **** When smb ports is Set Windows 10 clients cannot connect
    #smb ports = 139

    load printers = No
    disable spoolss = Yes
    local master = No
    hide dot files = No
    wide links = No
    store dos attributes = yes

    vfs objects = acl_xattr
    map acl inherit = yes

[images]
    comment = Images Drive
    path = /images
    read only = No

[backups]
    comment = Backup Drive
    path = /data/backup
    read only = No

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

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

судо нано /etc/samba/smb.conf

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

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

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

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

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

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

[global]
    workgroup = <workgroup>
    realm = <realm>
    server string = FileShare server
    netbios name = <nbname>
    interfaces = lo eth0 <...>
    hosts allow = 127. 192.168.0. <...>
    log file = /var/log/samba/log.%m
    max log size = 10240
    security = user
    map to guest = Bad Password
    usershare allow guests = No
    server signing = auto
    passdb backend = tdbsam
    local master = yes

    vfs objects = acl_xattr
    map acl inherit = yes
    store dos attributes = yes

    winbind nss info = template
    winbind enum users = Yes
    winbind enum groups = Yes
    winbind use default domain = yes

    client use spnego = yes
    client ntlmv2 auth = yes

    encrypt passwords = yes

    local master = No
    hide dot files = No
    allow insecure wide links = yes
    store dos attributes = yes

Я обнаружил, что это будет работать, и без необходимости редактировать реестр или отключать службы 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, но, похоже, это помогло. После этого просто подключите диск, и вам больше не нужно вводить адрес вручную.

Версия Win 10 - 10.0.14393, сборка 14393 (с последними обновлениями)

Надеюсь, это поможет кому-нибудь еще в будущем.

// САМБА //192.168.0.22

Я новичок в Linux. Перепробовал много вариантов. После многих часов я нашел решение!

(Я рекомендую сделать копию smb.conf, а затем попытаться внести изменения) Работает на 100% на Windows 10/7/8 / Ubuntu 07.06.2017 с новой установкой Ubuntu и samba

Еще одна важная вещь, изменить путь к /home/server-media/Desktop/test или создайте такой же путь на своем сервере!

Для запуска и остановки самбы используйте команду

/etc/init.d/smbd stop
/etc/init.d/smbd start

Для удобного редактирования используйте Midnight Commander. Запустить команду из корня "mc"

Скопируйте весь текст из конфигурации ниже. После того, как вы убедитесь, что он работает, вы можете удалить старый.

[global]

#editat la ora 20:30 in data 07.06.2017

server max protocol = SMB3
encrypt passwords = yes
dns proxy = no
strict locking = no
oplocks = yes                                                                                                                   
deadtime = 15
max log size = 51200
max open files = 933761
logging = file
load printers = no
printing = bsd
printcap name = /dev/null
disable spoolss = yes
getwd cache = yes
guest account = nobody
map to guest = Bad User
obey pam restrictions = yes
directory name cache size = 0
kernel change notify = no
panic action = /usr/local/libexec/samba/samba-backtrace
nsupdate command = /usr/local/bin/samba-nsupdate -g
server string = Media Server
# habarnam de ce dar urmatoarele lini au importanta in wingoz
ea support = yes
store dos attributes = yes
lm announce = yes
hostname lookups = yes
# time server nu conteaza dar mi-l trebuie
time server = yes
acl allow execute always = true
dos filemode = yes
multicast dns register = yes
domain logons = no
local master = yes
idmap config *: backend = tdb
idmap config *: range = 90000001-100000000
server role = standalone
netbios name = MEDIA SERVER
workgroup = WORKGROUP
# am incercat si cu = share si apar erori la pornirea samba
security = user
pid directory = /home/server-media/Desktop/test
# aici am incercat cu mai multe variante ca si 0775 sau 0700 sau 0600 etc.
create mask = 0666
directory mask = 0777
client ntlmv2 auth = yes
# asta iara nu mai e important!
dos charset = CP437
unix charset = UTF-8       
log level = 1          





[homes]
comment = Home Directories
path = /home
valid users = %U
read only = no
available = yes
browseable = yes
writable = yes
guest ok = no
public = no
printable = no
locking = no
strict locking = no

[netlogon]
comment = Network Logon Service
path = /var/lib/samba/netlogon
#din no in yes la read
read only = yes
available = yes
browseable = yes
writable = no
#din no in yes la guest
guest ok = yes
public = no
printable = no
locking = no
strict locking = no

[profiles]
comment = User Profiles
path = /var/lib/samba/profiles
read only = no
available = yes
browseable = yes
writable = yes
guest ok = no
public = no
printable = no
#din 0600
create mode = 0666
#din 0700
directory mask = 0777
locking = no
strict locking = no

[printers]
comment = All Printers
path = /var/spool/samba
browseable = yes
writable = no
#guest am pus yes
guest ok = yes
public = no
printable = yes
locking = no
strict locking = no
#am bagat urm linii
read only = no
create mask = 0775

[pdf-documents]
path = /var/lib/samba/pdf-documents
comment = Converted PDF Documents
admin users = %U
available = yes
browseable = yes
writeable = yes
guest ok = yes
locking = no
strict locking = no

[pdf-printer]
path = /tmp
comment = PDF Printer Service
printable = yes
guest ok = yes
use client driver = yes
printing = bsd
print command = /usr/bin/gadmin-samba-pdf %s %u
lpq command =
lprm command =

[test]
path = /home/server-media/Desktop/test
comment = doar de test
valid users = test
write list = test
admin users = test
directory mask = 0755
create mode = 0777
read only = no
available = yes
browseable = yes
writable = yes
guest ok = no
public = yes
printable = no
locking = no
strict locking = no

В Windows 10 Fall Creators Update и Windows Server версии 1709 (RS3) сетевой протокол Server Message Block версии 1 (SMBv1) больше не устанавливается по умолчанию.

Программа и функции, добавление / удаление функций Windows ... включите CIF / SMB 1.0

Microsoft удалила поддержку протокола SMBv1 по умолчанию в Windows 10/2016 и выше. Клиенты samba, кажется, пытаются подключиться с помощью SMBv1, что, следовательно, терпит неудачу.

Возможно, вам удастся внести эти изменения в свой /etc/samba/smb.conf:

client min protocol = SMB2
client max protocol = SMB3

в [GLOBAL] Раздел.

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

У меня была такая же проблема, моя рабочая станция с Windows 10 не могла подключиться к Sambashare после обновления win, ошибка была ошибкой 53, а отсутствующие протоколы отсутствовали в настройках wins в реестре, в моем случае ничего не помогло!

Что сработало для меня:

Откройте службы (щелкните правой кнопкой мыши Пуск -> Управление компьютером -> Службы и приложения -> и щелкните службы)

Теперь в службах прокрутите вниз до «Рабочая станция», служба запущена? В противном случае у вас может быть та же проблема, что и у меня.

на моих 3 рабочих ПК теперь все имеют зависимости + драйвер поддержки браузера + интерфейс сетевого хранилища + минидиректор SMB 1.x + минидиректор SMB 2.0

Я исправил свою проблему следующим образом:

удалить службу: sc.exe удалить lanmanworkstation

Повторно создайте службу: sc.exe config lanmanworkstation зависимость = bowser / mrxsmb10 / mrxsmb20 / nsi

а затем запустите службу

И мой ресурс Samba был доступен даже без перезагрузки.

У меня Samba 4.2.10 на CentOS 7.2. Ни один из приведенных выше ответов не помог мне, но когда я отключил jumbo-пакет в Windows 10, все начало работать с настройками по умолчанию при чистой установке Windows 10, очень просто. Надеюсь, это поможет кому-то другому. :)

Я потерял более 5 часов на поиск решения этой проблемы. Надеюсь, это решит и ваши проблемы.

Решение: chcon -R -t samba_/share_t /path_to_your_samba_location

В моем случае: chcon -R -t samba_/share_t /home/share

Я сделал аккаунт только для этого

файл smb.conf имеет следующее

# The specific set of interfaces / networks to bind to
# This can be either the interface name or an IP address/netmask;
# interface names are normally preferred
;   interfaces = 127.0.0.0/8 eth0

Ну, мой eth не был сопоставлен с eth0. Это был enp3s0

# The specific set of interfaces / networks to bind to
# This can be either the interface name or an IP address/netmask;
# interface names are normally preferred
;   interfaces = 127.0.0.0/8 enp3s0

Изменил этот внутренний файл, перезапустил smb, и теперь Windows могла его видеть. Также убедитесь, что вы включили smb в брандмауэре ubuntu,

sudo ufw разрешить самбу

Мое решение. Переместите текущий smb.conf в smb.conf.orig (начните заново). Создайте новый smb.conf и добавьте следующее:

[global]
   workgroup = workgroup
   server string = %h server (Samba, Ubuntu)
   log file = /var/log/samba/log.%m
   max log size = 1000
   logging = file
   panic action = /usr/share/samba/panic-action %d
   server role = standalone server
   obey pam restrictions = yes
   unix password sync = yes
   passwd program = /usr/bin/passwd %u
   passwd chat = *Enter\snew\s*\spassword:* %n\n *Retype\snew\s*\spassword:* %n\n *password\supdated\ssuccessfully* .
   pam password change = yes
   map to guest = bad user
   lanman auth = no
   ntlm auth = no
   client ntlmv2 auth = yes
   usershare allow guests = no
#
[Share]
   comment = Share Root
   writeable = yes
   browseable = yes
   read only = no
   create mask = 0775
   directory mask = 0775
   valid users = a_user
   path = /
   guest ok = no
#

В моем случае SMB2 выглядит так, как будто он был согласован, затем сервер Samba Linux попытался согласовать SMB3.1.1, потому что Windows 10 сказала, что он поддерживается. Затем Windows 10 разрывает соединение. Я отключил SMB3 на своем сервере Samba, и он отлично заработал.

Под [GLOBAL] в /etc/samba/smb.conf:

        client min protocol = SMB2
        client max protocol = SMB2