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

ขั้นแรก: ปักหมุดสิ่งที่คุณกำลังอ่าน

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

juju info CHARM_NAME รายงานช่อง ฐาน และสถาปัตยกรรมใน Juju 3.6 และเอกสารระบุว่าการสอบถามรีวิชันเฉพาะไม่สามารถรวมกับตัวกรองเหล่านั้นได้ ถามรีวิชันแยกต่างหากแทนการสร้างชุดผสมที่คำสั่งปฏิเสธ อ่านฐานและสถาปัตยกรรมด้วย เพราะช่องหนึ่งอาจครอบคลุมมากกว่าหนึ่ง

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

ขั้นที่สอง: อ่านการกำหนดค่าเป็นสัญญา

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

ปฏิบัติตามอินเทอร์เฟซและการกระทำที่ charm เปิดเผยจริง อย่าสันนิษฐานว่ามีการกระทำการลงทะเบียนเพียงเพราะ charm อื่นสำหรับซอฟต์แวร์เดียวกันมี

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

ขั้นที่สาม: แยกผู้รับฟังออกจากเส้นทางที่ส่งต่อ

ผู้รับฟังภายนอกคือซ็อกเก็ตที่ยอมรับ tunnel การส่งต่อคือสิ่งที่เกิดขึ้นกับทราฟฟิกภายใน และเส้นทางกลับคือสิ่งที่ทำให้การตอบกลับย้อนกลับมา charm สามารถส่งมอบอย่างแรกและปล่อยอีกสองอย่างให้ทีมโครงสร้างพื้นฐาน

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

ขั้นที่สี่: การเปิดเผยคือการกระทำของไฟร์วอลล์

ใน Juju 3.6 การเปิดเผยแอปพลิเคชันจะปรับกฎไฟร์วอลล์ของคลาวด์ และโดยค่าเริ่มต้นอนุญาตทราฟฟิกจากทุกแหล่งไปยังพอร์ตที่ภาระงานเปิดไว้ ตัวเลือก endpoint และ CIDR ของคำสั่งมีอยู่เพื่อให้ค่าเริ่มต้นนั้นถูกจำกัดได้

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

ขั้นที่ห้า: ยอมรับด้วยการทดสอบสี่อย่าง

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

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

บทความที่เกี่ยวข้อง