Setup Samba Server ໃຊ້ tdbsam Backend ໃນ RHEL/CentOS 6.3, Fedora 17


Samba ແມ່ນໂປຼແກຼມທີ່ເປີດແລະເປັນທີ່ນິຍົມທີ່ສຸດທີ່ໄດ້ຮັບການ ນຳ ໃຊ້ຢ່າງກວ້າງຂວາງເຊິ່ງຊ່ວຍໃຫ້ຜູ້ໃຊ້ສຸດທ້າຍສາມາດເຂົ້າເຖິງໄດເລກະທໍລີທີ່ໃຊ້ຮ່ວມກັນຈາກເຄື່ອງຄອມພິວເຕີ້ຕ່າງໆທີ່ຢູ່ໃນເຄືອຂ່າຍດຽວກັນ. Samba ຍັງມີຊື່ວ່າເປັນລະບົບແຟ້ມເຄືອຂ່າຍແລະສາມາດຕິດຕັ້ງໃນລະບົບປະຕິບັດການ Linux/Unix. ຕົວມັນເອງ Samba ແມ່ນໂປໂຕຄອນຂອງລູກຄ້າ/ເຊີບເວີຂອງ SMB (Server Message Block) ແລະ CIFS (ລະບົບເອກະສານອິນເຕີເນັດທົ່ວໄປ). ການໃຊ້ windows smbclient (GUI) ຫຼືຜູ້ ສຳ ຫຼວດເອກະສານ, ຜູ້ໃຊ້ສຸດທ້າຍສາມາດເຊື່ອມຕໍ່ກັບ server server ຂອງ Samba ຈາກບ່ອນເຮັດວຽກຂອງ windows ຕ່າງໆເພື່ອເຂົ້າເຖິງເອກະສານແລະເຄື່ອງພິມທີ່ແບ່ງປັນ.

ບົດແນະ ນຳ ນີ້ອະທິບາຍວິທີການຕັ້ງຄ່າ Samba Server (fileerver) ໂດຍໃຊ້ tdbsam Backend ໃນ RHEL 6.3/6.2/6.1/6/5.8, CentOS 6.3/6.2/6.1/6/5.8 ແລະ Fedora 17,16,15,14,13,12 ລະບົບ ແລະພວກເຮົາຈະຮຽນຮູ້ວິທີການຕັ້ງຄ່າມັນເພື່ອແບ່ງປັນເອກະສານຜ່ານເຄືອຂ່າຍໂດຍໃຊ້ SMB ອະນຸສັນຍາ, ພ້ອມທັງພວກເຮົາຈະເຫັນວິທີການສ້າງແລະເພີ່ມຜູ້ໃຊ້ລະບົບໃນຖານຂໍ້ມູນຂອງ samba.

ພວກເຮົາ ກຳ ລັງໃຊ້ລະບົບ RHEL 6.3 ກັບ hostname tecmint ກັບທີ່ຢູ່ IP 172.16.25.126.

ກ່ອນອື່ນ ໝົດ, ກວດເບິ່ງວ່າ SELinux ປະຈຸບັນຖືກເປີດໃຊ້ງານຫຼືພິການໂດຍມີ ຄຳ ສັ່ງຕໍ່ໄປນີ້.

# selinuxenabled && echo enabled || echo disabled

enabled

ໃນກໍລະນີຂອງພວກເຮົາ, SELinux ຖືກເປີດໃຊ້ໃນປະຈຸບັນ, ສະນັ້ນພວກເຮົາຕ້ອງໄດ້ປິດໃຊ້ງານມັນພາຍໃຕ້ລະບົບ RHEL/CentOS/Fedora, ເປີດເອກະສານທີ່ເອີ້ນວ່າ/etc/selinux/config ກັບຕົວເລືອກບັນນາທິການຂອງທ່ານ. (ບໍ່ສົນໃຈຂັ້ນຕອນນີ້, ຖ້າ SELinux ຖືກປິດໃຊ້ງານແລ້ວ).

# vi /etc/selinux/config

