File share Samba 4 on Ubuntu 16

Задался целью настроить небольшой файло-обменник, выбор пал конечно на Samba. Доступ нужен смешанный - какие-то ресурсы по логин:паролю, какие-то просто для всех без запроса пароля, клиенты Linux, WindowsXp, Windows7,10.

apt-get install samba

cp /etc/samba/smb.conf /etc/samba/smb.conf_old

nano /etc/samba/smb.conf

[global]

workgroup = ATLANT

netbios name = ubuntu17

server string = ubuntu17

# for NTLM1 Winxp

lanman auth = yes

ntlm auth = yes

# for NTLM2 all Windows

sec = ntlmv2

client ntlmv2 auth = yes

# Setup charsets

dos charset = cp1251

unix charset = utf8

display charset = cp1251

# Disable printers

load printers = No

show add printer wizard = no

printcap name = /dev/null

disable spoolss = yes

# Setup logging

log file = /var/log/samba/smbd.log

max log size = 50

max xmit = 65536

debug level = 1

syslog = 0

panic action = /usr/share/samba/panic-action %d

# Setup daemon settings

domain master = No

dns proxy = No

server role = standalone server

# Securtity settings

security = user

map to guest = Bad Password

guest account = nobody

auth methods = guest, sam_ignoredomain

create mask = 0664

directory mask = 0775

hide dot files = yes

passdb backend = tdbsam

invalid users = root @wheel

#LAN

hosts allow = 192.168.0.0/16 127.0.0.0/8

hosts deny = 0.0.0.0/0

#interfaces = eth0, lo, eth1

#bind interfaces only = yes

[soft]

comment = Soft

path = /home/Win

#available = yes

browseable = yes

#writable = yes

#public = yes

#valid users = vip, admin

valid users = @sambaadmins, @sambausers

write list = @sambaadmins

read list = @sambausers

#write list = admin

[public]

comment = Public share

path = /home/public

create mask = 0666

directory mask = 0775

read only = No

guest ok = yes

Где:

#Две строки для того, чтобы могли авторизоваться машины XP

lanman auth = yes

ntlm auth = yes

#Две строки для того, чтобы все кто поддерживает NTLM2, ваторизовывались с помощью него.

sec = ntlmv2

client ntlmv2 auth = yes

#Три строки которые отвечают за запрос пароля при подключении к расшаренным папкам.

security = user

map to guest = Bad Password

guest account = nobody

#Пример шары для всех без пароля

[public]

comment = Public share

path = /home/public

create mask = 0666

directory mask = 0775

read only = No

guest ok = yes

#Пример шары для входа по логин паролю.

[soft]

comment = Soft

path = /home/Win

browseable = yes

valid users = @sambaadmins, @sambausers

write list = @sambaadmins

read list = @sambausers

Для второго варианта предварительно надо создать, группы пользователей sambaadmins и sambausers и внести в них пользователей.

groupadd sambaadmins

groupadd sambausers

adduser admin1 -g sambaadmins

usermod -s /bin/false admin1

adduser user1 -g sambausers

usermod -s /bin/false user1

smbpasswd -a user1

smbpasswd-a admin1

вводим пароль

systemctl restart smbd.service

О файле настроек читаем тут...-> http://smb-conf.ru/smbpasswd-smb-password-file.html