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

ตัดสินใจว่าอะไรฟังบนที่อยู่และเส้นทางขนส่งใด

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

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

ตัดสินใจว่าตัวตนใดเป็นของบริการใด

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

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

ตัดสินใจว่าการดูแลระบบอยู่ที่ไหน

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

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

ทบทวนกฎเหล่านั้นเทียบกับตารางผู้รับฟังทุกครั้งที่มีการเพิ่มบริการ การทบทวนนั้นถูกและจับกฎที่ใครบางคนเพิ่มตอนตีสอง

ตัดสินใจว่าจะทำอะไรเมื่อทั้งสองแย่งกัน

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

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

ตรวจสอบจากภายนอก แล้วตรวจอีกครั้งหลังรีสตาร์ต

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

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

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