Setting up and Configuring Samba on CentOS - richnadeau/Tech-Journal-SYS265 GitHub Wiki

Install Samba on CentOS:

#Sudo yum install samba samba-client

Start Samba services and enable them to start automatically

#Sudo systemctl start smb.service

#Sudo systemctl start nmb.service

#Sudo systemctl enable smb.service

#Sudo systemctl enable nmb.service

Configure firewall to allow Samba

#firewall-cmd --permanent --zone=public --add-service=samba

#firewall-cmd --zone=public --add-service=samba

Create directory structure for Samba

#sudo mkdir /samba

Create new group for Samba

#sudo groupadd sambashare

Set directory ownership

#sudo chgrp sambashare /samba

Create a regular user for samba

#sudo useradd -M -d /samba/brady -s /usr/sbin/nologin -G sambashare brady

Create home directory for user, and set ownership

#sudo mkdir /samba/brady

#sudo chown brady:sambashare /samba/brady

#sudo chmod 2770 /samba/josh

Create password for new user

#sudo smbpasswd -a brady

Now, enable the Samba account

#sudo smbpasswd -e brady

Next, create admin account

#sudo useradd -M -d /samba/users -s /usr/sbin/nologin -G sambashare chara

Set password for a new account and enable user

#sudo smbpasswd -a chara

#sudo smbpasswd -e chara

Create share directory

#sudo mkdir /samba/users

Set ownership to your new admin account

#sudo chown chara:sambashare /samba/users

#sudo chmod 2770 /samba/users

Configure Samba Shares

#sudo vi /etc/samba/smb.conf

Here is what the Samba Config File should look like!

Restart services

sudo systemctl restart smb.service

sudo systemctl restart nmb.service

Disabling SELinux

sudo vi /etc/selinux/config

Here is what the SELinux config file should look like

You should reboot your Samba server so that SELinux settings can be applied and now Samba should now be working! Watch this demo video to see how you can access the file shares you made on Windows!