1

У меня есть машина с Windows 10 (последнее обновление от 2016-10-10), которая абсолютно отказывается получить доступ к общедоступному ресурсу Samba на сервере Linux (Raspbian - производный от Debian) без предварительного ввода учетных данных в Windows.

Клиент Windows 10

IP-адрес: 10.0.0.184

Не в домене.

Raspbian (Debian) Samba сервер:

IP-адрес: 10.0.0.2

Не в домене.

smb.conf:

[global]

workgroup = WORKGROUP
server string = %h server
dns proxy = no
log file = /var/log/samba/log.%m
max log size = 1000
syslog = 0
panic action = /usr/share/samba/panic-action %d

security = share

passdb backend = tdbsam
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

[public]
  path = /home/public
  available = yes
  read only = no
  browsable = yes
  public = yes
  writable = yes
  guest ok = yes

Это должно быть примерно на 100% простым и понятным, верно?

Сценарий:

С компьютера с Windows 10 я пытаюсь получить доступ к серверу Samba:

\\10.0.0.2

Я получаю следующее сообщение об ошибке:

\\10.0.0.2 is not accessible. You might not have permission to use this network resource. Contact the administrator of this server to find out if you have access permissions.

A specified login session does not exist. It may already have been terminated.

Довольно обманчиво и совершенно нелепо.

В журнале самбы говорится:

[2016/10/14 19:10:55.209107,  0] smbd/service.c:995(make_connection_snum)
Can't become connected user!

Итак, поскольку в прошлом у меня было много плохого опыта (более или менее только) с общим доступом к файлам Windows, я открываю диспетчер учетных данных в Windows 10. Там я вставляю следующую новую запись в Windows Credentials:

Интернет или сетевой адрес: 10.0.0.2

Имя пользователя: пи

Пароль: [правильный пароль]

Теперь, когда я пытаюсь получить доступ к серверу Samba с \10.0.0.2, открывается окно проводника с видимой папкой "public", как указано в спецификации файла smb.conf .

И когда я пытаюсь открыть (публичный) общий ресурс, я могу открыть его, сохранить и удалить файлы и т.д. (Если я пытаюсь создать новую папку, пять новых папок создаются в секунду, но это проблема для другого дня.)

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

У кого-нибудь есть идеи? Это только одна из нескольких проблем с общим доступом к файлам в Windows 10, но, возможно, если я получу эту возможность, некоторые другие проблемы будут решены в процессе.

Так как я люблю мучить себя и тратить часы своей жизни, я удалил и очистил Samba, перезагрузил (да, я знаю) и переустановил его. Затем я удалил все общие ресурсы из файла по умолчанию и добавил только это:

[share_name]
    browseable = yes
    path = /home/public
    guest ok = yes
    read only = no
    create mask = 777

Теперь, с (или без) (ненужными) учетными данными, хранящимися в Credential Manager, я могу даже получить доступ к серверу Samba с той же ошибкой:

\\10.0.0.2 is not accessible. You might not have permission to use this      network resource. Contact the administrator of this server to find out if you have access permissions.

A specified login session does not exist. It may already have been terminated.

Вот что говорит файл log.smbd :

[2016/10/14 21:06:27.956914,  0] lib/util_sock.c:605(open_socket_in)
  open_socket_in(): socket() call failed: Address family not supported by protocol
[2016/10/14 21:06:27.958765,  0] smbd/server.c:578(smbd_open_one_socket)
  smbd_open_once_socket: open_socket_in: Address family not supported by protocol
[2016/10/14 21:06:27.997747,  0] printing/print_cups.c:110(cups_connect)
  Unable to connect to CUPS server localhost:631 - Connection refused
[2016/10/14 21:06:28.011317,  0] lib/util_sock.c:605(open_socket_in)
  open_socket_in(): socket() call failed: Address family not supported by protocol
[2016/10/14 21:06:28.012127,  0] smbd/server.c:578(smbd_open_one_socket)
  smbd_open_once_socket: open_socket_in: Address family not supported by protocol
[2016/10/14 21:06:28.015107,  0]     printing/print_cups.c:487(cups_async_callback)
  failed to retrieve printer list: NT_STATUS_UNSUCCESSFUL

Я знаю, что Samba используется во многих профессиональных деловых организациях. Как, черт возьми, они заставляют его работать? Эти ошибки являются полностью ложными и не поддаются разуму!

1 ответ1

0

Клиенту Windows 10 требуются некоторые дополнительные вызовы для обработки сервером SMB. Я не знаю, поддерживает ли Samba их. Несколько других серверов SMB поддерживают Windows 10 и Windows 2016.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .