How to install/configure Samba basics on CentOS7

Install Samba
# yum -y install samba*
Enable Samba
# systemctl start smb
# systemctl enable smb
Sample configuration
The sample configuration below can be used to get access to your linux root folder via \\ip-address\root$ with the user root.
# cat /etc/samba/smb.conf
# See smb.conf.example for a more detailed config file or
# read the smb.conf manpage.
# Run 'testparm' to verify the config is correct after
# you modified it.
[global]
workgroup = SAMBA
security = user
passdb backend = tdbsam
printing = cups
printcap name = cups
load printers = yes
cups options = raw
[homes]
comment = Home Directories
valid users = %S, %D%w%S
browseable = No
read only = No
inherit acls = Yes
[printers]
comment = All Printers
path = /var/tmp
printable = Yes
create mask = 0600
browseable = No
[print$]
comment = Printer Drivers
path = /var/lib/samba/drivers
write list = root
create mask = 0664
directory mask = 0775
[root$]
force user = root
create mask = 0755
writeable = yes
browsable = yes
path = /
Manage Samba users
In this example a new Linux user called ‘admin’ will be created/modified/removed and this user will be added to the samba configuration.
Add users
# useradd admin
# passwd admin
# smbpasswd -a admin
Modify users
# passwd admin
# smbpasswd admin
Remove users
# smbpasswd -x admin
# userdel -r admin
Allowing user to access samba share
Configure the Samba share in the /etc/samba/smb.conf configuration file to allow the new user to browse the share:
# vi /etc/samba/smb.conf
[share1]
comment = A Shared Directory
path = /var/tmp/sharedir
valid users = admin
public = no
writable = yes
Reload the smb.conf configuration file with below command.
# systemctl reload smb
Mount driveletter from windows
To mount the example above, use this command on Windows cmd.exe-terminal:
net use L: \\ip-address\root$ /user:root your_password
One thought on “How to install/configure Samba basics on CentOS7”
This otherwise useful explanation is fine until the net use statement, which does not follow the example and use the share name in the square brackets of the example stanza.
On Windows 10 it should be:
net use L: \\host.example.com\share1 /user:admin
and it will prompt for your password.
Besides, doing a root share is not good security. Making the username admin is also not so good .
On macOS Catalina, instead of net use one would open Finder / Go / Connect to Server and enter:
smb://admin@host.example.com/share1