ตั้งค่าการเข้าสู่ระบบ Nextcloud LDAP และ Active Directory

ในการใช้บัญชี LDAP หรือ Active Directory ใน Nextcloud ให้เปิดใช้งานแอป “LDAP user and group backend” กำหนดค่าการเชื่อมต่อไดเร็กทอรี จากนั้นทดสอบตัวกรองผู้ใช้ การเข้าสู่ระบบ และกลุ่ม ก่อนที่จะอนุญาตให้เจ้าหน้าที่ใช้งาน การผสานรวม LDAP ของ Nextcloud จะตรวจสอบสิทธิ์กับไดเร็กทอรีเท่านั้น ไม่ได้สร้างหรือจัดการบัญชีไดเร็กทอรี เริ่มต้นด้วยบัญชีบริการแบบอ่านอย่างเดียวและกลุ่มทดสอบขนาดเล็กที่รู้จัก เพื่อให้คุณสามารถยืนยันได้อย่างแม่นยำว่าใครจะปรากฏและใครสามารถลงชื่อเข้าใช้ได้

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

เตรียมการเชื่อมต่อไดเร็กทอรี

ก่อนเปิดการตั้งค่าของ Nextcloud โปรดสอบถามผู้ดูแลระบบ LDAP หรือ AD ของคุณเกี่ยวกับชื่อโฮสต์ของไดเร็กทอรี วิธีการเชื่อมต่อแบบเข้ารหัส พอร์ต Base DN และบัญชีเชื่อมต่อที่สามารถค้นหาโครงสร้างผู้ใช้และกลุ่มที่ต้องการได้ บัญชีเชื่อมต่อนี้ใช้โดย Nextcloud เพื่อค้นหาบันทึกในไดเร็กทอรี ซึ่งแยกต่างหากจากข้อมูลประจำตัวการเข้าสู่ระบบของผู้ใช้แต่ละราย Nextcloud แนะนำให้ใช้บัญชีค้นหาเฉพาะเป็นแนวทางที่แนะนำ

ใช้การเชื่อมต่อแบบเข้ารหัสพร้อมการตรวจสอบใบรับรอง Nextcloud ระบุพอร์ต 636 เป็นพอร์ตเริ่มต้นของ LDAPS สภาพแวดล้อม PHP ของเซิร์ฟเวอร์ Nextcloud ต้องเชื่อถือใบรับรองของไดเร็กทอรี อย่าปิดใช้งานการตรวจสอบเพื่อแก้ไขปัญหาตามปกติ ยืนยันการขนส่งหรือพอร์ตที่ไม่เป็นมาตรฐานกับผู้ดูแลระบบไดเร็กทอรีของคุณ

ตรวจสอบให้แน่ใจว่าได้ติดตั้งโมดูล PHP LDAP แล้ว (โดยปกติจะมาในรูปแบบแพ็กเกจphp-ldap) และเซิร์ฟเวอร์ Nextcloud สามารถเข้าถึงไดเร็กทอรีบนพอร์ตที่เลือกได้ การใช้งานคอนเทนเนอร์และการใช้งานแบบจัดการอาจมีวิธีการติดตั้งที่รองรับแตกต่างกันไป

