เปลี่ยนคีย์ เชื่อมต่อใหม่ หรือยืนยันตัวตนใหม่: คุณต้องใช้อันไหน
การเปลี่ยนคีย์สลับคีย์เซสชัน การเชื่อมต่อใหม่สร้างการเชื่อมต่อขึ้นใหม่ และการยืนยันตัวตนใหม่ทำการพิสูจน์ตัวตนซ้ำ สับสนกันเมื่อไรก็ได้การแก้ไขที่ผิด
เซสชันที่เปิดมานานหลายชั่วโมงจะไม่เก็บคีย์เดิมไว้ตลอดไป และนั่นคือการออกแบบโดยตั้งใจ เหตุการณ์ต่างกันสามอย่างถูกเรียกว่าการหมุนเวียนคีย์: วัสดุเซสชันใหม่ภายใต้ความเชื่อมโยงที่มีอยู่ การสร้างการเชื่อมต่อใหม่ทั้งหมด และการทำการตรวจสอบตัวตนซ้ำ แต่ละอย่างมีตัวกระตุ้น ต้นทุน และลายเซ็นความล้มเหลวที่ต่างกัน ถ้าเลือกผิด การแก้ไขจะไม่ทำอะไรเลยหรือทำให้อุโมงค์ล่มโดยไม่มีเหตุผล
การตัดสินใจขึ้นอยู่กับว่าชั้นใดหมดอายุจริง
สามการดำเนินการที่ถูกเรียกว่าการหมุนเวียน
การเปลี่ยนคีย์จะสร้างคีย์ทราฟฟิกใหม่ภายในความสัมพันธ์ควบคุมที่มีอยู่ โดยใช้กลไกที่โปรโตคอลกำหนด IKEv2 ทำเช่นนี้ด้วยความเชื่อมโยงความปลอดภัยลูกใหม่ TLS 1.3 ด้วยข้อความอัปเดตคีย์ และ WireGuard ด้วยแฮนด์เชกใหม่เมื่อถึงขีดจำกัดด้านเวลาหรือจำนวนข้อความ ที่อยู่ของอุโมงค์และตัวตนที่ผ่านการยืนยันยังอยู่ที่เดิม
การเชื่อมต่อใหม่จะทิ้งการเชื่อมต่อและสร้างขึ้นใหม่ตั้งแต่ต้น ซึ่งจะทำการกำหนดที่อยู่ การติดตั้งเส้นทาง และการเจรจาทั้งหมดที่ความพยายามแรกทำซ้ำ
การยืนยันตัวตนใหม่จะทำการพิสูจน์ตัวตนซ้ำ ซึ่งอาจเกี่ยวข้องกับข้อมูลรับรอง ใบรับรอง หรือปัจจัยที่สอง ขึ้นอยู่กับผลิตภัณฑ์ อาจเกิดขึ้นพร้อมหรือไม่พร้อมกับการเชื่อมต่อใหม่
สิ่งที่ผู้ใช้สังเกตเห็นเมื่อต่ออายุ
การเปลี่ยนคีย์ควรแทบมองไม่เห็น ตัวระบุความเชื่อมโยงเปลี่ยนไป ตัวนับอาจรีเซ็ต และแอปพลิเคชันยังคงถือซ็อกเก็ตของตน การหยุดชั่วครู่ในทิศทางเดียวระหว่างการแลกเปลี่ยนเป็นเรื่องปกติ การเห็นตัวระบุใหม่ในรายการสถานะไม่ใช่หลักฐานของข้อบกพร่อง บรรทัดบันทึกที่ตามหลังการแลกเปลี่ยนคือสิ่งที่บอกว่ามันเสร็จสิ้นหรือไม่
การขาดหายจริงเมื่อต่ออายุชี้ไปที่จุดใดจุดหนึ่ง ความไม่ตรงกันของข้อเสนอ ข้อมูลรับรองที่หมดอายุ หรือการเปลี่ยนเส้นทาง แต่ละอย่างสร้างบรรทัดบันทึกที่ต่างกัน และ มีเพียงหนึ่งเดียวเท่านั้นที่แก้ได้ด้วยการปรับอายุการใช้งาน
จุดที่ทั้งสามแตกต่างในทางปฏิบัติ
ถ้าสิ่งเดียวที่หมดอายุคือวัสดุคีย์ ให้เปลี่ยนคีย์ ถ้าที่อยู่ของเพียร์ เส้นทาง หรือการผูก NAT เปลี่ยนไปและแพ็กเก็ตไม่มาถึงอีก ให้เชื่อมต่อใหม่ ถ้าองค์กรต้องการการตรวจสอบตัวตนเป็นระยะ นั่นคือการยืนยันตัวตนใหม่ และไม่มีการปรับอายุการใช้งานใดทดแทนได้
ค่าเริ่มต้นของโปรโตคอลมักมีคำตอบที่ถูกต้อง WireGuard เปลี่ยนคีย์หลังขีดจำกัดด้านเวลาและปริมาณข้อมูลโดยไม่ต้องมีการกระทำของผู้ใช้ อายุการใช้งานของ IKEv2 ถูกเจรจาต่อความเชื่อมโยงลูกแต่ละรายการ อุโมงค์ที่ใช้ TLS จะหมุนเวียนคีย์ภายในเซสชันที่มีอยู่ การเพิ่มอายุการใช้งานเพื่อหลีกเลี่ยงข้อผิดพลาดที่เกิดซ้ำจะเลื่อนความล้มเหลวออกไปและยืดเวลาการเปิดเผยถ้าคีย์ถูกบุกรุก
ข้อควรระวังหนึ่งข้อสำคัญสำหรับเซสชันยาว: ความถี่เพียงอย่างเดียวไม่ได้สร้างความลับไปข้างหน้า คุณสมบัตินี้ขึ้นอยู่กับว่าคีย์เซสชันสัมพันธ์กับความลับระยะยาวอย่างไร และคีย์เก่าถูกทำลายหรือไม่ ซึ่งเป็นคำถามด้านการออกแบบและการใช้งาน ไม่ใช่การตั้งค่า
เลือกค่าเริ่มต้น แล้วบันทึกขั้นตอน
เก็บค่าเริ่มต้นของผู้จำหน่ายไว้ เว้นแต่ข้อกำหนดที่จัดทำเป็นเอกสารจะระบุเป็นอย่างอื่น และถ้าจะเปลี่ยนอายุการใช้งานก็เปลี่ยนทั้งสองฝ่าย จากนั้นบันทึกว่าแต่ละเหตุการณ์ไปถึงขั้นตอนใด เพื่อให้ครั้งถัดไปตรวจเทียบกับจุดเดียวกันในการแฮนด์เชก
swanctl --list-sas ip xfrm state | grep -E 'proto|replay-window' wg show journalctl -u strongswan --since '1 hour ago' | grep -i -E 'rekey|rekeyed|child'
หลังการแก้ไข ให้ทำการต่ออายุที่มีการควบคุมและส่งทราฟฟิกแอปพลิเคชันใหม่ผ่านความเชื่อมโยงใหม่ อุโมงค์ที่รายงานว่าสร้างเสร็จแต่ไม่ส่งต่อสิ่งใดเลยคือความล้มเหลวที่การตรวจนี้มีไว้เพื่อจับ