Saya memiliki mesin Windows 10 (pembaruan terbaru pada 2016-10-10) yang benar-benar menolak untuk mengakses share Samba publik di server Linux (Raspbian - Debian), tanpa kredensial pra-masuk di Windows.
Klien Windows 10
Alamat IP: 10.0.0.184
Bukan dalam domain.
Server Raspbian (Debian) Samba:
Alamat IP: 10.0.0.2
Bukan dalam domain.
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
TI seharusnya 100% sederhana dan mudah, bukan?
Skenario:
Dari mesin Windows 10, saya mencoba mengakses server Samba:
\\10.0.0.2
Saya mendapatkan pesan kesalahan berikut:
\\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.
Sangat palsu, dan benar-benar konyol.
Log Samba mengatakan:
[2016/10/14 19:10:55.209107, 0] smbd/service.c:995(make_connection_snum)
Can't become connected user!
Jadi, karena saya memiliki banyak pengalaman buruk (kurang lebih hanya) dengan berbagi file Windows di masa lalu, saya membuka Manajer Kredensial di Windows 10. Di sana, saya memasukkan entri baru berikut di bawah Kredensial Windows:
Internet atau alamat jaringan: 10.0.0.2
Nama pengguna: pi
Kata sandi: [kata sandi yang benar]
Sekarang, ketika saya mencoba mengakses server Samba dengan \ 10.0.0.2, jendela explorer terbuka dengan folder "publik" terlihat, sesuai dengan smb.conf
spesifikasi file.
Dan ketika saya mencoba untuk membuka bagian (publik), saya dapat membukanya, menyimpan dan menghapus file, dll. (Jika saya mencoba membuat folder baru, lima folder baru akan dibuat dalam hitungan detik, tetapi itu masalah untuk hari yang lain.)
Namun, ini sepenuhnya menolak seluruh poin dari pembagian publik, karena saya harus memasukkan kredensial yang valid di Credential Manager untuk membuatnya berfungsi. Jika kredensial tidak ada di sana, tidak hanya pembagian tidak berfungsi, tetapi Windows bahkan tidak dapat CONNECT ke server.
Ada yang punya ide? Ini hanyalah salah satu dari beberapa masalah dengan berbagi file di Windows 10, tetapi mungkin jika saya berhasil, beberapa masalah lain akan diselesaikan dalam proses.
Karena saya suka menyiksa diri sendiri dan menghabiskan berjam-jam dalam hidup saya, saya menghapus dan membersihkan Samba, reboot (ya, saya tahu), dan menginstalnya kembali. Lalu saya menghapus semua share dari file default dan hanya menambahkan ini:
[share_name]
browseable = yes
path = /home/public
guest ok = yes
read only = no
create mask = 777
Sekarang, dengan atau tanpa kredensial (yang tidak perlu) disimpan di Credential Manager, saya bahkan dapat mengakses server Samba, dengan kesalahan yang sama:
\\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.
Ini file apa log.smbd
mengatakan:
[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
Saya tahu bahwa Samba digunakan di banyak organisasi bisnis profesional. Bagaimana sih mereka membuatnya bekerja? Kesalahan ini sepenuhnya palsu dan melampaui semua kecerdasan!