Documentation for a newer release is available. View Latest

ເຊີເວີໄຟລ໌ ແລະ ຕົວຄວບຄຸມໂດເມນ

Samba 4.9

ຊຸດຊອບແວ Samba ໄດ້ຮັບການອັບເກຣດເປັນລຸ້ນ 4.9. ການອັບເກຣດນີ້ໄດ້ນຳເອົາການປ່ຽນແປງຫຼາຍຢ່າງທີ່ອາດສົ່ງຜົນກະທົບຕໍ່ການຕັ້ງຄ່າເລີ່ມຕົ້ນ ຫຼື ການຕິດຕັ້ງທີ່ມີຢູ່ແລ້ວ.

ລາຍລະອຽດກ່ຽວກັບບັນທຶກການປ່ອຍຂອງ Samba 4.9 ແມ່ນສາມາດເບິ່ງໄດ້ທີ່ https://www.samba.org/samba/history/samba-4.9.0.html

ການຮອງຮັບຄຸນລັກສະນະເສີມ (Extended attributes)

ເນື່ອງຈາກລະບົບ Linux ມີການຮອງຮັບຄຸນລັກສະນະເສີມທີ່ເປີດໃຊ້ງານມາເປັນຄ່າເລີ່ມຕົ້ນ, ພາລາມິເຕີ "map readonly", "store dos attributes" ແລະ "ea support" ຈຶ່ງໄດ້ປ່ຽນຄ່າເລີ່ມຕົ້ນໃໝ່ ເພື່ອໃຫ້ສາມາດເຮັດວຽກຮ່ວມກັບ Windows fileserver ໄດ້ດີຂຶ້ນໃນການຕິດຕັ້ງແບບເລີ່ມຕົ້ນ.

Table 1. ການປ່ຽນແປງພາລາມິເຕີຂອງ smb.conf
ຊື່ພາລາມິເຕີ ຄຳອະທິບາຍ ຄ່າເລີ່ມຕົ້ນ

map readonly

ຄ່າເລີ່ມຕົ້ນປ່ຽນແລ້ວ

no

store dos attributes

ຄ່າເລີ່ມຕົ້ນປ່ຽນແລ້ວ

yes

ea support

ຄ່າເລີ່ມຕົ້ນປ່ຽນແລ້ວ

yes

full_audit:success

ຄ່າເລີ່ມຕົ້ນປ່ຽນແລ້ວ

none

full_audit:failure

ຄ່າເລີ່ມຕົ້ນປ່ຽນແລ້ວ

none

ການປ່ຽນແປງການຈັບຄູ່ຕົວຕົນ (Identity mapping)

ຜ່ານມາຫຼາຍລຸ້ນ, ການກວດສອບການຕັ້ງຄ່າ Samba ໄດ້ຮັບການປັບປຸງໃຫ້ດີຂຶ້ນ ເພື່ອໃຫ້ກວດພົບຂໍ້ຜິດພາດຂອງການຈັບຄູ່ຕົວຕົນໄດ້ໄວຂຶ້ນ ແລະ ຢຸດການເລີ່ມຕົ້ນລະບົບກ່ອນທີ່ການປ່ຽນແປງຈະສົ່ງຜົນກະທົບຕໍ່ການເຮັດວຽກຕົວຈິງ. ຍ້ອນວ່າການປ່ຽນແປງໃນຕົວຕົນອາດເຮັດໃຫ້ເກີດການລະເມີດການຄວບຄຸມການເຂົ້າເຖິງ ແລະ ຄວາມສ່ຽງທີ່ຂໍ້ມູນຈະຮົ່ວໄຫຼໄປຫາຜູ້ທີ່ບໍ່ໄດ້ຮັບອະນຸຍາດ, ຄວາມພະຍາຍາມນີ້ຈຶ່ງຊ່ວຍຫຼຸດຜ່ອນກໍລະນີການຕັ້ງຄ່າທີ່ຜິດພາດແຕ່ຖືກນຳໃຊ້ຢ່າງແຜ່ຫຼາຍ.

