อ้างอิง / หลักฐาน
Telegram · การเก็บรักษาและกู้คืนข้อมูล
การสำรองข้อมูล การย้ายไฟล์เก่าไปยังคลาวด์ การคัดลอกภายใต้ Object Lock และการกู้คืนบนเครื่องใหม่
TgWitness / เอกสารประกอบ · การติดตั้งและกู้คืน
แผงควบคุมนี้แบ่งงานออกเป็นสามส่วน:
| งาน | ฟังก์ชันการทำงาน |
|---|---|
| เก็บสำรองข้อมูล | คัดลอกบันทึกที่ลงนามแล้ว จุดตรวจสอบ ไฟล์ที่เก็บรักษาไว้ และการส่งออกที่อยู่ในคิว ไปยังปลายทาง S3 ที่กำหนดไว้ |
| พื้นที่จัดเก็บข้อมูลท้องถิ่นฟรี | คัดลอกไฟล์แนบเก่าที่เลือกไว้ไปยัง S3 หรือเซิร์ฟเวอร์คลาวด์ระยะไกลของ rclone, อ่านไฟล์เหล่านั้นกลับมาอย่างครบถ้วน, ตรวจสอบไบต์ที่เข้ารหัส, แล้วลบสำเนาท้องถิ่นที่ผ่านการตรวจสอบแล้ว |
| เก็บสำเนาหลักฐานไว้ | ตั้งค่า S3 Object Lock และตรวจสอบสถานะการเก็บรักษาที่ระบบส่งกลับมา บริการต้องยืนยันโหมดและวันที่ที่ขอไว้ |
การปลดปล่อยพื้นที่จะไม่ลบหรือเขียนทับบันทึกที่ลงนามแล้ว ไฟล์แนบแต่ละไฟล์จะเก็บ SHA-256 ดั้งเดิมและใบเสร็จการกู้คืนไว้ การบีบอัด gzip (ตามตัวเลือก) จะเกิดขึ้น ก่อนการเข้ารหัสที่ผ่านการตรวจสอบความถูกต้อง ชื่อไฟล์บนคลาวด์ไม่รวมชื่อ Telegram, ID การสนทนา หรือชื่อไฟล์แนบต้นฉบับ ไฟล์แนบหนึ่งไฟล์อาจมีขนาดสูงสุด 32 GiB
การตอบกลับการอัปโหลดเพียงอย่างเดียวไม่ถือเป็นสิทธิ์ในการลบไฟล์ TgWitness ดาวน์โหลด วัตถุที่เข้ารหัสอย่างครบถ้วนและตรวจสอบขนาดของมัน SHA-256, บันทึกใบเสร็จรับเงิน, จากนั้นตรวจสอบไบต์ในเครื่องอีกครั้งทันทีก่อนการลบ การอัปโหลดล้มเหลว, การอ่านกลับที่ต่างกัน หรือการถ่ายโอนที่ถูกยกเลิก จะทำให้ไฟล์ในเครื่องยังคงอยู่ หาก การสำรองหลักฐานที่เปิดใช้งานยังไม่ได้คัดลอกไฟล์นั้น การลบจะรอจนกว่าการสำรองข้อมูลจะเสร็จสิ้น
บนหน้านี้
เมื่อพื้นที่ดิสก์ใกล้เต็ม#
การดาวน์โหลดไฟล์แนบจะหยุดชั่วคราวเมื่อพื้นที่ว่างต่ำกว่าค่าใน พารามิเตอร์ → ไฟล์แนบ → พื้นที่ดิสก์ว่าง (ค่าเริ่มต้น 1 GiB) โดยเก็บคิวไว้ การสังเกตข้อความยังดำเนินต่อ การทำงานนี้ไม่ขึ้นกับการแจ้งเตือน การปิดแจ้งเตือนไม่ได้ปิดพื้นที่สำรองสำหรับดาวน์โหลดหรือมาตรการป้องกันของที่เก็บข้อมูล
หากต้องการเริ่มแก้ไขเร็วขึ้น ให้เปิด ทำงานอัตโนมัติ เลือก ลบไฟล์ในเครื่องเพื่อคืนพื้นที่ และเปิด เริ่มย้ายข้อมูลเพิ่มเมื่อพื้นที่ดิสก์ต่ำ กฎเสริมนี้เริ่มโดยค่าเริ่มต้นเมื่อว่างน้อยกว่า 5120 MiB และทำงานเป็นชุดจนมีพื้นที่ว่าง 10240 MiB ปรับทั้งสองเกณฑ์ได้ ใช้ปลายทาง อายุไฟล์ขั้นต่ำ จำนวนไฟล์ต่อชุด การอ่านกลับเพื่อตรวจสอบทั้งหมด และเงื่อนไขสำรองหลักฐานเช่นเดียวกับการทำงานด้วยตนเอง โดยไม่เปิดปลายทางเอง ตรวจสอบทุก 30 วินาที หากผิดพลาดหรือไม่มีความคืบหน้าจะเลื่อนการลองครั้งถัดไปห้านาที สถานะและเวลาลองใหม่คงอยู่หลังเริ่มระบบใหม่ เมื่อกฎไม่ทำงาน งานตามกำหนดยังคงใช้ช่วงเวลาปกติ
แผงควบคุมแสดงพื้นที่ว่าง พื้นที่สำรองสำหรับจัดแพ็ก ความพร้อมของกฎ และไฟล์ที่ข้ามเพราะพื้นที่ชั่วคราวไม่พอ การจัดแพ็กและกู้คืนตรวจสอบความต้องการพื้นที่ชั่วคราวสูงสุดก่อนเริ่ม และตรวจสอบพื้นที่ว่างระหว่างเขียน ใช้พื้นที่สำรองตามค่าดาวน์โหลด แต่ไม่น้อยกว่า 64 MiB สำหรับงานจัดเก็บ การตรวจสอบนี้ไม่ใช่โควตาระบบไฟล์ กระบวนการอื่นอาจใช้พื้นที่ระหว่างการตรวจสอบได้
Gzip บีบอัดวัตถุระยะไกลแบบไม่สูญเสียข้อมูล ไม่ย่อบันทึกที่ใช้งานหรือสร้างแฟ้มบีบอัดในเครื่อง ไฟล์ JPEG วิดีโอ และ ZIP อาจแทบไม่เล็กลงหรือใหญ่ขึ้นเล็กน้อย เมื่อเปิดการบีบอัด การจัดแพ็กอาจต้องใช้พื้นที่ชั่วคราวประมาณสองเท่าของขนาดไฟล์แนบรวมกับพื้นที่สำรอง เลือกเกณฑ์เริ่มให้เร็วพอสำหรับไฟล์ที่ใหญ่ที่สุด ไฟล์ที่ใหญ่เกินไปจะคงไว้และรายงาน ส่วนไฟล์เล็กและสำเนาระยะไกลที่ตรวจสอบแล้วอาจยังคืนพื้นที่ได้ เมื่อมีสำเนาที่ตรวจสอบแล้วสามารถลบไฟล์ในเครื่องโดยไม่ต้องสร้างไฟล์จัดแพ็กใหม่ การกู้คืนต้องใช้พื้นที่ชั่วคราวเช่นกันและอาจถูกปฏิเสธจนกว่าจะมีพื้นที่พอ
หากไม่มีไฟล์ที่เหมาะสมให้ย้ายหรือยังไม่ตั้งค่าปลายทาง TgWitness จะคืนพื้นที่อัตโนมัติไม่ได้ การจัดการที่เก็บข้อมูลจะไม่ตัดทอนหรือเขียนทับบันทึกที่ลงลายเซ็น และยังต้องมีพื้นที่สำหรับการสังเกตข้อความใหม่
เชื่อมต่อปลายทาง#
ใน Extras → Storage & disk space → Manage storage, เลือกงานและจุดหมายปลายทาง, บันทึกไว้ แล้วเลือก Test upload & download การทดสอบนี้จะอัปโหลดข้อมูลทดสอบขนาดเล็กแบบสุ่มและอ่าน ข้อมูลนั้นกลับมา โดยไม่ใช้เนื้อหาของ Telegram
สำหรับ S3 ให้ใช้จุดปลายทาง (endpoint) ภูมิภาค (region) และบัคเก็ต (bucket) ที่จริงของผู้ให้บริการ Wasabi, Backblaze, Cloudflare R2 และบริการอื่น ๆ ที่เข้ากันได้ใช้การตั้งค่า S3 เดียวกัน การที่ API เข้ากันได้เพียงอย่างเดียวไม่ได้หมายความว่ารองรับ Object Lock โหมด Governance อาจอนุญาตให้ผู้ ดูแลระบบที่ได้รับอนุญาตข้ามการเก็บรักษาข้อมูลได้ ส่วนโหมด Compliance มีข้อจำกัด ที่แตกต่างกัน โปรดอ่านสถานะ Object Lock ที่ได้รับก่อนที่จะพึ่งพาการเก็บรักษาข้อมูล
สำหรับจุดหมายปลายทางของ rclone ให้สร้างรีโมทหนึ่งตัวโดยใช้การตั้งค่าผู้ให้บริการของ rclone และ
วางส่วน [name] ลงในแผงควบคุม ตัวช่วยที่ติดตั้งไว้รองรับ
MEGA, Google Drive, OneDrive, Dropbox, Box, pCloud และผู้ให้บริการอื่น ๆ ที่แสดงใน
ตัวเลือก ข้อมูลรับรองจะถูกเก็บไว้ใน vault ที่เข้ารหัสของพื้นที่ทำงานนี้ การรีเฟรช OAuth
จะถูกบันทึกกลับเข้าไปใน vault ข้อมูลรับรองจะไม่ถูกเพิ่มเข้าไปในเหตุการณ์ของ journal
หรือรวมอยู่ในการดาวน์โหลดเพื่อกู้คืน
ตัวช่วย (helper) ติดตั้งอยู่ภายในพื้นที่ทำงาน (workspace) พร้อมด้วยเวอร์ชันที่ตรึงไว้ (pinned version) และ SHA-256 มันไม่ถูกเพิ่มเข้าไปใน PATH ของระบบ ไฟล์การตั้งค่าและไฟล์ทำงานเป็น ไฟล์ชั่วคราวภายในพื้นที่ทำงานนั้น การเชื่อมต่อระยะไกลแบบคำสั่งและไฟล์ท้องถิ่นถูก ปฏิเสธ rclone ในปัจจุบันต้องการเส้นทาง Direct ที่เลือกอย่างชัดเจนสำหรับ คำขอจากภายนอก ให้ใช้พื้นที่จัดเก็บ S3 แบบดั้งเดิมสำหรับเส้นทาง SOCKS5 หรือ HTTP ของพื้นที่ทำงาน; rclone จะไม่ข้ามเส้นทางที่ใช้งานไม่ได้ไปอย่างเงียบๆ
เก็บไฟล์กู้คืนไว้#
เลือก "บันทึกไฟล์กู้คืน" หลังจากคัดลอกไฟล์ และเก็บไว้ที่ สถานที่ที่แยกต่างหากจากตำแหน่งติดตั้ง เนื่องจากไฟล์นี้ประกอบด้วยกุญแจถอดรหัสและใบเสร็จ ของวัตถุที่ลงนามแล้ว ดังนั้นจึงควรปฏิบัติต่อไฟล์นี้เหมือนกับการสำรองกุญแจส่วนตัว นอกจากนี้ ให้เก็บการตั้งค่าระยะไกลต้นฉบับ และข้อมูลรับรองปลายทางไว้แยกต่างหากด้วย ไฟล์กู้คืนที่สร้างขึ้นก่อน การคัดลอกครั้งถัดไปจะไม่รวมใบเสร็จของไฟล์ที่คัดลอกในครั้งนั้น
ลายนิ้วมือของกุญแจการลงนามควรได้รับการบันทึกไว้อย่างอิสระแล้ว การตรวจสอบลายเซ็น โดยใช้เพียงกุญแจที่ระบุไว้ในไฟล์เดียวกันนั้น ไม่สามารถยืนยันได้ว่า ไฟล์การกู้คืนนั้นเป็นของใคร
เพื่อซ่อมแซมใบเสร็จการจัดเก็บที่ขาดหายในพื้นที่ทำงานที่มีอยู่ ให้เปิด กู้คืนไฟล์จากไฟล์กู้คืนที่เก็บไว้ และเลือกไฟล์ แผงควบคุมจะตรวจสอบลายเซ็นและต้องการกุญแจลงนามพื้นที่ทำงาน เดียวกัน มันจะปฏิเสธการแทนที่ด้วยกุญแจจัดเก็บที่ต่างกัน จากนั้นเลือก กู้คืนไฟล์ทั้งหมด การกู้คืนจะหยุดกฎการจัดเก็บอัตโนมัติชั่วคราว เพื่อไม่ให้รอบการลบตามกำหนดการ ครั้งต่อไปสามารถลบไฟล์ที่กู้คืนได้ทันทีอีกครั้ง ให้เปิดใช้งานกฎอีกครั้งเมื่อ เสร็จสิ้นการจัดการกับสำเนาท้องถิ่นแล้ว
กระบวนการกู้คืนจะตรวจสอบข้อความเข้ารหัส (ciphertext), ยืนยันความถูกต้องของการถอดรหัส, คลายการบีบอัดหาก
จำเป็น และตรวจสอบข้อความต้นฉบับ (plaintext) SHA-256 ก่อนที่จะวางไฟล์ลงใน media/.
วัตถุระยะไกลที่เสียหายจะไม่แทนที่ไฟล์ท้องถิ่นที่มีอยู่ ไฟล์ท้องถิ่นที่มีอยู่ซึ่งมี
ไบต์ที่ต่างกันจะถูกเก็บไว้เพื่อตรวจสอบแทนที่จะถูกเขียนทับ
กู้คืนข้อมูลหลังการสูญเสียการติดตั้ง#
ติดตั้งTgWitness บนเครื่องอื่น ใช้ไฟล์กู้คืนส่วนตัว ลายนิ้วมือที่บันทึกไว้แยกต่างหาก และข้อมูลรับรองปลายทางต้นฉบับ:
python -m tgwitness.storage recover \
--recovery storage-recovery.json \
--fingerprint TRUSTED_WORKSPACE_SHA256 \
--credentials original-rclone.conf \
--output recovered-attachments
สำหรับ S3, --credentials ชี้ไปยังไฟล์ JSON ส่วนตัวที่มี access_key และ
secret_key; ไฟล์กู้คืนที่ลงนามแล้วจะกำหนดการตั้งค่าปลายทาง
คำสั่งนี้ใช้การเชื่อมต่อภายนอกโดยตรงและดาวน์โหลดตัวช่วยที่ถูกปักหมุด
เมื่อ rclone remote ต้องการมัน มันจะปฏิเสธไดเรกทอรีเอาต์พุตที่มีอยู่แล้ว
ไบต์ต้นฉบับที่กู้คืนได้จะถูกเขียนลงสู่ recovered-attachments/media/, ซึ่งถูกตั้งชื่อตาม
SHA-256 ของมัน. recovery-log.jsonl คือบันทึกการกู้คืนที่ยังไม่ได้รับการลงนาม
คำสั่งนี้ไม่สร้างบันทึกที่ลงนามแล้วที่สูญหายหรือกุญแจลงนามของมันขึ้นมาใหม่ ให้เก็บ
สำเนาสำรองพื้นที่ทำงานแบบเต็มไว้สำหรับสิ่งเหล่านั้น ไฟล์กู้คืนพื้นที่จัดเก็บไม่ใช่สำเนาสำรองพื้นที่ทำงานแบบเต็ม
บอทผู้ดำเนินการและแจ้งเตือนการเสร็จสิ้น#
บอท Telegram เป็นของผู้ดำเนินการ สร้างบอทผ่าน BotFather และตั้งค่า token, แชทปลายทาง และ ID ผู้ใช้ Telegram ที่ได้รับอนุญาตอย่างชัดเจนในแผงควบคุม ทั้ง ผู้ส่งและแชทต้องตรงกัน ข้อความที่ส่งต่อและคำสั่งจากบอทอื่น จะถูกเพิกเฉย
/status และ /stats มีให้ใช้งานในโหมดสถานะเท่านั้นตามค่าเริ่มต้น โหมดควบคุม
แบบเลือกใช้จะเพิ่ม /pause, /resume และ /copy. /copy และส่งคำขอไปยัง
งานจัดเก็บข้อมูลที่ตั้งค่าไว้; สิ่งนี้ไม่หมายความว่ากระบวนการอัปโหลดไปยังเซิร์ฟเวอร์ระยะไกลได้เสร็จสิ้นแล้ว คำสั่ง
ไม่สามารถระบุ URL ไฟล์ หรือโปรแกรมเชลล์ตามใจชอบได้
ใช้การตั้งค่าการแจ้งเตือนแยกกันสำหรับการแจ้งเตือนและการเสร็จสิ้นงาน การแจ้งเตือน การเสร็จสิ้นจะแยกการส่งออกบัญชีที่มีช่องว่างออกจากการส่งออกที่สมบูรณ์ และแสดง ประวัติและจำนวนพื้นที่จัดเก็บ ข้อความที่ตัดตอนมาจะไม่ถูกรวมไว้ เว้นแต่จะ เปิดใช้งานแยกต่างหากในการตั้งค่าการแจ้งเตือน ตัวเลือกบริการถูกสร้างขึ้นจาก แคตตาล็อก Apprise ที่ติดตั้งจริง แทนที่จะเป็นชุดตัวอย่างผู้ให้บริการที่คงที่