โปรไฟล์ OpenVPN ที่ใช้แค่รหัสผ่านควรใส่ไฟล์ CA ตัวไหน?
ช่อง CA ตรวจสอบเซิร์ฟเวอร์ ไม่ใช่ผู้ใช้ ดูสิ่งที่โปรไฟล์มีอยู่แล้ว แยกวัสดุสี่ประเภทออกจากกัน แล้วอ่านข้อผิดพลาดถัดไป
ไล่สี่คำถามตามลำดับ แล้วกล่องโต้ตอบ CA จะไม่กำกวมอีก ตัวดำเนินการออกวัสดุอะไรมาจริง โปรไฟล์มีอะไรอยู่แล้ว ช่องไหนเป็นคนถาม และเกิดอะไรขึ้นหลังจากโหลดไฟล์ หยุดที่คำถามแรกที่คุณตอบไม่ได้จากคำแนะนำของตัวดำเนินการเอง เพราะการเดาต่อจากตรงนั้นคือทางที่ใบรับรอง CA แบบสาธารณะไปจับคู่กับกุญแจส่วนตัวที่ไม่ควรออกจากเซิร์ฟเวอร์เลย
ลำดับสำคัญ: สองคำถามสุดท้ายจะมีความหมายก็ต่อเมื่อคุณรู้ว่าวัสดุใดควรมีอยู่
เริ่มจากสิ่งที่โปรไฟล์มีอยู่แล้ว
เปิดโปรไฟล์ในโปรแกรมแก้ไขข้อความแล้วมองหาบล็อก ca ก่อนจะหาไฟล์ บล็อก ca แบบฝังในที่มี CA สาธารณะของตัวดำเนินการหมายความว่าโปรไฟล์พึ่งพาตัวเองได้ และไคลเอนต์ที่ยังขอไฟล์ CA อาจกำลังอ่านโปรไฟล์อื่นหรือการนำเข้าที่ไม่สมบูรณ์ ถ้าโปรไฟล์มีบรรทัด ca ที่ชี้ไปยังพาธแทน พาธนั้นจะสัมพันธ์กับไดเรกทอรีทำงานของไคลเอนต์ในการผสานรวมบางแบบ และเป็นแบบสัมบูรณ์ในแบบอื่น บันทึกไว้ว่าคุณมีรูปแบบไหนก่อนจะเปลี่ยนอะไร
ca /absolute/path/operator-ca.crt auth-user-pass remote-cert-tls server
ตรวจแพ็กเกจที่ส่งมาสำหรับไฟล์ที่โปรไฟล์อ้างถึง: ใบรับรอง CA บางครั้งใบรับรองไคลเอนต์และกุญแจแยกกัน และอาจมีไฟล์ tls-auth หรือ tls-crypt โปรไฟล์ที่อ้างถึงสี่ไฟล์แต่มาพร้อมสองไฟล์นั้นไม่สมบูรณ์ และการชี้ไปที่ช่องต่าง ๆ ไม่ช่วยแก้เลย ขอชิ้นส่วนที่ขาดจากตัวดำเนินการแทนที่จะเอาคำรับรองที่มีอยู่โดยบังเอิญไปแทน
แยกวัสดุสี่ประเภทออกจากกัน
ใบรับรอง CA เป็นวัสดุสาธารณะที่ใช้ตรวจสอบตัวตนของเซิร์ฟเวอร์ ใบรับรองไคลเอนต์ระบุตัวผู้ใช้หรืออุปกรณ์ต่อเซิร์ฟเวอร์ กุญแจส่วนตัวเป็นครึ่งลับของใบรับรองไคลเอนต์นั้น และต้องไม่เป็นกุญแจลงนามของ CA หรือกุญแจเซิร์ฟเวอร์เด็ดขาด วัสดุ tls-auth หรือ tls-crypt เป็นความลับร่วมแยกต่างหากที่ปกป้องช่องควบคุม ทั้งสี่อย่างนี้ใช้แทนกันไม่ได้ และการชี้ช่อง CA ไปที่ใบรับรองไคลเอนต์จะทำให้การตรวจสอบล้มเหลวในลักษณะที่ดูเหมือนปัญหาความเชื่อถือ
การยืนยันตัวตนด้วยรหัสผ่านอย่างเดียว เปลี่ยนว่าคุณต้องใช้หนึ่งในสี่ตัวไหน ไม่ได้เปลี่ยนความหมายของมัน auth-user-pass และ remote-cert-tls server ไคลเอนต์ยังตรวจสอบเซิร์ฟเวอร์กับ CA จึงเป็นเหตุให้ช่อง CA ปรากฏแม้ไม่มีใบรับรองไคลเอนต์ นโยบายของตัวดำเนินการเป็นตัวตัดสินว่าต้องมีใบรับรองไคลเอนต์ด้วยหรือไม่ และไม่มีกล่องโต้ตอบใดบอกคุณได้
ชี้ไคลเอนต์ไปที่ไฟล์ความเชื่อถือ
เลือกไฟล์ใบรับรอง CA เอง ไม่ใช่โฟลเดอร์ที่เก็บมัน และไม่ใช่บันเดิล .p12 ที่มีตัวตนของไคลเอนต์ บน Windows ไวยากรณ์ของพาธและตัวเลือกไฟล์ทำงานต่างจากตัวอย่าง Linux ในคู่มือส่วนใหญ่ ดังนั้นใช้สิ่งที่ไคลเอนต์ที่ติดตั้งไว้ยอมรับ และยืนยันว่าบัญชีที่รันมันอ่านไฟล์ได้ ปัญหาสิทธิ์และไฟล์ที่หายไปดูเหมือนกันในกล่องโต้ตอบแต่ให้บรรทัดบันทึกที่ต่างกัน หลังเลือกแล้วให้เปิดการตั้งค่าโปรไฟล์อีกครั้งเพื่อยืนยันว่าไคลเอนต์เก็บตัวเลือกไว้
<ca> -----BEGIN CERTIFICATE----- ...operator-provided public CA... -----END CERTIFICATE----- </ca>
ถ้าไคลเอนต์รองรับบล็อกแบบฝังใน ให้เลือกโปรไฟล์แบบฝังในของตัวดำเนินการมากกว่าโปรไฟล์ที่ประกอบเอง วัสดุแบบฝังในเดินทางไปกับโปรไฟล์และอยู่รอดจากการนำเข้าใหม่ ขณะที่พาธแบบสัมบูรณ์จะพังทันทีที่ย้ายโปรไฟล์ไปเครื่องอื่น
อ่านข้อผิดพลาดถัดไป ไม่ใช่ตัวเดิม
จุดประสงค์ของการให้ CA ที่ถูกต้องคือเปลี่ยนข้อผิดพลาด ไม่ใช่ทำให้มันหายไป ความล้มเหลวของตัวตนเซิร์ฟเวอร์หลังโหลด CA หมายความว่าใบรับรองไม่ตรงกับชื่อที่คาดไว้หรือความคาดหวัง remote-cert-tls ซึ่งเป็นการซ่อมที่ต่างจากการปฏิเสธรหัสผ่าน การปฏิเสธรหัสผ่านหมายความว่าชั้น TLS สำเร็จและข้อมูลรับรองผิด เก็บข้อความใหม่ข้อความแรกไว้ เพราะนั่นคือข้อความที่มีประโยชน์
ไคลเอนต์ที่เชื่อมต่อได้แต่ไปไม่ถึงไหนได้ผ่านความเชื่อถือไปแล้ว และตอนนี้กำลังเผชิญคำถามเรื่องเส้นทางหรือ DNS
อย่าปิดการตรวจสอบเพื่อผ่านกล่องโต้ตอบนั้นเด็ดขาด ไคลเอนต์ที่ยอมรับใบรับรองใดก็ได้ไม่มีเหตุจะขอ CA และอุโมงค์ที่มันสร้างไม่ใช่อุโมงค์ที่ตัวดำเนินการตั้งใจไว้