After the release of Windows 10 Redstone 3 (version 1709), all the samba shares from RHEL 5, RHEL 6 won’t work from Windows 10 laptop. So, for people who are looking for a solution, here I would like to propose a small configuration change in Samba configuration file on your RHEL 5 or RHEL 6 servers so that you can continue to use Samba shares from Windows 10 laptop.
At first I would like to let you know the reason why Samba share is not working from Windows 10 machines. Microsoft has disabled SMBv1 protocol in their Redstone 3 (version 1709) Windows 10 update. They are recommending to upgrade to either SMBv2 or SMBv3 as the the older version SMBv1 is becoming increasingly targeted with vulnerabilities and man in the middle attacks.
On the other side, Red Hat Linux has both server and client support for the SMBv1 protocol. Red Hat Linux 7.2, which includes samba-4.2, and later comes with proper support for SMBv2 protocol, but earlier releases of Red Hat Linux only support SMBv1.
How to Enable SMB2 on RHEL 5 or RHEL 6
To enable SMBv2 on RHEL 5 or RHEL 6 machines, you need to update the samba packages to 3.6 series. SMBv2 support was added to the 3.6 series of samba. RHEL has rebased the samba packages to the 3.6 series in the RHEL 5.9 and RHEL 6.4 update. But still, the samba client on RHEL 5 and RHEL 6 supports only SMBv1.
Once you have updated samba packages to 3.6 series, you need to add the following config in the [global] section of smb.conf file.
max protocol = SMB2
Once you are done with the above mentioned changes, you need to restart the samba service to pick up the new changes to the configuration file.
service smb restart
Now, you can check the config changes using testparm command, Invoke the command on the command line as below:
testparm -s -v <path_to_smb.conf_file> |grep "max protocol"
You will see the output similar to below:
testparm -s -v /etc/samba/smb.conf |grep "max protocol" Load smb config files from /etc/samba/smb.conf Processing section "[homes]" Processing section "[printers]" Server role: ROLE_DOMAIN_MEMBER max protocol = SMB2