Score:0

ฉันจะตั้งค่าซิงค์การอนุญาต Unix อย่างถูกต้องกับ Samba SMB 3.1.1 ได้อย่างไร

ธง bj

ขณะนี้ฉันมี NAS สำหรับครัวเรือนของเรา (เรียกว่า Waitress) ซึ่งใช้งาน Debian 11 กับ Samba โดยใช้ SMB 3.1.1 เชื่อมต่อกับ HDD USB-SS ขนาด 1TB ฉันยังมีเครื่อง Ubuntu ซึ่งเป็นแล็ปท็อปของฉันเอง (เรียกว่า Rox) เป้าหมายคือใช้ Waitress เพื่อจัดเก็บไฟล์ทั้งหมดในโฮมไดเร็กตอรี่ของฉัน ฉันกำลังทำสิ่งนี้โดยสร้างการแชร์ Samba บน Waitress ด้วยไฟล์ที่จัดเก็บไว้ใน HDD ภายนอก (ฟอร์แมตด้วย ext4) จากนั้นใน Rox ฉันเมานต์ส่วนแบ่งที่ /home/<ชื่อผู้ใช้ของฉัน>. ฉันมีบัญชีบน Waitress โดยใช้ชื่อผู้ใช้และรหัสผ่านเดียวกันกับบัญชีของฉันบน Rox

คุณลักษณะการซิงค์รหัสผ่าน Unix ของ Samba ทำงานได้ดี และฉันสามารถเข้าถึงไฟล์ได้อย่างง่ายดายโดยลงชื่อเข้าใช้บัญชีของฉันใน Waitress ผ่าน SMB ปัญหาอยู่ที่คุณสมบัติการซิงค์การอนุญาต Unix ฉันไม่เข้าใจว่าทำไมการกำหนดค่า Samba และการกำหนดค่า fstab ของฉันจึงซิงค์สิทธิ์ไม่ถูกต้อง และฉันกำลังขอความช่วยเหลือในด้านนี้

ของฉัน /etc/samba/smb.conf เกี่ยวกับพนักงานเสิร์ฟ:

[ทั่วโลก]

## การเรียกดู/การระบุ ###

# เปลี่ยนเป็นชื่อเวิร์กกรุ๊ป/NT-โดเมนที่เซิร์ฟเวอร์ Samba ของคุณจะมีส่วนร่วม
   เวิร์กกรุ๊ป = mclean.net

#### เครือข่าย ####

# ชุดอินเทอร์เฟซ / เครือข่ายเฉพาะที่จะเชื่อมโยง
# ซึ่งอาจเป็นได้ทั้งชื่ออินเทอร์เฟซหรือที่อยู่ IP/เน็ตมาสก์
# ชื่ออินเตอร์เฟสเป็นที่ต้องการโดยทั่วไป
; อินเทอร์เฟซ = 127.0.0.0/8 eth0

# ผูกกับอินเทอร์เฟซและ / หรือเครือข่ายที่มีชื่อเท่านั้น คุณต้องใช้
# ตัวเลือก 'ส่วนต่อประสาน' ด้านบนเพื่อใช้สิ่งนี้
# ขอแนะนำให้คุณเปิดใช้งานคุณสมบัตินี้หากเครื่อง Samba ของคุณคือ
# ไม่ได้รับการป้องกันโดยไฟร์วอลล์หรือตัวไฟร์วอลล์เอง อย่างไรก็ตามสิ่งนี้
ตัวเลือก # ไม่สามารถจัดการอินเทอร์เฟซแบบไดนามิกหรือไม่ออกอากาศได้อย่างถูกต้อง
; ผูกอินเทอร์เฟซเท่านั้น = ใช่



#### การดีบัก/การบัญชี ####

# สิ่งนี้บอกให้ Samba ใช้ไฟล์บันทึกแยกต่างหากสำหรับแต่ละเครื่อง
#ที่เชื่อมโยง
   ไฟล์บันทึก = /var/log/samba/log.%m

# จำกัดขนาดของไฟล์บันทึกแต่ละไฟล์ (เป็น KiB)
   ขนาดบันทึกสูงสุด = 1,000