ນັບຕັ້ງແຕ່ Samba 4.6 ເປັນຕົ້ນມາ, ສາມາດໃຊ້ເຄື່ອງມື 'testparm' ເພື່ອກວດສອບຄວາມຖືກຕ້ອງຂອງການຕັ້ງຄ່າການຈັບຄູ່ ID (ID mapping). ຫຼັງຈາກອັບເກຣດແລ້ວ ກະລຸນາລັນເຄື່ອງມືນີ້ ແລະ ກວດເບິ່ງວ່າມັນສະແດງຄຳເຕືອນ ຫຼື ຂໍ້ຜິດພາດໃດໆບໍ່. ກະລຸນາເບິ່ງສ່ວນ 'IDENTITY MAPPING CONSIDERATIONS' ໃນໜ້າ manpage ຂອງ smb.conf ສຳລັບຂໍ້ແນະນຳຕ່າງໆ. ມີບາງ Backend ຂອງການຈັບຄູ່ ID ທີ່ບໍ່ໄດ້ຮັບອະນຸຍາດໃຫ້ໃຊ້ເປັນ Backend ເລີ່ມຕົ້ນ. Winbind daemon ຈະບໍ່ເລີ່ມເຮັດວຽກອີກຕໍ່ໄປ ຖ້າມີການຕັ້ງຄ່າ Backend ທີ່ບໍ່ຖືກຕ້ອງເປັນ Backend ເລີ່ມຕົ້ນ.

ນັບຕັ້ງແຕ່ Samba 4.8, ການຕັ້ງຄ່າທີ່ມີ “security = domain” ຫຼື “security = ads” ແມ່ນຈຳເປັນຕ້ອງມີ ‘winbindd’ ເຮັດວຽກຢູ່. ລະບົບສຳຮອງທີ່ smbd ຕິດຕໍ່ກັບຕົວຄວບຄຸມໂດເມນໂດຍກົງນັ້ນແມ່ນບໍ່ມີອີກຕໍ່ໄປແລ້ວ.

ສຸດທ້າຍນີ້, Samba 4.9 ໄດ້ແຍກຄວາມແຕກຕ່າງລະຫວ່າງການເຂົ້າເຖິງແບບບໍ່ລະບຸຕົວຕົນ (anonymous) ແລະ ແບບແຂກ (guest) ຜ່ານໂປຣໂຕຄອນ SMB. ຜົນຂ້າງຄຽງຂອງການປ່ຽນແປງນີ້ແມ່ນ ຈຳເປັນຕ້ອງມີການຈັບຄູ່ສຳລັບກຸ່ມ BUILTIN\Guests. ການຈັບຄູ່ນີ້ສາມາດສ້າງຂຶ້ນໂດຍອັດຕະໂນມັດ ຖ້າ Backend ຕົວຕົນເລີ່ມຕົ້ນອະນຸຍາດໃຫ້ສ້າງລາຍການຕາມຄວາມຕ້ອງການ. ຫຼືອີກວິທີໜຶ່ງ, ສາມາດໃຊ້ເຄື່ອງມື net ເພື່ອຕັ້ງຄ່າການຈັບຄູ່ກຸ່ມສຳລັບ BUILTIN\Guests ຜ່ານ:

net groupmap add sid=S-1-5-32-546 unixgroup=nobody type=builtin

ການປ່ຽນແປງການຕັ້ງຄ່າ CTDB

ການຕັ້ງຄ່າ Clustered Samba daemon (CTDB) ໄດ້ຮັບການປັບປຸງໃໝ່ທັງໝົດ.

  • ຕົວເລືອກຂອງ Daemon ແລະ ເຄື່ອງມືຕ່າງໆ ແມ່ນຖືກກຳນົດໄວ້ໃນໄຟລ໌ຕັ້ງຄ່າ ctdb.conf ຮູບແບບໃໝ່ຂອງ Samba. ເບິ່ງລາຍລະອຽດໄດ້ທີ່ ctdb.conf(5).

  • ການຕັ້ງຄ່າ Event script ຈະບໍ່ຖືກກຳນົດໄວ້ໃນໄຟລ໌ຕັ້ງຄ່າລະດັບສູງສຸດອີກຕໍ່ໄປ. ຕອນນີ້ສາມາດກຳນົດໄດ້ແຍກຕາມແຕ່ລະ event script. ຕົວຢ່າງ: ຕົວເລືອກການຕັ້ງຄ່າສຳລັບ script 50.samba ສາມາດວາງໄວ້ຄຽງຄູ່ກັບ event script ໃນໄຟລ໌ທີ່ມີຊື່ວ່າ 50.samba.options. ນອກຈາກນີ້, ຕົວເລືອກຂອງ script ຍັງສາມາດກຳນົດໄດ້ໃນໄຟລ໌ script.options ໃໝ່. ເບິ່ງລາຍລະອຽດໄດ້ທີ່ ctdb-script.options(5).

  • ຕົວເລືອກທີ່ມີຜົນຕໍ່ການເລີ່ມຕົ້ນຂອງ CTDB ຄວນຕັ້ງຄ່າໃນໄຟລ໌ຕັ້ງຄ່າສະເພາະຂອງແຕ່ລະຊຸດຊອບແວ (distribution). ເບິ່ງລາຍລະອຽດໄດ້ທີ່ ctdb.sysconfig(5).

  • ການຕັ້ງຄ່າທີ່ສາມາດປັບແຕ່ງໄດ້ (Tunable settings) ແມ່ນຈະຖືກໂຫຼດຈາກ ctdb.tunables. ການໃຊ້ CTDB_SET_TunableVariable=<value> ໃນໄຟລ໌ຕັ້ງຄ່າຫຼັກແມ່ນບໍ່ຮອງຮັບອີກຕໍ່ໄປ. ເບິ່ງລາຍລະອຽດໄດ້ທີ່ ctdb-tunables(7).

