NM OpenVPN: โปรไฟล์ที่บันทึกไว้ไม่ใช่ไฟล์ .ovpn ของคุณ
การนำเข้าแปลตัวเลือกเป็นคอนเนกชันที่บันทึกไว้ อ่าน vpn.data กลับมา ตรวจสอบ ta และ ta-dir แล้วอัปเดตรายการเดียวแทนการแทนที่พจนานุกรม
ไฟล์ .ovpn เดียวกันเชื่อมต่อจากเชลล์ได้ แต่หมดเวลาหลังนำเข้า NetworkManager ข้อสรุปตามธรรมชาติคือ VPN เสีย แต่น่าจะเป็นคำอธิบายที่เล็กกว่านั้น คือ NetworkManager ไม่ได้เก็บไฟล์ไว้ แต่ได้นำเข้าบางส่วนไปไว้ในคอนเนกชันที่บันทึกไว้ และอุโมงค์ที่ทำงานอยู่ใช้ข้อมูลที่บันทึกไว้นั้นแทน สิ่งที่ไฟล์พูดตอนนี้ไม่เกี่ยวกับสิ่งที่โปรไฟล์เก็บไว้
ไฟล์ไม่ใช่โปรไฟล์
การนำเข้าเป็นการแปล ไม่ใช่การเมานต์ ตัวเลือกที่ปลั๊กอินเข้าใจจะกลายเป็นคีย์ในvpn.data พจนานุกรมของคอนเนกชัน ส่วนตัวเลือกที่ไม่เข้าใจจะถูกทิ้งหรือบันทึกไว้ที่อื่น และพาธเดิมเป็นเพียงการอ้างอิง การแก้ไขไฟล์ต้นทางภายหลังไม่เปลี่ยนอะไรในคอนเนกชันที่บันทึกไว้แล้ว
ช่องว่างนี้อธิบายรายงานทั้งตระกูล: คีย์ที่ใช้ร่วมกันถูกหมุนเวียน ไฟล์ถูกอัปเดต แต่อุโมงค์ยังคงล้มเหลว โปรไฟล์ที่บันทึกไว้ยังชี้ไปที่พาธเดิมหรือค่าเดิม และบรรทัดคำสั่งยังทำงานได้เพราะอ่านไฟล์ที่คุณแก้ไข ไคลเอนต์สองตัว แหล่งความจริงสองแหล่ง และมีเพียงแหล่งเดียวที่ถูกอัปเดต
อ่านโปรไฟล์ที่บันทึกไว้ ไม่ใช่กล่องโต้ตอบ
nmcli -f connection.id,connection.uuid,vpn.service-type,vpn.data connection show office-vpn
ใช้ UUID เมื่อสองโปรไฟล์ใช้ชื่อเดียวกัน และยืนยันว่าชนิดบริการคือ OpenVPN ปลั๊กอินที่คุณคาดหวัง ไม่ใช่ VPN ชนิดอื่นที่บังเอิญติดตั้งอยู่ จากนั้นเปรียบเทียบปลายทาง การขนส่ง และการอ้างอิงใบรับรองกับการเรียกที่ทำงานได้
ค่าที่มองเห็นในโปรแกรมแก้ไขแบบกราฟิกไม่ใช่หลักฐานว่าถูกบันทึกไว้ ให้บันทึก เปิดใหม่ แล้วอ่านกลับผ่านบรรทัดคำสั่ง ข้อบกพร่องในการบันทึกในอดีตเป็นเหตุผลให้ตรวจสอบข้อมูลที่บันทึกไว้ ไม่ใช่หลักฐานว่าทุกบิลด์ปัจจุบันมีบั๊กเดียวกัน การตรวจสอบใช้คำสั่งเดียว
คีย์สองตัว และทิศทางหนึ่งที่สำคัญ
สำหรับคอนเนกชันที่ใช้การยืนยันตัวตน TLS ปลั๊กอินเก็บพาธของคีย์ที่ใช้ร่วมกันใน ta และทิศทางใน ta-dir เมื่อการติดตั้งใช้ทิศทาง ทั้งสองอยู่ในพจนานุกรมข้อมูลของโปรไฟล์ และทั้งสองต้องตรงกับสิ่งที่เซิร์ฟเวอร์คาดหวัง
ทิศทางเป็นการตัดสินใจฝั่งเซิร์ฟเวอร์ที่แสดงออกบนไคลเอนต์ การเลือกทิศทางเพราะโปรไฟล์ข้างเคียงมีทิศทางนั้นคือทางที่ทำให้คีย์ที่ทำงานได้เริ่มล้มเหลวในการจับมือ หากการกำหนดค่าเซิร์ฟเวอร์ไม่มีทิศทาง ไคลเอนต์ไม่ควรประดิษฐ์ทิศทางขึ้นมา
ไฟล์คีย์เองต้องอ่านได้โดยปลั๊กอินในบริบทที่มันทำงานจริง แพ็กเกจที่จำกัดมีมุมมองระบบไฟล์ต่างจากการติดตั้งเดสก์ท็อปทั่วไป พาธที่มีอยู่ในเชลล์ของคุณจึงอาจมองไม่เห็นจากบริการ
อัปเดตรายการเดียว ไม่ใช่พจนานุกรม
nmcli connection modify office-vpn +vpn.data 'ta=/etc/NetworkManager/certs/office-ta.key'
nmcli connection modify office-vpn +vpn.data 'ta-dir=1'
เครื่องหมายบวกนำหน้าอัปเดตรายการในพจนานุกรมทีละรายการ การกำหนดค่า vpn.data โดยไม่มีเครื่องหมายนั้นจะแทนที่พจนานุกรมทั้งหมด และนั่นคือวิธีที่คีย์ที่หายไปหนึ่งตัวกลายเป็นการตั้งค่าที่พังห้าอย่าง อ่านโปรไฟล์กลับมาหลังการเปลี่ยนแปลงและยืนยันว่ารายการอื่นรอดชีวิต พจนานุกรมที่สูญเสียปลายทางระยะไกลและใบรับรองเป็นบ่ายที่ยาวนานกว่าบ่ายที่คุณเริ่มต้นมาก
เชื่อมต่อใหม่ผ่านตัวควบคุมปกติและเฝ้าดูขั้นตอนที่ล้มเหลว หากประตูคีย์ที่ใช้ร่วมกันผ่านไปได้แล้ว และไคลเอนต์รายงานข้อผิดพลาดเกี่ยวกับใบรับรองหรือการยืนยันตัวตนผู้ใช้ คุณได้ก้าวไปข้างหน้าแล้ว และการสืบสวนครั้งต่อไปจะเป็นอีกเรื่อง
อย่าสับสนโหมดของช่องควบคุม
tls-auth, tls-crypt และ tls-crypt-v2 เป็นการจัดวางที่ต่างกัน ไฟล์คีย์ที่ดูคล้ายกันไม่ได้ทำให้สลับกันได้ และการกรอกฟิลด์ TLS-Auth เพราะโปรไฟล์อื่นมีคีย์ที่จัดรูปแบบแล้วจะสร้างโปรไฟล์ที่ล้มเหลวในลักษณะคล้ายคีย์ผิด
ใช้การแมปปลั๊กอินที่ตรงกับโหมดในการกำหนดค่าเซิร์ฟเวอร์ เมื่อโหมดไม่ชัดเจน ให้ถามเจ้าของเซิร์ฟเวอร์แทนการเดาจากบรรทัดแรกของไฟล์
เก็บเส้นทางการกู้คืนไว้เมื่ออุโมงค์พาเซสชันการจัดการของคุณไปด้วย การเปลี่ยนแปลงที่บันทึกไว้ไม่จำเป็นต้องเป็นการเปลี่ยนแปลงที่นำไปใช้ และการนำเข้าที่สำเร็จไม่ใช่หลักฐานว่าทุกตัวเลือกต้นทางได้รับการสนับสนุน ช่องว่างทั้งสองนี้ควรรู้ไว้ก่อนที่คุณจะเชื่อมต่อลิงก์ที่คุณทำงานผ่านอีกครั้ง