Setting up Samba home folder shares for a CentOS 7 server

CentOS 7 has made life so much easier compared to the last time. All of the following commands need to be run as the superuser.

yum install samba samba-client samba-common
systemctl enable smb
systemctl enable nmb
setsebool -P samba_enable_home_dirs on
firewall-cmd --permanent --zone=public --add-service=samba
firewall-cmd --reload

You might also need to set your Samba password depending on how your system is setup. Thus,

smbpasswd -a YOUR_USER_NAME

If you have symlinks in your home directory to other bits of the system you will also need to edit /etc/samba/smb.conf. In the [homes] section, add:

follow symlinks = yes
wide links = yes

Then, in the [global] section, add:

unix extensions = no