ມີຕົວຢ່າງ script ເພື່ອຍ້າຍການຕັ້ງຄ່າຮູບແບບເກົ່າໄປເປັນຮູບແບບໃໝ່ຢູ່ໃນ /usr/share/doc/ctdb/examples/config_migrate.sh.

ການເຊື່ອມຕໍ່ Kerberos

ໄດ້ມີການເພີ່ມປລັກອິນການອະນຸຍາດທ້ອງຖິ່ນ (Local authorization plugin) ສຳລັບ MIT Kerberos. ປລັກອິນນີ້ຈະຄວບຄຸມຄວາມສຳພັນລະຫວ່າງ Kerberos principals ແລະ ບັນຊີ AD ຜ່ານ winbind. ໂມດູນຈະຮັບ Kerberos principal ແລະ ຊື່ບັນຊີທ້ອງຖິ່ນເປັນຂໍ້ມູນຂາເຂົ້າ ແລະ ກວດສອບວ່າມັນກົງກັນບໍ່. ສິ່ງນີ້ສາມາດແກ້ໄຂບັນຫາເລື່ອງຊື່ທີ່ຖືກປ່ຽນເປັນຮູບແບບມາດຕະຖານ (canonicalized names) ທີ່ສົ່ງຄືນໂດຍ Kerberos ພາຍໃນ AD. ຖ້າຜູ້ໃຊ້ພະຍາຍາມເຂົ້າສູ່ລະບົບດ້ວຍຊື່ 'alice', ແຕ່ samAccountName ຖືກຕັ້ງເປັນ ALICE (ຕົວພິມໃຫຍ່), Kerberos ຈະສົ່ງ ALICE ກັບຄືນມາເປັນຊື່ຜູ້ໃຊ້. ໃນກໍລະນີນີ້ Kerberos ຈະບໍ່ສາມາດຈັບຄູ່ 'alice' ໃຫ້ເປັນ 'ALICE' ໄດ້ ແລະ ການຢືນຢັນຕົວຕົນຈະຫຼົ້ມເຫຼວ. ດ້ວຍປລັກອິນນີ້, ຊື່ບັນຊີຈະສາມາດຈັບຄູ່ໄດ້ຢ່າງຖືກຕ້ອງ. ສິ່ງນີ້ຈະມີຜົນສະເພາະການຢືນຢັນຕົວຕົນແບບ GSSAPI ເທົ່ານັ້ນ, ບໍ່ລວມເຖິງການຂໍຮັບ ticket granting ticket ເບື້ອງຕົ້ນ.

ດ້ວຍປລັກອິນນີ້, ການຕັ້ງຄ່າທີ່ອີງໃສ່ winbind ຈະມີປະສິດທິພາບທຽບເທົ່າກັບ SSSD ໃນສະພາບແວດລ້ອມ AD.

Samba AD DC

Active Directory Domain Controller ໃນ Samba 4.9 ມີການປັບປຸງຫຼາຍຢ່າງ. ທີ່ໂດດເດັ່ນທີ່ສຸດແມ່ນ ມີ Backend ໃໝ່ຂອງ LDB ທີ່ໃຊ້ LMDB ເຊິ່ງຍັງຢູ່ໃນຂັ້ນຕອນທົດລອງ. ສິ່ງນີ້ຊ່ວຍໃຫ້ຖານຂໍ້ມູນມີຂະໜາດໃຫຍ່ກວ່າ 4Gb (ປັດຈຸບັນກຳນົດໄວ້ທີ່ 6Gb ແຕ່ຈະເພີ່ມຂຶ້ນໃນລຸ້ນຕໍ່ໄປ). ເພື່ອເປີດໃຊ້ lmdb, ໃຫ້ທຳການ provision ຫຼື join ໂດເມນໂດຍໃຊ້ຕົວເລືອກ “--backend-store=mdb”.

