easy-stack/set_smb_share.sh

81 lines
1.7 KiB
Bash
Raw Permalink Normal View History

SHARE_DIR=/data/share
## DEBIAN
sudo apt-get install samba smbclient cifs-utils
## CENTOS
sudo yum install samba samba-common samba-client
## Create a directory to share
sudo mkdir -p ${SHARE_DIR}
sudo chmod -R 2770 ${SHARE_DIR}
sudo chown -R nobody:nogroup ${SHARE_DIR}
sudo chcon -t samba_share_t ${SHARE_DIR}
cat << EOF >> /etc/samba/smb.conf.bkp
[global]
interfaces = 10.0.0.0/24 eth0
# hosts allow = 127.0.0.1/8 192.168.1.0/24
workgroup = WORKGROUP
server string = Samba Server %v
netbios name = MYSHARES
# security = user
unix password sync = Yes
passwd program = /usr/bin/passwd %u
map to guest = bad user
dns proxy = no
[share]
path = ${SHARE_DIR}
available = yes
valid users = ${USER}
read only = no
browsable = yes
public = no
writable = yes
[Public]
comment = Public Folder
path = ${SHARE_DIR}/public
writable = yes
guest ok = yes
guest only = yes
force create mode = 770
force directory mode = 770
[Private]
comment = Private Folder
path = ${SHARE_DIR}
writable = yes
guest ok = no
valid users = @smbshare
# force create mode = 660
# force directory mode = 770
inherit permissions = yes
EOF
sudo testparm /etc/samba/smb.conf.bkp
## IF EXECUTION WORKS, THEN MOVE THE FILE TO THE ORIGINAL PATH
sudo mv /etc/samba/smb.conf.bkp /etc/samba/smb.conf
sudo useradd -M -s /sbin/nologin sambauser
sudo usermod -aG smbshare sambauser
sudo smbpasswd -a sambauser
sudo smbpasswd -e sambauser
## DEBIAN
sudo systemctl restart nmbd
sudo systemctl restart smbd
sudo ufw allow from 192.168.205.0/24 to any app Samba
## CENTOS
sudo firewall-cmd --add-service=samba --zone=public --permanent
sudo firewall-cmd --reload
sudo systemctl start smb
sudo systemctl enable smb
sudo systemctl status smb
sudo systemctl start nmb
sudo systemctl enable nmb
sudo systemctl status nmb