Tunnelblick data-ciphers ที่ไม่รู้จัก: เอนจินใดกำลังทำงานอยู่?
ข้อผิดพลาด data-ciphers ที่ไม่รู้จักคือความล้มเหลวในการแยกวิเคราะห์ภายในเครื่อง ไม่ใช่ความไม่ตรงกันของไซเฟอร์ ค้นหาเอนจินที่การเชื่อมต่อนั้นใช้ก่อนแก้ไขโปรไฟล์
Tunnelblick รายงานตัวเลือก data-ciphers ที่ไม่รู้จัก กล่าวถึง OpenVPN 2.4 ในลมหายใจเดียวกัน และการเชื่อมต่อไม่เคยเริ่มต้น นี่คือความล้มเหลวในการแยกวิเคราะห์ภายในเครื่อง ไม่ใช่ความขัดแย้งเรื่องไซเฟอร์ เพราะเอนจินปฏิเสธโปรไฟล์ก่อนที่จะมีการเจรจากับเกตเวย์ใด ๆ คำแนะนำปกติเกี่ยวกับนโยบายไซเฟอร์ของเซิร์ฟเวอร์ช่วยที่นี่ไม่ได้ ตัวแยกวิเคราะห์ต้องเข้าใจไฟล์ก่อน ค้นหาเอนจินที่การกำหนดค่านี้เปิดใช้จริง แล้วส่วนที่เหลือจะตามมา
อ่านบรรทัดบันทึกก่อนแตะโปรไฟล์
เปิดการเชื่อมต่อที่ล้มเหลวในหน้าต่างรายละเอียดของ Tunnelblick แล้วอ่านบันทึกจากด้านบน บรรทัดแรกบอกเวอร์ชันของเอนจินและโปรไฟล์ที่ส่งให้ ตามด้วยตัวเลือกที่ทำให้การแยกวิเคราะห์หยุด ทุกอย่างหลังจากนั้นเป็นเสียงรบกวน เพราะโปรเซสได้ออกไปแล้ว
จดข้อเท็จจริงสามอย่างจากบันทึกนั้น: เวอร์ชันเอนจิน ชื่อการกำหนดค่า และข้อความที่แน่นอน ทั้งสามนี้คือการวินิจฉัยทั้งหมด และเป็นสิ่งที่คุณจะต้องใช้หากการแก้ไขต้องเปลี่ยนแอปพลิเคชันที่ติดตั้งไว้ จับภาพหน้าจอบรรทัดเหล่านั้นแทนการถอดความ เพราะชื่อตัวเลือกพิมพ์ผิดได้ง่ายเมื่อท่องจากความจำ
ยืนยันว่าการกำหนดค่านั้นเรียกใช้เอนจินใด
Tunnelblick เป็นแอปพลิเคชันที่ห่อหุ้มเอนจิน OpenVPN และการกำหนดค่าต่างกันอาจเรียกใช้เอนจินต่างกัน ตรวจสอบเวอร์ชันที่เลือกสำหรับการกำหนดค่านี้ในหน้าต่างรายละเอียดแทนการอ่านเวอร์ชันแอปพลิเคชัน และอย่าแทนที่ด้วยผลลัพธ์ของไบนารี openvpn ในเทอร์มินัลที่การกำหนดค่าไม่เคยใช้ คู่มือเวอร์ชัน OpenVPN ของ Tunnelblick อธิบายว่าการเลือกนั้นทำงานอย่างไรและเก็บตัวเลือกไว้ที่ใด
ความแตกต่างนี้สำคัญเพราะเครื่องหนึ่งอาจมีไบนารีที่ทันสมัยใน PATH และมีเอนจิน 2.4 ที่มาพร้อมกันอยู่เบื้องหลังการเชื่อมต่อที่ล้มเหลว โปรไฟล์ถูกประเมินโดยตัวที่สอง
openvpn --version
ls /Applications/Tunnelblick.app/Contents/Resources/openvpn/สองคำสั่งนี้แสดงสิ่งที่เทอร์มินัลจะเรียกใช้และไดเรกทอรีเอนจินที่แอปพลิเคชันที่ติดตั้งมีอยู่ ทั้งสองไม่ใช่หลักฐานว่าการกำหนดค่าที่ล้มเหลวใช้อะไร เนื่องจากบันทึกบอกคุณแล้ว และเส้นทางแตกต่างกันระหว่างรุ่นของ Tunnelblick
ทำไมชื่อคำสั่งจึงเปลี่ยน
OpenVPN แนะนำ data-ciphers เป็นรายการเจรจาใน 2.5 แทนที่การสะกด ncp-ciphers ก่อนหน้าที่เลิกใช้ในรุ่นนั้น เอนจิน 2.4 ไม่มีตัวเลือกดังกล่าว จึงหยุดที่โทเคนแรกที่ไม่รู้จัก ตัวเลือก cipher เดี่ยวก็ไม่ใช่ชื่อเดิมของรายการเช่นกัน มันระบุไซเฟอร์เดียวแทนชุดเจรจา
นั่นคือเหตุผลที่การแทนที่ข้อความข้ามรุ่นสร้างโปรไฟล์ที่แยกวิเคราะห์ได้แล้วกลับทำงานไม่คาดคิด และเป็นเหตุผลที่การคัดลอกข้อความบางส่วนจากโพสต์ฟอรัมไม่ใช่การตรวจสอบเวอร์ชัน ชื่อตัวเลือกเปลี่ยนไปพร้อมกับการจัดการค่าสำรองและค่าเริ่มต้น และไฟล์ที่ประกอบขึ้นโดยเปลี่ยนชื่อคำสั่งเดียวไม่เทียบเท่ากับไฟล์ที่เขียนสำหรับเอนจินนั้น
แก้ไขเอนจินหรือโปรไฟล์ ไม่ใช่อาการ
สำหรับการติดตั้งที่รองรับ การซ่อมแซมที่ยั่งยืนคือการรวมกันที่รองรับของ Tunnelblick และเอนจินที่ยอมรับโปรไฟล์ของผู้ปฏิบัติงาน ซึ่งจัดผ่านผู้ที่เป็นเจ้าของการติดตั้งแอปพลิเคชัน หากการติดตั้งเก่าต้องอยู่ต่ออีกระยะ ให้ขอโปรไฟล์ที่เขียนสำหรับเอนจินนั้นและสำหรับไซเฟอร์ที่เกตเวย์ยอมรับจริง
การลบ data-ciphers และ data-ciphers-fallback ลบข้อผิดพลาดการแยกวิเคราะห์เฉพาะนี้ได้จริง และนั่นคือเหตุผลที่มันน่าดึงดูด มันยังเปลี่ยนว่าไซเฟอร์ใดจะถูกเจรจา อย่างเงียบ ๆ ในการกำหนดค่าความปลอดภัยที่คุณไม่ได้ตั้งใจจะแก้ไข เก็บโปรไฟล์ต้นฉบับไว้และเปรียบเทียบการตั้งค่าที่รองรับอย่างตั้งใจแทน
ลองอีกครั้งและอ่านขั้นตอนถัดไป
หลังการแก้ไข ลองเชื่อมต่ออีกครั้งและอ่านบันทึกใหม่ตั้งแต่ต้นแทนการถือว่าสำเร็จ โปรไฟล์ที่แยกวิเคราะห์ได้แล้วยังอาจหยุดที่การเจรจาไซเฟอร์ การตรวจสอบใบรับรอง การพิสูจน์ตัวตน หรือการกำหนดเส้นทาง และแต่ละความล้มเหลวนั้นมีหลักฐานของตัวเอง
หากการเจรจาล้มเหลว ให้เปรียบเทียบไซเฟอร์ที่ทั้งสองฝ่ายรองรับกับที่แต่ละฝ่ายได้รับอนุญาตให้ใช้ หากการพิสูจน์ตัวตนล้มเหลว แสดงว่าโปรไฟล์และเอนจินทำงานได้ดีพอที่จะไปถึงเกตเวย์แล้ว ซึ่งเป็นความคืบหน้าที่ควรบันทึก การหยุดห่วงโซ่นั้นที่บันทึกเงียบแรกคือวิธีที่การตั้งค่าความปลอดภัยถูกลบออกด้วยเหตุผลผิด