หากผู้ใช้ไม่สามารถแก้ไขหรือรับรองความถูกต้องของไฟล์บน SMB ที่โฮสต์บน macOS

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

บทความนี้จัดทำขึ้นสำหรับผู้ดูแลระบบองค์กรและการศึกษา

ตรวจสอบข้อมูลเซิร์ฟเวอร์

ตรวจสอบให้แน่ใจว่าผู้ใช้มีชื่อผู้ใช้ รหัสผ่าน และชื่อโฮสต์หรือที่อยู่ IP ของเซิร์ฟเวอร์ที่ถูกต้อง

เชื่อมโยงกับไดเรกทอรีเดียวกันกับเซิร์ฟเวอร์

หากเซิร์ฟเวอร์ macOS ใช้งาน Open Directory หรือเชื่อมต่อกับ Open Directory หรือ Active Directory ให้ดำเนินการเชื่อมต่อที่ที่ผ่านการรับรองความถูกต้องกับเซิร์ฟเวอร์ไดเรกทอรีเดียวกัน วิธีนี้ช่วยให้ไคลเอนต์สามารถใช้ Kerberos และการลงนามเซสชั่น การรับรองความถูกต้องโดยใช้ Kerberos ยังต้องให้คุณระบุเซิร์ฟเวอร์โดยใช้ DNS

เปิด NTLMv2 บน Open Directory

หากคุณอยู่ใน Open Directory และไคลเอนต์ไม่สามารถเชื่อมต่อกับ Open Directory Master อาจจำเป็นต้องเปิด NTLMv2

  1. กำหนดกลไกการรับรองความถูกต้องที่เปิดใช้งานสำหรับ Open Directory Master โดยใช้คำสั่งของเทอร์มินัลต่อไปนี้:

    dscl /LDAPv3/127.0.0.1 -read /config/dirserv apple-enabled-auth-mech

  2. ป้อนรหัสผ่านของผู้ดูแลระบบไดเรกทอรี คุณสามารถรีเซ็ตรหัสผ่านของผู้ดูแลระบบ Open Directory ได้เมื่อต้องการ

  3. หยุดและรีสตาร์ท Open Directory ใน Server.app

หาก SMB-NTLMv2 ไม่ปรากฏในผลลัพธ์ คุณสามารถเพิ่มด้วยตนเองโดยใช้คำสั่งเทอร์มินัลต่อไปนี้

dscl -u diradmin -p /LDAPv3/127.0.0.1 -append /Config/dirserv apple-enabled-auth-mech SMB-NTLMv2

ตรวจสอบให้แน่ใจว่าผู้ใช้สามารถเข้าถึงเซิร์ฟเวอร์ SMB

  1. เรียกใช้คำสั่งเทอร์มินัลต่อไปนี้บนเซิร์ฟเวอร์ SMB เพื่อดูว่าการเข้าถึงถูกจำกัดสำหรับผู้ใช้เฉพาะหรือไม่:

    dscl read /Groups/com.apple.access_smb

  2. กำหนด GUID ของผู้ใช้:

    dscl /Search read /Users/ GeneratedUID

  3. เพิ่มผู้ใช้ไปยังรายการควบคุมการเข้าถึงบริการ SMB (SACL):

    sudo dscl /Local/Default append Groups/com.apple.access_smb GroupMembership sudo dscl /Local/Default append Groups/com.apple.access_smb GroupMembers

หากคุณต้องการลบ SACL ให้ใช้คำสั่งเทอร์มินัลต่อไปนี้:

sudo dscl /Local/Default delete /Groups/com.apple.access_smb

ยืนยันการเข้าถึงในการแชร์

ตรวจสอบเพื่อให้แน่ใจว่าผู้ใช้สามารถเข้าถึงการแชร์อย่างน้อยหนึ่งรายการในการตั้งค่าการแชร์ ไม่ว่าจะโดยกลุ่มหรือในฐานะผู้ใช้รายบุคคล

ตรวจสอบ ACL การอ่าน/เขียน

หากผู้ใช้ไม่สามารถเขียนเพื่อแชร์สิ่งที่มีสิทธิ์เข้าถึง ให้ปิดการเข้าถึงของผู้ใช้ทั่วไปในการแชร์ วิธีนี้ช่วยให้แน่ใจว่าพวกเขาไม่ได้เชื่อมต่อกันในฐานะผู้ใช้ทั่วไป การเข้าถึงของผู้ใช้ทั่วไปอยู่ภายใต้ตัวเลือกการแชร์ไฟล์ขั้นสูง

หากผู้ใช้สามารถเพิ่มไฟล์ใหม่ แต่ไม่สามารถแก้ไขไฟล์ที่สร้างโดยผู้ใช้รายอื่น คุณอาจต้องสร้างรายการควบคุมการเข้าถึง (ACL) ระดับกลุ่ม ในการเพิ่ม ACL ให้ใช้บรรทัดคำสั่งต่อไปนี้และแทนที่ชื่อกลุ่มและพา ธ ไปยังจุดแชร์ด้วยค่าจริง:

sudo chmod -R +a "group:YourGroupName allow list,add_file,search,add_subdirectory,delete_child,readattr,writeattr,readextattr,writeextattr,readsecurity,file_inherit,directory_inherit" /Volumes/volumename/path/to/share

วันที่เผยแพร่: