กุญแจส่วนตัวอยู่ที่นี่ กุญแจสาธารณะอยู่ที่นั่น: กุญแจของ WireGuard
กุญแจส่วนตัวของคุณอยู่บนอุปกรณ์ของคุณเอง ส่วนรายการเพื่อนร่วมเครือข่ายเก็บกุญแจสาธารณะของอีกฝั่ง แบ่งปันเพียงครึ่งสาธารณะ และให้แต่ละอุปกรณ์มีตัวตนของตัวเอง
ความล้มเหลวของ WireGuard ที่ประกอบเองส่วนใหญ่มาจบที่คำถามว่ากุญแจดอกไหนไปอยู่ที่ไหน ส่วนอินเทอร์เฟซเก็บกุญแจส่วนตัวของอุปกรณ์ที่คุณกำลังตั้งค่า ขณะที่ส่วนเพื่อนร่วมเครือข่ายเก็บกุญแจสาธารณะของเครื่องที่อยู่อีกด้าน การสลับสองครึ่งนี้หรือวางผิดดอกจะทำให้เกิดแฮนด์เชกที่ไม่เคยเสร็จสิ้นและบันทึกที่ไม่เคยระบุชื่อกุญแจเลย ทำการตรวจสอบทั้งสี่ข้อด้านล่างตามลำดับก่อนจะแตะ AllowedIPs หรือ DNS
สองกุญแจ สองทิศทาง
กุญแจส่วนตัวเป็นของอุปกรณ์เพียงเครื่องเดียวและอยู่ในส่วนอินเทอร์เฟซของเครื่องนั้น ครึ่งสาธารณะของมันคือสิ่งที่เพื่อนร่วมเครือข่ายทุกตัวต้องใช้เพื่อจดจำอุปกรณ์ และเครื่องมือจะสืบทอดค่านี้แทนที่จะคิดขึ้นมาเอง บนเซิร์ฟเวอร์ กุญแจสาธารณะของอุปกรณ์คุณปรากฏเป็นรายการเพื่อนร่วมเครือข่าย บนอุปกรณ์คุณ กุญแจสาธารณะของเซิร์ฟเวอร์ทำหน้าที่นั้น การอ่านไฟล์ตั้งค่าออกเสียงด้วยศัพท์เหล่านี้จะจับความสับสนส่วนใหญ่ได้ก่อนจะไปถึงแฮนด์เชก
คำสั่ง wg พิมพ์สิ่งที่อินเทอร์เฟซภายในใช้จริง รวมทั้งกุญแจสาธารณะทั้งสองดอก จึงเป็นวิธีที่เร็วที่สุดในการแยกข้อผิดพลาดด้านการตั้งค่าออกจากปัญหาการเชื่อมต่อ:
wg show
wg show interfaces
ผลลัพธ์แรกจะแสดงรายการเพื่อนร่วมเครือข่ายแต่ละตัวพร้อมกุญแจสาธารณะ จุดปลายทางที่ใช้ล่าสุด และอายุของแฮนด์เชกล่าสุด อายุแฮนด์เชกแบบ «ไม่เคย» ที่ด้านหนึ่งและเพิ่งเกิดอีกด้านชี้ถึงกุญแจที่เพียงปลายเดียวตอบรับ คำสั่งที่สองระบุชื่ออินเทอร์เฟซที่คุณตรวจสอบต่อได้
อะไรควรแบ่งปันและอะไรไม่ควรแบ่งปันเลย
กุญแจสาธารณะถูกออกแบบมาให้ส่งต่อ แม้จะยังระบุความสัมพันธ์ของอุปกรณ์อยู่ จึงต่างจากการส่งให้ผู้ดูแลที่ขอมากับการเผยแพร่ ส่วนกุญแจส่วนตัวไม่เคยออกจากอุปกรณ์ที่สร้างมันขึ้นมา โปรไฟล์ที่ส่งออกหรือคิวอาร์โค้ดเก็บการตั้งค่าทั้งหมดรวมถึงกุญแจส่วนตัวนั้น ดังนั้นทั้งสองจึงไม่ปลอดภัยที่จะส่งต่อ และการซ่อนข้อความไว้ในภาพก็ไม่ได้เปลี่ยนอะไร กุญแจที่แชร์ล่วงหน้าเป็นทางเลือกและเป็นความลับเท่ากัน ทั้งสองฝั่งต้องมีค่าเดียวกัน ไม่อย่างนั้นแฮนด์เชกจะหยุดที่ขั้นนั้น
ความต่างอีกข้อควรพูดให้ชัด จุดปลายทางคือที่อยู่และพอร์ต ไม่ใช่กุญแจเลย การวางกุญแจสาธารณะในช่องจุดปลายทาง หรือวางที่อยู่ในช่องกุญแจ จะได้โปรไฟล์ที่แยกวิเคราะห์ได้แล้วก็ไม่ทำอะไร เครื่องมือจะจับไม่ได้เพราะทั้งสองช่องเป็นเพียงสตริง คู่มือเริ่มต้นอย่างเร็วของ WireGuard แสดงสายการสร้างและสืบทอดในบรรทัดเดียว
หนึ่งอุปกรณ์ หนึ่งรายการเพื่อนร่วมเครือข่าย
ในที่ที่บริการอนุญาต แต่ละอุปกรณ์ควรมีตัวตนเพื่อนร่วมเครือข่ายของตัวเอง การวางโปรไฟล์ทั้งชุดของแล็ปท็อปลงในโทรศัพท์จะทำให้ไม่ชัดว่าเครื่องไหนถือตัวตนนั้นบนเซิร์ฟเวอร์ และทำให้การเพิกถอนโทรศัพท์ที่หายไปเครื่องเดียวทำได้ยากขึ้น หากกุญแจส่วนตัวรั่วไหล ให้ถอนสิทธิ์เพื่อนร่วมเครือข่ายเดิมบนเซิร์ฟเวอร์และจัดหาตัวแทน การลบไฟล์ในเครื่องไม่ได้ลบรายการบนเซิร์ฟเวอร์ และกุญแจไคลเอนต์ใหม่ไม่ช่วยใครจนกว่าเซิร์ฟเวอร์จะรู้ครึ่งสาธารณะของมัน
เก็บบันทึกการจับคู่อุปกรณ์กับกุญแจสาธารณะไว้ข้างรายการที่อยู่ การเพิกถอนจะเป็นงานสองนาทีแทนที่จะเป็นครึ่งวันก็เพราะรายการนั้น
สิ่งที่ยังล้มเหลวหลังแฮนด์เชก
คู่กุญแจใช้ระบุเพื่อนร่วมเครือข่าย ไม่ได้กำหนดพฤติกรรมของเครือข่าย AllowedIPs เชื่อมช่วงที่อยู่กับเพื่อนร่วมเครือข่าย ส่วนเส้นทางรอบ ๆ นั้นไคลเอนต์หรือเครื่องมือตั้งค่าเป็นผู้จัดการ อาการมักบอกว่าควรเปิดชั้นไหนต่อ:
| What you see | Which key problem it usually means | Where to look first |
|---|---|---|
| Handshake age stays at never on both ends | Peer public key missing, or an endpoint pointing at nothing | wg show, then the endpoint value |
| Handshake completes on one side only | The two ends hold different public keys for each other | wg show on both hosts |
| Handshake works, then no traffic | AllowedIPs or routes rather than keys | wg show and the route table |
| Worked until a key was regenerated | The peer entry still holds the old public key | Compare both public keys, then update the peer |
DNS อาจล้มเหลวหลังจากทั้งสองฝั่งยืนยันตัวตนถูกต้องแล้ว และแอปพลิเคชันอาจล้มเหลวขณะที่อุโมงค์เองยังปกติ ดังนั้นแฮนด์เชกที่ทำงานได้จึงไม่ใช่จุดจบของการวินิจฉัย กุญแจไม่ได้บอกอะไรเกี่ยวกับวิธีบันทึกเหตุการณ์ของผู้ให้บริการ หรือว่าเว็บไซต์ใดรู้จักบัญชีของคุณ และคำถามเหล่านั้นเป็นเรื่องที่อื่น เมื่อการตรวจสอบทั้งสี่ผ่านแล้วให้ไปที่ชั้นเครือข่าย เพราะกุญแจที่หายไปไม่ใช่ปัญหาเส้นทางที่ปลอมตัว