เปิดใช้งานแบ็กเอนด์ LDAP และเชื่อมต่อกับเซิร์ฟเวอร์

  1. ลงชื่อเข้าใช้ Nextcloud ในฐานะผู้ดูแลระบบ เปิดแอปพลิเคชันและเปิดใช้งานแบ็กเอนด์ผู้ใช้และกลุ่ม LDAPหากยังไม่ได้เปิดใช้งาน รหัสแอปพลิเคชันที่ใช้occคือuser_ldap.
  2. เปิดการตั้งค่าการดูแลระบบสำหรับการเชื่อมต่อ LDAP/ADและเริ่มการกำหนดค่าเซิร์ฟเวอร์ใหม่ กรอกข้อมูลใน แท็บ เซิร์ฟเวอร์ ให้เสร็จ ก่อน Nextcloud จะใช้แท็บนี้ในการทดสอบการเชื่อมต่อไดเร็กทอรีและตรวจจับการตั้งค่าสำหรับแท็บอื่นๆ
  3. ป้อนชื่อโฮสต์ของไดเร็กทอรีหรือldaps://URI พอร์ตหากตรวจไม่พบ ชื่อที่ระบุอย่างครบถ้วน (DN) ของบัญชีการเชื่อมต่อ รหัสผ่าน และ Base DN Base DN ระบุส่วนของโครงสร้างไดเร็กทอรีที่ Nextcloud ค้นหา ตัวอย่างเช่นdc=example,dc=comเป็นรูปแบบ ไม่ใช่ค่าที่จะคัดลอก เว้นแต่จะตรงกับไดเร็กทอรีของคุณ
  4. ทำการทดสอบการเชื่อมต่อ หากการค้นหาไม่พบ Base DN หรือพอร์ต ให้ป้อนค่าที่ผู้ดูแลระบบไดเร็กทอรีของคุณให้มา อย่าขยาย Base DN เพียงเพื่อให้การทดสอบผ่าน ให้ใช้โครงสร้างไดเร็กทอรีที่เล็กที่สุดที่ประกอบด้วยผู้ใช้และกลุ่มที่ต้องการ

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

จำกัดบัญชีที่สามารถเข้าสู่ระบบได้

ใช้ แท็บ ผู้ใช้เพื่อกำหนดว่า Nextcloud จะแสดงระเบียน LDAP ใดบ้าง ใช้คุณลักษณะการเข้าสู่ระบบเพื่อตัดสินใจว่าบุคคลนั้นสามารถป้อนคุณลักษณะใดได้บ้างในหน้าจอเข้าสู่ระบบ การควบคุมเหล่านี้แยกจากกัน: ผู้ใช้สามารถค้นพบได้ในไดเร็กทอรีโดยไม่ต้องได้รับอนุญาตให้ลงชื่อเข้าใช้ และตัวกรองการเข้าสู่ระบบสามารถส่งผลต่อผู้ใช้ที่ได้รับการยอมรับได้

สำหรับ Active Directory นั้น ระบบติดตั้งของ Nextcloud สามารถตรวจจับการตั้งค่าทั่วไปโดยอัตโนมัติ รวมถึงแอตทริบิวต์ชื่อผู้ใช้ แอตทริบิวต์ชื่อผู้ใช้เริ่มต้นที่ระบุไว้มักจะอยู่sAMAccountNameใน AD และuidในไดเร็กทอรี LDAP หลายแห่ง ตรวจสอบค่าที่ตรวจพบกับบัญชีทดสอบจริง หากผู้ใช้ควรเข้าสู่ระบบด้วยที่อยู่อีเมล ให้เลือกแอตทริบิวต์อีเมลหลังจากยืนยันแล้วว่ามีการกรอกข้อมูลและไม่ซ้ำกันสำหรับทุกบัญชีที่อนุญาต

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

ในส่วนกลุ่มให้เลือกคลาสออบเจ็กต์กลุ่มของไดเร็กทอรีและกลุ่มที่จะแสดง โดยค่าเริ่มต้นจะไม่มีกลุ่มใดแสดงจนกว่าจะมีการกำหนดค่า สำหรับกลุ่ม AD ที่ซ้อนกัน เอกสารของ Nextcloud ระบุว่าตัวเลือก “กลุ่มที่ซ้อนกัน” เพียงอย่างเดียวอาจไม่เพียงพอ ตัวกรองผู้ใช้และการเข้าสู่ระบบอาจต้องการกฎการจับคู่ของ AD ด้วย โปรดยืนยันพฤติกรรมนี้กับผู้ดูแลระบบไดเร็กทอรีของคุณและทดสอบสมาชิกที่ซ้อนกัน

