OpenVPN ไม่ปรากฏในเมนู VPN ของ Ubuntu 18.04: ต้องติดตั้งอะไร
ประเภท VPN ในแผง GNOME มาจากแพ็กเกจปลั๊กอิน ไม่ใช่คำสั่ง openvpn ติดตั้งชุดนั้น รีสตาร์ท NetworkManager แล้วนำเข้าโปรไฟล์
รายการ VPN ของ GNOME อาจไม่มีอะไรที่ตรงกับโปรไฟล์ที่คุณได้รับ และข้อสรุปที่พบบ่อยคือเดสก์ท็อปนี้ทำ OpenVPN ไม่ได้ แต่ทำได้ สิ่งที่ขาดคือแพ็กเกจปลั๊กอิน และไคลเอนต์บรรทัดคำสั่งบนเครื่องเดียวกันไม่เกี่ยวกับเมนูเลย นี่คือความเชื่อผิดที่ควรกำจัดก่อน เพราะมันส่งคนไปติดตั้งสิ่งที่ผิดซ้ำ
เมนูแสดงปลั๊กอิน ไม่ใช่โพรโทคอล
GNOME วาดประเภทการเชื่อมต่อที่ตัวจัดการเครือข่ายรายงาน และตัวจัดการรายงานปลั๊กอินที่ติดตั้งไว้ รายการว่างจึงอธิบายชุดปลั๊กอินที่ติดตั้ง ไม่ใช่ความสามารถของโพรโทคอล นั่นคือเหตุผลที่ไบนารี openvpn ที่ใช้งานได้ไม่เปลี่ยนอะไรในแผงเลย
ความต่างนี้สำคัญเพราะจากแผงแล้วความล้มเหลวทั้งสองดูเหมือนกัน ปลั๊กอินที่หายไปและปลั๊กอินที่เสียต่างก็สร้าง กล่องโต้ตอบที่ช่วยอะไรไม่ได้ และมีเพียงอย่างแรกที่แก้ได้ด้วยการติดตั้งบางอย่าง การถามตัวจัดการว่ามันรู้อะไรแยกสองกรณีก่อนที่คุณจะติดตั้งอะไร คำถามนั้นใช้คำสั่งเดียวและแทนชั่วโมงแห่งการเดา
กล่องโต้ตอบเป็นของแพ็กเกจใด
บน Ubuntu 18.04 แพ็กเกจมีชื่อเฉพาะ และรุ่นใหม่กว่าคงการแบ่งแบบเดิมไว้ อ่านมันเป็นบทบาทไม่ใช่ทางเลือก เพราะการติดตั้งอย่างเดียวไม่ค่อยแก้ปัญหาได้เอง แพ็กเกจหนึ่งมีเดมอนกับไคลเอนต์บรรทัดคำสั่ง และทั้งสองไม่รู้จักกล่องโต้ตอบการตั้งค่าใด ๆ
แพ็กเกจปลั๊กอินคือสิ่งที่ทำให้ตัวจัดการเครือข่ายสร้าง เก็บ และเริ่มการเชื่อมต่อ OpenVPN ได้ แพ็กเกจตัวแก้ไขมีแบบฟอร์ม ฟิลด์ และเส้นทางบันทึกที่แผงเรียกใช้ เครื่องที่มีปลั๊กอินแต่ไม่มีตัวแก้ไขจะแสดงประเภทที่ตั้งค่าไม่ได้ ส่วนเครื่องที่มีตัวแก้ไขแต่ไม่มีปลั๊กอินจะไม่แสดงอะไรเลย ติดตั้งทั้งชุดพร้อมกันแล้วความกำกวมจะหายไป
sudo apt install openvpn network-manager-openvpn network-manager-openvpn-gnome
nmcli --version
บน 18.04 นั่นคือชื่ออาร์ไคว์จริง ไม่ใช่ตัวแทน เดสก์ท็อป KDE ต้องมีแพ็กเกจตัวแก้ไขของตัวเองและยังต้องมีปลั๊กอิน และนั่นคือส่วนที่คู่มือสำหรับ GNOME อย่างเดียวละเว้น
การรีสตาร์ทเป็นส่วนหนึ่งของการติดตั้ง
แผงถามตัวจัดการถึงประเภทที่รองรับตอนบริการเริ่มทำงาน และรายการที่วาดไว้แล้วจะไม่ถูกทำให้สดใหม่โดยการติดตั้ง ดังนั้นการติดตั้งขณะบริการทำงานจึงได้ทั้งการติดตั้งที่สำเร็จและกล่องโต้ตอบที่ไม่เปลี่ยน ซึ่งน่าหงุดหงิด การรีสตาร์ทไม่ใช่การดูแลที่เป็นทางเลือก แต่เป็นขั้นตอนที่ทำให้การติดตั้งมองเห็นได้
การรีสตาร์ทตัดการเชื่อมต่อหลายวินาที และเซสชัน SSH ใดที่ผ่านอินเทอร์เฟซเดียวกันก็ไปด้วย จึงต้องวางแผนหากเครื่องอยู่ระยะไกล จากนั้นเปิดแผงอีกครั้งและถามตัวจัดการโดยตรงว่ารองรับอะไร การสอบถามโดยตรงเป็นหลักฐานที่ดีกว่าเมนูที่อาจถูกแคชไว้
sudo systemctl restart NetworkManager
nmcli -f NAME,TYPE connection show
nmcli connection add type vpn
คำสั่งสุดท้ายคือการทดสอบที่แยกแยะ เมื่อมีปลั๊กอินมันล้มเหลวเพราะขาดอาร์กิวเมนต์ เมื่อไม่มีมันรายงานประเภท VPN ที่ไม่รู้จัก ผลลัพธ์หนึ่งคือแบบฟอร์มที่รอกรอก อีกอย่างยังเป็นปัญหาการแพ็กเกจ เรียกใช้ก่อนและหลังการติดตั้งถ้าต้องการให้เห็นความต่างชัด
ให้ nmcli อ่านไฟล์ .ovpn
ไม่มีอะไรบังคับให้คุณสร้างโปรไฟล์ที่ได้รับใหม่ทีละส่วน ตัวจัดการอ่านไฟล์ .ovpn โดยตรงและเปลี่ยนคำสั่งของมันเป็นการเชื่อมต่อที่เก็บไว้ รวมถึงใบรับรองแบบฝัง การนำเข้ายังชนะการพิมพ์ซ้ำในเรื่องความแม่นยำ เพราะรหัสลับที่พิมพ์ผิดหรือกุญแจที่ถูกตัดจะทำให้เกิดความล้มเหลวที่ดูเหมือนปัญหาของเซิร์ฟเวอร์
วางโปรไฟล์ไว้ข้างกุญแจหรือใบรับรองใดที่มันอ้างถึงจนกว่าการบันทึกจะเสร็จ เพราะการเชื่อมต่อที่เก็บเฉพาะพาธไฟล์จะพังเมื่อไฟล์เหล่านั้นถูกย้าย จากนั้นทดสอบการเชื่อมต่อตามชื่อ และตอบพรอมต์ข้อมูลรับรองใด ๆ ที่อยู่ด้านหน้าเพื่อให้เห็นว่ามันต้องการอะไร การเชื่อมต่อที่บันทึกไว้แต่ไม่เคยเปิดใช้งานไม่ใช่หลักฐานของอะไรเลย
nmcli connection import type openvpn file ~/Downloads/office.ovpn
nmcli --ask connection up office
nmcli -f NAME,TYPE,STATE connection show --active
คำสั่งที่สามยืนยันว่าทันเนลขึ้นอยู่ภายใต้ชื่อที่คุณคาดไว้ มันยังแยกการเชื่อมต่อที่ล้มเหลวออกจากอันที่ไม่เคยเปิดใช้งาน
สิ่งที่เมนูบอกคุณไม่ได้
ประเภทที่หายไปไม่ได้บอกอะไรเกี่ยวกับเกตเวย์ และไม่ได้หมายความว่าเซิร์ฟเวอร์ปฏิเสธ OpenVPN มันไม่ใช่เหตุผลที่จะติดตั้งปลั๊กอินของโพรโทคอลที่ไม่เกี่ยวข้องเพื่อให้รายการเมนูปรากฏ ความผิดพลาดที่สองนั้นมีชื่อในทางปฏิบัติ ผู้คนมักเล็งโปรไฟล์ PPTP หรือ AnyConnect ไปที่บริการ OpenVPN เพราะสิ่งเหล่านั้นคือรายการที่เสนอให้
ซ่อมแพ็กเกจก่อน คำถามเรื่องเซิร์ฟเวอร์มาทีหลัง โปรไฟล์ที่นำเข้าเรียบร้อยและไม่เคยพิสูจน์ตัวตนจะล้มเหลวที่คำถามเรื่องใบรับรอง TLS หรือข้อมูลรับรอง ไม่ใช่เรื่องตัวแก้ไข แต่ละอย่างทิ้งหลักฐานต่างกัน และไม่มีอย่างใดปรากฏในกล่องโต้ตอบ อ่านบันทึกของไคลเอนต์ก่อนเปิดแผงการตั้งค่าอีกครั้ง
พิสูจน์ด้วยทรัพยากรที่คุณใช้จริง
เมื่อประเภทมีอยู่และการเชื่อมต่อถูกบันทึกแล้ว ให้เชื่อมต่อและเปิดทรัพยากรที่คุณใช้จริง การเปิดใช้งานอย่างเดียวพิสูจน์เพียงว่าสองปลายตกลงเรื่องทันเนล ทันเนลที่ขึ้นแต่ไม่พาอะไรไปคือโหมดล้มเหลวถัดไป และแผงมองไม่เห็น
จดว่าทรัพยากรใดที่คุณทดสอบ เพื่อให้คนถัดไปทำซ้ำการตรวจนั้นแทนที่จะเริ่มใหม่ เมื่อทันเนลขึ้นแต่ทรัพยากรยังล้มเหลว การสืบสวนจะย้ายไปที่เส้นทางและ DNS ไม่ใช่กลับไปที่กล่องโต้ตอบ บันทึกนั้นคือความต่างระหว่างการซ่อมกับการเล่าเรื่อง