# เราต้องการให้ Samba เข้าสู่ /var/log/samba/log.{smbd,nmbd} เท่านั้น
# ต่อท้าย syslog@1 หากคุณต้องการส่งข้อความสำคัญไปที่ syslog ด้วย
   การบันทึก = ไฟล์

# ทำสิ่งที่สมเหตุสมผลเมื่อ Samba ล่ม: ส่งจดหมายถึงผู้ดูแลระบบทางไปรษณีย์
   การกระทำที่ตื่นตระหนก = /usr/share/samba/panic-action %d


####### การรับรองความถูกต้อง #######

#บทบาทของเซิร์ฟเวอร์ กำหนดว่า Samba จะทำงานในโหมดใด เป็นไปได้
# ค่าคือ "เซิร์ฟเวอร์แบบสแตนด์อโลน", "เซิร์ฟเวอร์สมาชิก", "คลาสสิกหลัก
# ตัวควบคุมโดเมน", "ตัวควบคุมโดเมนสำรองแบบคลาสสิก", "ใช้งานอยู่
# ตัวควบคุมโดเมนไดเร็กทอรี" 
#
# คนส่วนใหญ่จะต้องการ "เซิร์ฟเวอร์แบบสแตนด์อโลน" หรือ "เซิร์ฟเวอร์สมาชิก"
# เรียกใช้เป็น "ตัวควบคุมโดเมนไดเรกทอรีที่ใช้งาน" จะต้องก่อน
# รัน "samba-tool domain allocation" เพื่อล้างฐานข้อมูลและสร้างไฟล์
#โดเมนใหม่.
   บทบาทของเซิร์ฟเวอร์ = เซิร์ฟเวอร์แบบสแตนด์อโลน

   ปฏิบัติตามข้อ จำกัด แพม = ใช่

# พารามิเตอร์บูลีนนี้ควบคุมว่า Samba พยายามซิงค์ Unix หรือไม่
# รหัสผ่านด้วยรหัสผ่าน SMB เมื่อรหัสผ่าน SMB ที่เข้ารหัสใน
# passdb ถูกเปลี่ยน
   ซิงค์รหัสผ่านยูนิกซ์ = ใช่

# เพื่อให้การซิงค์รหัสผ่าน Unix ทำงานบนระบบ Debian GNU/Linux ดังต่อไปนี้
ต้องตั้งค่า # พารามิเตอร์ (ขอบคุณ Ian Kahan <<[email protected]> สำหรับ
# กำลังส่งสคริปต์แชทที่ถูกต้องสำหรับโปรแกรม passwd ใน Debian Sarge)
   โปรแกรม passwd = /usr/bin/passwd %u
   passwd chat = *Enter\snew\s*\spassword:* %n\n *Retype\snew\s*\spassword:* %n\n *password\supdated\successfully*

# บูลีนนี้ควบคุมว่าจะใช้ PAM สำหรับการเปลี่ยนรหัสผ่านหรือไม่
# เมื่อร้องขอโดยไคลเอ็นต์ SMB แทนที่จะเป็นโปรแกรมที่อยู่ในรายการ
# 'โปรแกรมรหัสผ่าน' ค่าเริ่มต้นคือ 'ไม่'
   แพมเปลี่ยนรหัสผ่าน = ใช่

# ตัวเลือกนี้ควบคุมวิธีการแมปความพยายามในการตรวจสอบสิทธิ์ที่ไม่สำเร็จ
# เพื่อการเชื่อมต่อที่ไม่ระบุชื่อ
   แผนที่ไปยังแขก = ผู้ใช้ที่ไม่ดี

########## โดเมน #############

#
# การตั้งค่าต่อไปนี้จะมีผลเฉพาะเมื่อ 'บทบาทเซิร์ฟเวอร์ = classic
# ตัวควบคุมโดเมนหลัก', 'บทบาทเซิร์ฟเวอร์ = ตัวควบคุมโดเมนสำรองแบบคลาสสิก'
# หรือ 'การเข้าสู่ระบบโดเมน' ถูกตั้งค่า 
#