ทดสอบความถูกต้องก่อนนำไปใช้งานจริง

  1. ตรวจสอบ การตั้งค่า ขั้นสูงโดยไม่ต้องเปลี่ยนแปลงตัวเลือกที่คุณไม่เข้าใจ โดยเฉพาะอย่างยิ่ง ให้ตัดสินใจว่าช่องใดจะใช้สำหรับแสดงชื่อ และปล่อยให้กฎชื่อผู้ใช้ภายในคงที่
  2. ตรวจสอบ สถานะ การใช้งานของการตั้งค่า Nextcloud เตือนว่าการตั้งค่าที่ปิดใช้งานอาจทำให้การตรวจสอบสิทธิ์ล้มเหลวและแสดงข้อความ "รหัสผ่านไม่ถูกต้อง" ซึ่งทำให้เข้าใจผิด การทดสอบที่สำเร็จมักจะเปิดใช้งานโดยอัตโนมัติ
  3. ใช้การตั้งค่าการทดสอบจากนั้นบันทึก ปุ่มนี้จะทดสอบค่าที่มีอยู่ในช่องต่างๆ ดังนั้นจึงไม่จำเป็นต้องบันทึกก่อนทำการทดสอบ
  4. เปิดหน้าผู้ใช้ Nextcloud และตรวจสอบว่าผู้ใช้และกลุ่มตัวอย่างที่คาดหวังปรากฏขึ้น จากนั้นทดสอบการเข้าสู่ระบบด้วยบัญชีไดเร็กทอรีที่ได้รับอนุญาตหนึ่งบัญชีและบัญชีที่ควรถูกยกเว้นอีกหนึ่งบัญชี
  5. ตรวจสอบให้แน่ใจว่าบัญชีที่ได้รับอนุญาตมีชื่อที่แสดงถูกต้อง การเป็นสมาชิกกลุ่ม และพฤติกรรมโควต้าที่ถูกต้อง หากมีการกำหนดค่าคุณลักษณะโปรไฟล์หรือโควต้า LDAP ให้ตรวจสอบกับผู้ใช้ทดสอบก่อนที่จะเปิดใช้งานในวงกว้าง

สำหรับการตรวจสอบผ่านบรรทัดคำสั่ง ขั้นแรกให้ค้นหา ID การกำหนดค่าด้วยocc ldap:show-configคำสั่ง จากนั้นเรียกใช้คำสั่งทดสอบที่ระบุไว้ โดยแทนที่ ID นั้นลงไป:

sudo -E -u www-data php occ ldap:test-config s01
sudo -E -u www-data php occ ldap:test-user-settings "USER_DN"

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

โปรดทราบว่าการบูรณาการไม่ได้เปลี่ยนแปลงอะไร

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

Nextcloud จัดเก็บการแมปภายใน และชื่อผู้ใช้ภายในนั้นแทบจะเปลี่ยนแปลงไม่ได้เลย ชื่อผู้ใช้เหล่านี้อาจปรากฏในเส้นทางโฟลเดอร์โฮมและ URL ของ DAV ดังนั้นควรเลือกตัวระบุที่เสถียรก่อนที่จะเพิ่มผู้ใช้ใหม่ ห้ามล้างการแมป LDAP บนอินสแตนซ์ที่ใช้งานจริงเพื่อแก้ไขปัญหาอย่างรวดเร็ว เพราะอาจทำให้มีข้อมูลอ้างอิงหลงเหลืออยู่และส่งผลกระทบต่อการกำหนดค่า LDAP ทั้งหมด

หากการทดสอบล้มเหลว ให้ตรวจสอบบันทึกของ Nextcloud, DNS, การเข้าถึงพอร์ต, ข้อมูลรับรองการผูกบัญชี, Base DN และความเชื่อถือของใบรับรอง หากไม่มีผู้ใช้ปรากฏ ให้ตรวจสอบตัวกรองผู้ใช้และคลาสของวัตถุ หากผู้ใช้ปรากฏแต่ไม่สามารถลงชื่อเข้าใช้ได้ ให้ตรวจสอบคุณลักษณะการเข้าสู่ระบบและสถานะการใช้งาน ตรวจสอบโดยการเข้าสู่ระบบด้วยบัญชีที่ได้รับอนุญาตและยืนยันว่าบัญชีที่ถูกยกเว้นถูกปฏิเสธ

อ้างอิง: เอกสารการตรวจสอบสิทธิ์ LDAP ของ Nextcloud 35 , คำสั่ง occ LDAP ของ Nextcloud 35และข้อกำหนดโมดูล PHP ของ Nextcloud

ฝากความเห็น

ตั้งค่าการเข้าสู่ระบบ Nextcloud LDAP และ Active Directory