ແລະປ່ຽນເສັ້ນທີ່ເວົ້າວ່າ SELINUX = ເປີດໃຊ້ງານກັບ SELINUX = ຖືກປິດໃຊ້ງານແລ້ວເປີດລະບົບ ໃໝ່.

# This file controls the state of SELinux on the system.
# SELINUX= can take one of these three values:
#     enforcing - SELinux security policy is enforced.
#     permissive - SELinux prints warnings instead of enforcing.
#     disabled - No SELinux policy is loaded.
SELINUX=disabled
# SELINUXTYPE= can take one of these two values:
#     targeted - Targeted processes are protected,
#     mls - Multi Level Security protection.
SELINUXTYPE=targeted

ໃນທີ່ນີ້, ພວກເຮົາຈະຕ້ອງໄດ້ເລີ່ມຕົ້ນລະບົບເພື່ອເຮັດ ໃໝ່ ລະບົບແຟ້ມທັງ ໝົດ ໃນລະບົບບູດ. ຂະບວນການ reboot ນີ້ສາມາດໃຊ້ເວລາບາງເວລາ, ຂື້ນກັບປະລິມານຂອງເອກະສານ.

# init 6

ເມື່ອລະບົບເຂົ້າສູ່ລະບົບວ່ອງໄວ, ເຂົ້າສູ່ລະບົບກັບຜູ້ໃຊ້ຮາກແລະເລີ່ມຕິດຕັ້ງຊຸດ Samba.

ພວກເຮົາໃຊ້ເຄື່ອງມືຈັດການຊຸດ YUM ເພື່ອຕິດຕັ້ງແພັກເກດ Samba.

# yum install samba samba-common cups-libs samba-client

ເມື່ອ samba ຕິດຕັ້ງ ສຳ ເລັດແລ້ວ, ຕອນນີ້ ກຳ ນົດການຕັ້ງຄ່າມັນໂດຍໃຊ້ backend ລະຫັດຜ່ານ tdbsam. ເປີດແຟ້ມເອກະສານ /etc/samba/smb.conf.

# vi /etc/samba/smb.conf

ແລະກວດເບິ່ງສາຍຕໍ່ໄປນີ້ໃນສ່ວນຕ່າງຂອງ Server Options. ສາຍນີ້ຊ່ວຍໃຫ້ຜູ້ໃຊ້ສາມາດເຂົ້າສູ່ລະບົບ server Samba.

# ----------------------- Standalone Server Options ------------------------
#
# Scurity can be set to user, share(deprecated) or server(deprecated)
#
# Backend to store user information in. New installations should
# use either tdbsam or ldapsam. smbpasswd is available for backwards
# compatibility. tdbsam requires no further configuration.

        security = user 
        passdb backend = tdbsam

ຕອນນີ້, ພວກເຮົາຈະສ້າງໄດເລກະທໍລີແບ່ງປັນ Samba ສຳ ລັບການແບ່ງປັນເອກະສານ ສຳ ລັບຜູ້ໃຊ້ທັງ ໝົດ. ດໍາເນີນການຄໍາສັ່ງດັ່ງຕໍ່ໄປນີ້.

# mkdir -p /home/sambashares/tecmintusers
# chown -R root:users /home/sambashares/tecmintusers
# chmod -R 775 /home/sambashares/tecmintusers

ຕື່ມສາຍຕໍ່ໄປນີ້ຢູ່ທາງລຸ່ມຂອງເອກະສານ /etc/samba/smb.conf.

[tecmintusers]
  comment = All Users
  path = /home/sambashares/tecmintusers
  valid users = @users
  force group = users
  create mask = 0660
  directory mask = 0771
  writable = yes

ສ້າງລິ້ງການເລີ່ມຕົ້ນຂອງລະບົບ ສຳ ລັບ Samaba.

# chkconfig --levels 235 smb on

ຕອນນີ້ເລີ່ມ server Samba ຄືນ ໃໝ່.

# /etc/init.d/smb restart

ພວກເຮົາຈະສ້າງຜູ້ໃຊ້ທີ່ເອີ້ນວ່າ tecmint ແລະຕັ້ງລະຫັດຜ່ານໃຫ້ມັນ.

# useradd tecmint -m -G users
# passwd tecmint

ຕອນນີ້ຕື່ມ tecmint ຜູ້ໃຊ້ທີ່ສ້າງຂື້ນມາ ໃໝ່ ໃນຖານຂໍ້ມູນຜູ້ໃຊ້ Samba ແລະຕັ້ງລະຫັດລັບໃຫ້ລາວ.

# smbpasswd -a tecmint

ວິທີນີ້ທ່ານສາມາດສ້າງຜູ້ໃຊ້ໃຫ້ຫຼາຍເທົ່າທີ່ທ່ານຕ້ອງການ, ພຽງແຕ່ປ່ຽນຊື່ຜູ້ໃຊ້ tecmint ດ້ວຍຊື່ຜູ້ໃຊ້ທີ່ຕ້ອງການ.

ຢືນຢັນໄດເລກະທໍລີແບ່ງປັນພາຍໃນລະບົບ Linux ໂດຍໃຊ້ແພັກເກັດ smbclient ດ້ວຍຕົວເລືອກ -L. ມັນຈະສະແດງບັນຊີລາຍຊື່ຂອງໄດເລກະທໍລີແບ່ງປັນທີ່ມີຢູ່ໃນ tecmint ຂອງໂຮດ.

# smbclient -L tecmint

Domain=[MYGROUP] OS=[Unix] Server=[Samba 3.5.10-125.el6]

        Sharename       Type      Comment
        ---------       ----      -------
        tecmintusers    Disk      All Users
        IPC$            IPC       IPC Service (Samba Server Version 3.5.10-125.el6)
Anonymous login successful
Domain=[MYGROUP] OS=[Unix] Server=[Samba 3.5.10-125.el6]

        Server               Comment
        ---------            -------

        Workgroup            Master
        ---------            -------

ພະຍາຍາມເຂົ້າສູ່ລະບົບແບ່ງປັນ Samba ພາຍໃຕ້ລະບົບ Linux ໂດຍໃຊ້ຊື່ຜູ້ໃຊ້ເປັນ tecmint ກັບລະຫັດຜ່ານ.

# smbclient -L //tecmint/tecmintusers -U tecmint
Enter tecmint's password:
Domain=[MYGROUP] OS=[Unix] Server=[Samba 3.5.10-125.el6]

        Sharename       Type      Comment
        ---------       ----      -------
        tecmintusers     Disk      All Users
        IPC$            IPC       IPC Service (Samba Server Version 3.5.10-125.el6)
        tecmint         Disk      Home Directories
Domain=[MYGROUP] OS=[Unix] Server=[Samba 3.5.10-125.el6]

        Server               Comment
        ---------            -------

        Workgroup            Master
        ---------            -------

ດຽວນີ້ລອງເຂົ້າສູ່ລະບົບຈາກລະບົບ Windows ຂອງທ່ານ, ເປີດ Windows Explorer ແລ້ວພິມທີ່ຢູ່ \\ 172.16.25.126 \ tecmint ແລະໃສ່ຊື່ຜູ້ໃຊ້ເປັນ tecmint ແລະລະຫັດຜ່ານ, ທ່ານຈະເຫັນໄດເລກະທໍລີບ້ານຂອງ tecmint. ອ້າງອີງ ໜ້າ ຈໍຂ້າງລຸ່ມ.

ດຽວນີ້ເພື່ອແບ່ງປັນທີ່ຢູ່ປະເພດໄດເລກະທໍລີທີ່ແບ່ງປັນເປັນ \\ 172.16.25.126 \ tecmintusers. ທ່ານຈະເຫັນຄ້າຍຄືກັບຂ້າງລຸ່ມນີ້.

ສຳ ລັບຂໍ້ມູນເພີ່ມເຕີມກ່ຽວກັບການຕັ້ງຄ່າຂອງ Samba ເບິ່ງທີ່ http://www.samba.org/.