บทช่วยสอนนั้นใช้โครงสร้างแพ็กเกจ Easy-RSA แบบใด
บทช่วยสอนที่คาดหวัง vars หรือ build-key กำลังอธิบาย Easy-RSA 2 ตรวจสอบรุ่นที่ติดตั้งและพื้นที่ทำงาน PKI ก่อนคัดลอกอะไรก็ตาม
บทช่วยสอนบอกให้คุณแก้ไข vars ในไดเรกทอรี Easy-RSA แต่ไดเรกทอรีบนเครื่องของคุณไม่มีไฟล์นั้น โดยปกติแล้วนี่คือความไม่ตรงกันของรุ่น ไม่ใช่แพ็กเกจที่เสีย Easy-RSA 2 เก็บไฟล์ vars ไว้ข้างตัวช่วยเชลล์อย่าง build-key ส่วน Easy-RSA 3 มีคำสั่ง easyrsa คำสั่งเดียวและอ่านการกำหนดค่าจากเทมเพลตพร้อมตัวเลือกบรรทัดคำสั่ง ค้นหาว่าคุณมีแบบไหนก่อนคัดลอกอะไรจากคู่มือ
ทำการตรวจสอบเหล่านี้ตามลำดับ เพราะแต่ละข้อจำกัดข้อถัดไป
1. ทำบัญชีสิ่งที่ติดตั้งไว้
บนระบบตระกูล Debian ถามตัวจัดการแพ็กเกจว่าได้ลงทะเบียนไฟล์ใดไว้จริง:
dpkg-query -L easy-rsaรายการของแพ็กเกจ Debian ปัจจุบันมี make-cadir โปรแกรม easyrsa เทมเพลตการกำหนดค่า OpenSSL และ vars.example สิ่งนี้บอกคุณว่าดิสทริบิวชันนี้จัดส่งอะไร ไม่ได้บอกว่าดิสทริบิวชันอื่นหรือไฟล์ tar จากต้นน้ำจัดวางรุ่นเดียวกันอย่างไร ดังนั้นอ่านเวอร์ชันก่อนตีความพาธ ถ้าเอาต์พุตไม่แสดง make-cadir เลย คุณอาจกำลังดูรุ่นการแพ็กเกจอื่น ไม่ใช่การติดตั้งที่เสีย
easyrsa --version เป็นวิธีที่สั้นที่สุดในการรู้ว่าคุณกำลังอ่านรุ่นใด และควรเรียกใช้ก่อนคำสั่งอื่นใดในคู่มือ
2. แยกรุ่น 2 ออกจากรุ่น 3
รุ่น 2 จัดส่งตัวช่วยเชลล์และไฟล์ vars ที่คุณต้องแก้ไข รุ่น 3 จัดส่งคำสั่ง easyrsa หนึ่งคำสั่งพร้อมคำสั่งย่อย และอ่านการกำหนดค่าจากเทมเพลตพร้อมตัวเลือกที่ชัดเจน
ความแตกต่างนี้อธิบายรายงานหาไฟล์ไม่พบส่วนใหญ่ในหัวข้อนี้ คู่มือที่เขียนสำหรับรุ่น 2 บอกให้คุณทำ source vars และเรียก build-key ส่วนการติดตั้งรุ่น 3 ไม่มีทั้งสองอย่าง การไล่ตามไฟล์ที่หายไปจากสำเนาของเครื่องอื่นคือวิธีที่ผู้คนลงเอยด้วยการรันสองรุ่นบนไดเรกทอรี PKI เดียว
3. แยกไดเรกทอรีโปรแกรมออกจากพื้นที่ทำงาน PKI
ไดเรกทอรีโปรแกรมที่ติดตั้งเป็นแบบอ่านอย่างเดียวตามการออกแบบ PKI ของคุณคือไดเรกทอรีแยกที่เก็บ CA ใบรับรองที่ออกแล้ว และคีย์ส่วนตัว และเป็นที่ที่เก็บสิทธิ์ที่คุณต้องตั้งให้ถูกต้อง
หากมีหน่วยงานอยู่แล้ว, หาใบรับรองสาธารณะของหน่วยงานนั้นและยืนยันสถานะ ก่อนที่คุณจะแตะต้องสิ่งใด อย่าเริ่มต้นตัวแทน และอย่าเขียนทับดัชนีเพียงเพราะบทช่วยสอนใช้พาธอื่น การคัดลอกเทมเพลตสาธารณะไม่เป็นอันตราย แต่การคัดลอกคีย์ส่วนตัวของผู้ออกนั้นเป็นอันตราย และในเชลล์ทั้งสองการดำเนินการดูแทบเหมือนกัน
4. ตรวจสอบการใส่เครื่องหมายคำพูดก่อนไล่ตามพาธ
ข้อความที่คัดลอกจากหน้าที่จัดรูปแบบมักมาพร้อมเครื่องหมายคำพูดแบบตัวพิมพ์ Bash ถือว่าเฉพาะตัวคั่น ASCII ที่มีเอกสารเท่านั้นเป็นเครื่องหมายคำพูด ดังนั้นพาธที่ห่อด้วยเครื่องหมายคำพูดโค้งจะกลายเป็นชื่อไฟล์ตามตัวอักษรที่ไม่มีอยู่
printf '%s\n' "$EASY_RSA"คำสั่งนี้พิมพ์ค่าของตัวแปรเดียวแทนที่จะเป็นทั้งสภาพแวดล้อม ซึ่งเป็นสิ่งที่คุณต้องการเมื่อคำถามคือค่ามีอักขระแปลกปลอมหรือช่องว่างหรือไม่ อย่าสันนิษฐานว่า EASY_RSA ยังเลือกการกำหนดค่าในรุ่น 3 ให้ใช้ตัวเลือกไดเรกทอรี PKI ที่มีเอกสารสำหรับเวอร์ชันของคุณแทน
5. หยุดก่อนที่จะเริ่มต้นอะไรใหม่
เมื่อรุ่นของโปรแกรม พาธที่ติดตั้ง และบทบาทของพื้นที่ทำงานสอดคล้องกัน ข้อผิดพลาดที่เหลืออยู่มักเป็นปัญหาเรื่องสิทธิ์หรือสถานะที่หายไป และสมควรได้รับการวินิจฉัยของตัวเองแทนการหลีกเลี่ยงอีกครั้ง
การติดตั้งแพ็กเกจที่แคชไว้จากรุ่นอื่น การคัดลอกไดเรกทอรีแบบเรียกซ้ำ หรือการสร้างบันทึกผู้ออกที่ว่างเปล่า จะซ่อนความไม่ตรงกันเดิมและเพิ่มอีกอย่างหนึ่ง จดบันทึกเวอร์ชัน พาธ และข้อผิดพลาดที่แน่นอนก่อนที่คุณจะเปลี่ยนอะไร สามสิ่งนี้ทำให้ก้าวต่อไปเป็นการตัดสินใจแทนการเดาอีกครั้ง และป้องกันไม่ให้คนถัดไปทำการค้นหาซ้ำ