ກະລຸນາຮັບຊາບວ່າ ນີ້ແມ່ນຄຸນສົມບັດທີ່ຍັງຢູ່ໃນຂັ້ນຕອນທົດລອງ ແລະ ບໍ່ແນະນຳໃຫ້ໃຊ້ໃນການຕິດຕັ້ງເພື່ອໃຊ້ງານຈິງ.

Samba AD DC ໃນ Fedora ຖືກສ້າງຂຶ້ນດ້ວຍ MIT Kerberos. ນັບຕັ້ງແຕ່ Samba 4.9, ການຮອງຮັບ MIT Kerberos ໃນ Samba AD DC ຍັງຢູ່ໃນຂັ້ນທົດລອງ ແລະ ອາດມີຂໍ້ຜິດພາດ. ມີບັນຫາທີ່ຮູ້ແລ້ວແຕ່ຍັງບໍ່ທັນໄດ້ຮັບການແກ້ໄຂໃນລະບົບຕິດຕາມຂໍ້ຜິດພາດຂອງ Samba:

ການຮອງຮັບໂດເມນ/forest ທີ່ເຊື່ອຖືໄດ້ (trusted domains/forests) ໄດ້ຮັບການປັບປຸງຕື່ມອີກ. ການເຊື່ອຖືໂດເມນພາຍນອກ (External domain trusts) ລວມທັງ forest trusts ແບບ transitive ແມ່ນໄດ້ຮັບການຮອງຮັບທັງສອງທິດທາງ (ຂາເຂົ້າ ແລະ ຂາອອກ) ສຳລັບການຢືນຢັນຕົວຕົນແບບ Kerberos ແລະ NTLM.

ຄຸນສົມບັດໃໝ່ໃນລຸ້ນ 4.9 (ທຽບກັບ 4.8) ມີດັ່ງນີ້:

  • ຕອນນີ້ສາມາດເພີ່ມຜູ້ໃຊ້/ກຸ່ມຂອງໂດເມນທີ່ເຊື່ອຖືໄດ້ ເຂົ້າໃນກຸ່ມໂດເມນໄດ້ແລໍ້. ສະມາຊິກກຸ່ມຈະຖືກຂະຫຍາຍອອກຕາມຂອບເຂດຄວາມເຊື່ອຖື (trust boundaries).

  • object foreignSecurityPrincipal (FPO) ຈະຖືກສ້າງຂຶ້ນໂດຍອັດຕະໂນມັດ ເມື່ອມີການເພີ່ມສະມາຊິກ (ໃນຮູບແບບ SID) ຂອງໂດເມນ/forest ທີ່ເຊື່ອຖືໄດ້ເຂົ້າໃນກຸ່ມ.

  • ຄຳສັ່ງ ‘samba-tool group *members’ ອະນຸຍາດໃຫ້ກຳນົດສະມາຊິກເປັນ SID ຈາກພາຍນອກໄດ້.

ເຖິງຢ່າງໃດກໍຕາມ, ໃນປັດຈຸບັນຍັງມີຂໍ້ຈຳກັດບາງຢ່າງຄື:

  • ທັງສອງຝ່າຍຂອງຄວາມເຊື່ອຖື (trust) ຈຳເປັນຕ້ອງເຊື່ອຖືເຊິ່ງກັນແລະກັນຢ່າງເຕັມສ່ວນ!

  • ບໍ່ມີການນຳໃຊ້ກົດການກັ່ນຕອງ SID ເລີຍ!

  • ສິ່ງນີ້ໝາຍຄວາມວ່າ DC ຂອງໂດເມນ A ສາມາດໃຫ້ສິດຜູ້ດູແລລະບົບໂດເມນໃນໂດເມນ B ໄດ້.

  • ບໍ່ຮອງຮັບການຢືນຢັນຕົວຕົນແບບເລືອກ (Selective/CROSS_ORGANIZATION). ສາມາດສ້າງຄວາມເຊື່ອຖືແບບນີ້ໄດ້, ແຕ່ KDC ແລະ winbindd ຈະບໍ່ສົນໃຈພວກມັນ.

  • Samba ຍັງຄົງສາມາດເຮັດວຽກໄດ້ໃນ forest ທີ່ມີພຽງໂດເມນດຽວເທົ່ານັ້ນ.