# มันระบุตำแหน่งของผู้ใช้
# ไดเร็กทอรีโปรไฟล์จากมุมมองไคลเอ็นต์) ต่อไปนี้
# จำเป็นต้องมีการแชร์ [โปรไฟล์] เพื่อตั้งค่าบนเซิร์ฟเวอร์ samba (ดู
# ด้านล่าง)
; เส้นทางการเข้าสู่ระบบ = \%N\profiles\%U
# อีกทางเลือกหนึ่งคือการจัดเก็บโปรไฟล์ในโฮมไดเร็กทอรีของผู้ใช้
# (นี่คือค่าเริ่มต้นของ Samba)
# เส้นทางการเข้าสู่ระบบ = \%N\%U\profile

# การตั้งค่าต่อไปนี้จะมีผลเฉพาะเมื่อตั้งค่า 'การเข้าสู่ระบบโดเมน'
# ระบุตำแหน่งของโฮมไดเร็กทอรีของผู้ใช้ (จากไคลเอ็นต์
# มุมมอง)
; ไดรฟ์เข้าสู่ระบบ = H:
# เข้าสู่ระบบหน้าแรก = \%N\%U

# การตั้งค่าต่อไปนี้จะมีผลเฉพาะเมื่อตั้งค่า 'การเข้าสู่ระบบโดเมน'
# มันระบุสคริปต์ที่จะทำงานระหว่างการเข้าสู่ระบบ ต้องจัดเก็บสคริปต์
# ในการแบ่งปัน [netlogon]
# หมายเหตุ: ต้องจัดเก็บในรูปแบบไฟล์ 'DOS'
; สคริปต์การเข้าสู่ระบบ = logon.cmd

# ซึ่งอนุญาตให้ผู้ใช้ Unix สร้างบนตัวควบคุมโดเมนผ่าน SAMR
#ท่ออาร์พีซี. คำสั่งตัวอย่างสร้างบัญชีผู้ใช้ด้วย Unix ที่ปิดใช้งาน
# รหัสผ่าน; โปรดปรับให้เข้ากับความต้องการของคุณ
; เพิ่มสคริปต์ผู้ใช้ = /usr/sbin/adduser --quiet --disabled-password --gecos "" %u

# สิ่งนี้ทำให้สามารถสร้างบัญชีเครื่องบนตัวควบคุมโดเมนผ่านทาง 
#ท่อSAMR RPC.  
# ต่อไปนี้ถือว่ามีกลุ่ม "เครื่อง" อยู่ในระบบ
; เพิ่มสคริปต์เครื่อง = /usr/sbin/useradd -g machines -c "%u บัญชีเครื่อง" -d /var/lib/samba -s /bin/false %u

# ซึ่งอนุญาตให้สร้างกลุ่ม Unix บนตัวควบคุมโดเมนผ่าน SAMR
#ท่ออาร์พีซี.  
; สคริปต์เพิ่มกลุ่ม = /usr/sbin/addgroup --force-badname %g

############ อื่น ๆ ############

# การใช้บรรทัดต่อไปนี้ทำให้คุณสามารถปรับแต่งการกำหนดค่าของคุณได้
#เป็นรายเครื่อง %m จะถูกแทนที่ด้วยชื่อ netbios
#ของเครื่องที่กำลังเชื่อมต่อ
; รวม = /home/samba/etc/smb.conf.%m

# ค่าเริ่มต้นบางอย่างสำหรับ winbind (ตรวจสอบให้แน่ใจว่าคุณไม่ได้ใช้ช่วง
#เพื่ออย่างอื่น)
; idmap config * : แบ็กเอนด์ = tdb
; การกำหนดค่า idmap * : ช่วง = 3000-7999
; idmap config YOURDOMAINHERE : แบ็กเอนด์ = tdb
; idmap config YOURDOMAINHERE : ช่วง = 100,000-999999
; เปลือกแม่แบบ = /bin/bash

# ตั้งค่าตัวเลือก usershare เพื่อเปิดใช้งานผู้ใช้ที่ไม่ใช่รูทเพื่อแชร์โฟลเดอร์
# ด้วยคำสั่ง net usershare

