โครงสร้างพื้นฐานส่วนตัว / ไม่ต้องใช้บัตรประชาชนอ่านหลักคำสอนด้านความเป็นส่วนตัว
บันทึกภาคสนาม KoalaVPS

บ้าน Matrix ของคุณ พร้อมความเข้าใจเรื่องเฟเดอเรชัน

โฮมเซิร์ฟเวอร์ควบคุมเนมสเปซของบัญชีและเข้าร่วมเครือข่ายที่กว้างขึ้น วางแผนตัวตน การเก็บรักษา และการดูแลระบบก่อนเชิญผู้ใช้

เลือกชื่อเซิร์ฟเวอร์

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

ใช้สแตกที่รองรับ

Synapse มักใช้ PostgreSQL สำหรับข้อมูลโปรดักชัน โดยมีบริการสนับสนุนที่ขึ้นอยู่กับขนาดและการกำหนดค่า ปฏิบัติตามคำแนะนำล่าสุดจากต้นทาง รักษา worker ฐานข้อมูล และ reverse proxy ให้มี timeout ที่เข้ากันได้กับภาระงาน

รักษาคำกล่าวอ้างเรื่องการเข้ารหัสให้ถูกต้อง

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

ดูแลอินสแตนซ์

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

ทดสอบเส้นทางของไคลเอนต์และ federation แยกจากกัน

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

เก็บวัสดุระบุตัวตนที่คงทน

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

แยกชื่อบัญชีออกจากปลายทางการโฮสต์

ตัดสินใจเลือก server_name ของ Matrix ก่อนสร้างบัญชี: มันจะกลายเป็นส่วนหนึ่งของตัวระบุผู้ใช้และห้อง ชื่อโฮสต์เว็บที่ให้บริการ Synapse อาจแตกต่างได้เมื่อกำหนดค่าการค้นพบ/การมอบหมายอย่างถูกต้อง วางแผนทั้งการค้นพบฝั่งไคลเอนต์และการค้นพบระหว่างเซิร์ฟเวอร์ ใบรับรองที่ถูกต้อง และตระกูลที่อยู่ที่เข้าถึงได้จริง Element เป็นไคลเอนต์ ไม่ใช่สิ่งทดแทนโฮมเซิร์ฟเวอร์ เก็บเส้นทางผู้ดูแลระบบที่เป็นอิสระและผู้ติดต่อสำหรับกู้คืนไว้นอกโฮมเซิร์ฟเวอร์

  • เลือกเวอร์ชัน Synapse ที่รองรับและการติดตั้งใช้งาน PostgreSQL ที่เหมาะสมกับสภาพแวดล้อมโปรดักชัน
  • เก็บฐานข้อมูลและตัวรับฟังการดูแลระบบไว้เป็นส่วนตัว
  • กำหนดนโยบายการลงทะเบียนและการเชื่อมต่อระหว่างระบบอย่างชัดเจน

สร้างการค้นหาและพร็อกซีเป็นส่วนหนึ่งของบริการ

สร้างการกำหนดค่าสำหรับรีลีสที่เลือก เก็บคีย์ลงนามและฐานข้อมูลไว้อย่างถาวร และกำหนดค่า proxy ตามคำแนะนำอย่างเป็นทางการของ Synapse ต้นทางที่มองเห็นจากภายนอก ส่วนหัวที่ส่งต่อ และเส้นทางคำขอต้องสอดคล้องกัน หากใช้การมอบหมาย ต้องให้บริการเอกสาร well-known ที่จำเป็นจากโดเมนระบุตัวตน อย่าเปิดเผยพอร์ต API ภายในแบบดิบเพื่อแก้ข้อผิดพลาดของ proxy เก็บความลับการลงทะเบียนไว้นอกการกำหนดค่าคไลเอนต์เบราว์เซอร์

ทดสอบเซสชันไคลเอนต์และเซสชันเฟเดอเรชัน

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

# Discovery checks use your identity domain and HTTPS:
curl --fail https://example.com/.well-known/matrix/client
curl --fail https://example.com/.well-known/matrix/server

ใช้ตำแหน่งข้อผิดพลาดเพื่อจำกัดขอบเขตการซ่อมแซม

หาก Element ไม่สามารถค้นหาเซิร์ฟเวอร์ได้ ให้ตรวจสอบการตอบสนอง well-known ของไคลเอนต์และต้นทาง TLS หากการส่งข้อความภายในทำงานแต่การเฟเดอเรชันล้มเหลว ให้ตรวจสอบการมอบหมายการเฟเดอเรชัน ที่อยู่ที่เข้าถึงได้ ใบรับรอง และนโยบาย ความล้มเหลวของสื่อที่เกิดซ้ำอาจเกี่ยวข้องกับขีดจำกัดการอัปโหลดหรือพื้นที่จัดเก็บ เก็บฐานข้อมูล สื่อ การกำหนดค่า และคีย์ลงนามอย่างสอดคล้องกัน ทดสอบการกู้คืนโดยยังไม่เปิดการเฟเดอเรชันก่อน เพื่อให้การทดสอบไม่สร้างสำเนาที่แข่งขันกับตัวตนการผลิต

กำหนดค่าโครงสร้างพื้นฐานของคุณ

ควบคุมด้วยตัวคุณเอง
ติดตั้งตามเงื่อนไขของคุณ

ไม่มีเอกสารยืนยันตัวตน เข้าถึงผู้ดูแลระบบเต็มรูปแบบ การเรียกเก็บเงินแบบคริปโตโดยกำเนิด