Wednesday, June 12, 2013

How to install Samba server on CentOS 6

Part 1: Configuring anonymous share with samba server

To install the samba package,enter the following command:
sudo yum install samba samba-client samba-common



Check the version of installed samba software by using this command:
smbd --version



Configure the samba service, so that, it will start automatically at boot time:
sudo chkconfig smb on
sudo chkconfig nmb on



Disable the SELinux:
sudo nano /etc/selinux/config



Change SELinux from enforcing to disabled:
SELINUX=disabled



Add these Iptables rules, so that samba will work perfectly:
sudo iptables -I INPUT 4 -m state --state NEW -m udp -p udp --dport 137 -j ACCEPT
sudo iptables -I INPUT 5 -m state --state NEW -m udp -p udp --dport 138 -j ACCEPT
sudo iptables -I INPUT 6 -m state --state NEW -m tcp -p tcp --dport 139 -j ACCEPT
sudo service iptables save



Restart the Server!!!

Go to your Windows machine and use this command in order to check the WORKGROUP name:
net config workstation



It will show the output, something like this:



Backup the smb.conf file, then delete it and create the new one:
sudo cp /etc/samba/smb.conf /etc/samba/smb.conf.bak
sudo rm /etc/samba/smb.conf
sudo touch /etc/samba/smb.conf
sudo nano /etc/samba/smb.conf



Add these lines, in your smb.conf file (or change it according to your requirement):
#======================= Global Settings =====================================
[global]
workgroup = WORKGROUP
security = share
map to guest = bad user
#============================ Share Definitions ==============================
[MyShare]
path = /samba/share
browsable =yes
writable = yes
guest ok = yes
read only = no



Save the smb.conf file and restart the service:
sudo service smb restart
sudo service nmb restart



Access the samba share from windows (where centos is the name of my samba server):



wao, we are able to access the samba share successfully :-)



Let’s try to create something, inside the share folder:



Error, we cannot create anything inside the share folder :-(



Check the current permission on the samba share:
cd /samba/
ls -l



Change it, in such a way that everyone can read and write it(Check it, that it is allowed in your environment or not):
sudo chmod -R 0777 share
ls -l



Try to create something again, inside the share folder:



Verify the newly created file on samba server:
cd share/
ls -l



Part 2: Add and manage users and groups

Add a group in your CentOS server (in my case smbgrp):
sudo groupadd smbgrp



Create a new share, set the permission on the share:
cd /samba/
sudo mkdir secure
sudo chown -R arbab:smbgrp secure/
ls -l
sudo chmod -R 0770 secure/
ls -l



Add the user to the samba group and create samba password:
sudo usermod -a -G smbgrp arbab
sudo smbpasswd -a arbab



Edit the smb.conf file:
sudo nano /etc/samba/smb.conf



Add the newly created samba share in smb.conf file:
[Secure]
path = /samba/secure
valid users = @smbgrp
guest ok = no
writable = yes
browsable = yes



Restart the samba service:
sudo service smb restart
sudo service nmb restart



Check the syntax error with testparm:
sudo testparm



Testing from Windows Machine:





Verification from CentOS server:
cd /samba/secure/
ls -l



Hope this will help you!

No comments:

Post a Comment