# จำนวน usershare สูงสุด 0 หมายความว่า usershare ถูกปิดใช้งาน
# usershare แชร์สูงสุด = 100

# อนุญาตให้ผู้ใช้ที่ได้รับสิทธิ์ usershare สร้าง
# หุ้นสาธารณะ ไม่ใช่แค่หุ้นที่รับรองความถูกต้อง
   usershare อนุญาตให้แขก = ใช่

#======================= แบ่งปันคำจำกัดความ =======================

[เซิร์ฟเวอร์สำรองข้อมูล]
   นามสกุลยูนิกซ์ = ใช่
   ความคิดเห็น = เซิร์ฟเวอร์สำรอง
   เส้นทาง = /home/<my username>/harddrive/homefolder
   เรียกดูได้ = ใช่
   อ่านอย่างเดียว = ไม่
   เขียนได้ = ใช่

ของฉัน /etc/fstab กำหนดค่าบน Rox:

//<ชื่อโฮสต์พนักงานเสิร์ฟ>/BackupServer /home/<ชื่อผู้ใช้ของฉัน> ผู้ใช้ smb3=<ชื่อผู้ใช้ของฉัน>,unix,vers=3.1.1 0 0

ไฟล์ทั้งหมดในโฮมไดเร็กทอรีบน Waitress เป็นของผู้ใช้ของฉันและมีสิทธิ์อ่านและเขียนสำหรับผู้ใช้และกลุ่มของฉัน สิ่งนี้ควรอนุญาตให้เข้าถึงได้จาก Rox อย่างไรก็ตาม บน Rox สิทธิ์จะแสดงผู้ใช้และกลุ่มที่เป็นเจ้าของเป็น root และสิทธิ์ rwxr-xr-x Symlinks ก็ใช้งานไม่ได้เช่นกันฉันคาดหวังว่า symlink จะทำงาน ไฟล์ที่เป็นของฉันเอง และการอนุญาต rwxrwxr-x

Nikita Kipriyanov avatar
za flag
ฉันไม่เห็นประเด็นที่จะใช้ Samba เพื่อเชื่อมต่อ Linux
Lennon McLean avatar
bj flag
@NikitaKipriyanov เดิมทีฉันใช้ SSHFS แต่ฉันตัดสินใจใช้ SMB เพราะฉันต้องการการสนับสนุน Windows และ MacOS แบบเนทีฟ ไม่ใช่แค่กล่องลินุกซ์เท่านั้น แม้ว่าฉันจะสามารถใช้ Samba สำหรับ MacOS และ Windows และ NFS สำหรับ Linux และ FreeBSD ใช่ นั่นคือสิ่งที่ฉันจะทำ
Score:0
ธง bj

ฉันตัดสินใจที่จะไม่ใช้ Samba เพื่อเชื่อมต่อคอมพิวเตอร์ Linux เพราะดูเหมือนว่าจะไม่เหมาะกับสถานการณ์เช่นฉัน ฉันจะใช้ Samba สำหรับ Windows และ MacOS ต่อไป แต่ฉันจะใช้ NFS สำหรับ Linux

โพสต์คำตอบ

คนส่วนใหญ่ไม่เข้าใจว่าการถามคำถามมากมายจะปลดล็อกการเรียนรู้และปรับปรุงความสัมพันธ์ระหว่างบุคคล ตัวอย่างเช่น ในการศึกษาของ Alison แม้ว่าผู้คนจะจำได้อย่างแม่นยำว่ามีคำถามกี่ข้อที่ถูกถามในการสนทนา แต่พวกเขาไม่เข้าใจความเชื่อมโยงระหว่างคำถามและความชอบ จากการศึกษาทั้ง 4 เรื่องที่ผู้เข้าร่วมมีส่วนร่วมในการสนทนาด้วยตนเองหรืออ่านบันทึกการสนทนาของผู้อื่น ผู้คนมักไม่ตระหนักว่าการถามคำถามจะมีอิทธิพลหรือมีอิทธิพลต่อระดับมิตรภาพระหว่างผู้สนทนา