เชื่อมต่อ Nextcloud กับ LDAP หรือ Active Directory จำกัดการเข้าถึงด้วยตัวกรองผู้ใช้และกลุ่ม และตรวจสอบการรับรองความถูกต้องที่ปลอดภัยก่อนเปิดใช้งาน

กำหนดให้ผู้ใช้ Nextcloud ต้องใช้การยืนยันตัวตนแบบสองขั้นตอน

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

ปกป้องเอกสาร Collabora CODE ที่จัดเก็บไว้ด้วยการเข้ารหัสพื้นที่จัดเก็บข้อมูล

รักษาความปลอดภัยของไฟล์ที่แก้ไขใน Collabora CODE โดยการเข้ารหัสเลเยอร์การจัดเก็บข้อมูล ปกป้องข้อมูลชั่วคราว และตรวจสอบการเข้ารหัสและการกู้คืน

ติดตั้ง Collabora CODE บนสถาปัตยกรรม ARM64 ด้วยอิมเมจที่ถูกต้อง

ติดตั้ง Collabora CODE บนสถาปัตยกรรม ARM64 ด้วยอิมเมจที่ถูกต้อง

ตรวจสอบสถาปัตยกรรมโฮสต์ของคุณ ยืนยันว่าแท็ก CODE เผยแพร่ ARM64 ลบการตั้งค่า AMD64 ที่บังคับใช้ และแยกข้อผิดพลาดของรูปภาพออกจากปัญหาด้านสิทธิ์หรือหน่วยความจำ

เชื่อมต่อ Collabora Online กับ ownCloud Infinite Scale

ตั้งค่าการเชื่อมต่อ WOPI ระหว่าง Collabora Online และ ownCloud Infinite Scale กำหนดค่า URL บริการที่ถูกต้อง และตรวจสอบว่าการแก้ไขเอกสารได้รับการบันทึกแล้ว

การส่งออกไฟล์บล็อกใน Collabora CODE ผ่าน WOPI

ป้องกันการส่งออกเอกสารใน Collabora Online CODE โดยการตั้งค่าสิทธิ์ WOPI DisableExport จากนั้นตรวจสอบว่าโฮสต์และผู้แก้ไขบังคับใช้สิทธิ์นี้หรือไม่

วาง Collabora ไว้ด้านหลัง Nginx โดยไม่ทำให้ WebSockets เสียหาย

วาง Collabora ไว้ด้านหลัง Nginx โดยไม่ทำให้ WebSockets เสียหาย

ตั้งค่าการยุติ TLS ของ Nginx, เส้นทาง Collabora และส่วนหัว WebSocket จากนั้นทดสอบปลายทางสาธารณะก่อนเปิดเอกสารจริง

หยุดการสิ้นสุดเซสชันการแก้ไขโค้ดที่ 10 นาที

ตรวจสอบหาสาเหตุของการตัดการเชื่อมต่อ CODE ที่กินเวลา 10 นาที ว่าเกิดจากพร็อกซี โหลดบาลานเซอร์ หรือเส้นทาง WebSocket จากนั้นแก้ไขค่าหมดเวลาและตรวจสอบว่าเซสชันยังคงเชื่อมต่ออยู่หรือไม่

ติดตั้ง Collabora CODE บน Kubernetes ด้วย Helm

ติดตั้ง Helm chart อย่างเป็นทางการของ Collabora กำหนดค่าการเข้าถึง WOPI และความสัมพันธ์ของ ingress และตรวจสอบการปรับใช้โดยปราศจากข้อผิดพลาดในการตั้งค่าทั่วไป

ติดตามเอกสาร Collabora ว่างเปล่าไปยังเลเยอร์ที่ล้มเหลว

ติดตามเอกสาร Collabora ว่างเปล่าไปยังเลเยอร์ที่ล้มเหลว

ใช้คำขอจากเบราว์เซอร์ บันทึก WOPI และการตรวจสอบพร็อกซีแบบเจาะจงเพื่อค้นหาสาเหตุที่ Collabora เปิดเอกสารว่างเปล่า และเลือกวิธีแก้ไขที่เหมาะสมกับหลักฐานที่พบ