Score:1

ข้อผิดพลาด: ไม่มีค่าเริ่มต้นของไซต์! เมื่อฉันใช้คำสั่งเริ่มต้น a2dissite หลังจากสร้างใบรับรอง SSL

ธง mx

ฉันไม่ใช่ผู้ดูแลระบบหรือผู้ดูแลระบบเครือข่าย (ฉันมีพื้นหลังเป็นนักพัฒนาซอฟต์แวร์) ฉันพบปัญหาบางอย่างในการพยายามทำตามบทช่วยสอนนี้เพื่อนำไปใช้ การรับรองความถูกต้องไคลเอนต์ SLL ในเวอร์ชัน Ubuntu 20.04: https://www.makethenmakeinstall.com/2014/05/ssl-client-authentication-step-by-step/

ฉันรู้ว่าบทช่วยสอนนี้ค่อนข้างเก่า แต่ดูเหมือนว่าจะใช้งานได้ดี ยกเว้นจุดเดียว

โดยพื้นฐานแล้วฉันทำตามขั้นตอนทั้งหมดที่ระบุไว้ในบทช่วยสอนก่อนหน้านี้ ฉันสรุปไว้ที่นี่เพื่อให้คุณสามารถให้ข้อเสนอแนะกับฉันได้หากฉันเข้าใจสิ่งที่ฉันทำ:

สร้างใบรับรองผู้ออกใบรับรอง (CA): เป็นสิ่งแรกที่ฉันสร้างใบรับรอง CA ถ้าฉันเข้าใจดี ก็เหมือนกับการสร้างผู้ออกใบรับรองส่วนตัวของฉันเอง (เช่น cacert.org) สิ่งเดียวคือในกรณีนี้ไม่มีสถาบันที่ตรวจสอบใบรับรองที่ออกโดย CA นี้ ความเข้าใจนี้ถูกต้องหรือไม่?

openssl req -newkey rsa:4096 -keyform PEM -keyout ca.key -x509 -วัน 3650 -outform PEM -out ca.cer

โดยทั่วไปคำสั่งนี้จะถามฉันว่า วลีรหัสผ่าน PEM ที่ฉันจะใช้ในการโต้ตอบกับ CA ของฉันเองและรายละเอียดบางอย่าง ฉันใส่พารามิเตอร์เหล่านี้:

คุณกำลังจะถูกขอให้ป้อนข้อมูลที่จะรวมเข้าด้วยกัน
ในคำขอใบรับรองของคุณ
สิ่งที่คุณกำลังจะป้อนคือสิ่งที่เรียกว่า Distiminated Name หรือ DN
มีฟิลด์ค่อนข้างน้อย แต่คุณสามารถเว้นว่างไว้ได้
สำหรับบางฟิลด์จะมีค่าเริ่มต้น
หากคุณป้อน '.' ช่องนี้จะเว้นว่างไว้
-----
ชื่อประเทศ (รหัสตัวอักษร 2 ตัว) [AU]:IT
ชื่อรัฐหรือจังหวัด (ชื่อเต็ม) [บางรัฐ]:.
ชื่อท้องที่ (เช่น เมือง) []:.
ชื่อองค์กร (เช่น บริษัท) [Internet Widgits Pty Ltd]:Notariato
ชื่อหน่วยขององค์กร (เช่น ส่วน) []:.
ชื่อสามัญ (เช่น เซิร์ฟเวอร์ FQDN หรือชื่อของคุณ) []:.*
ที่อยู่อีเมล []:[email protected]

บันทึก: ในคำตอบก่อนหน้านี้ ฉันใส่ไวด์การ์ด (*) สำหรับชื่อสามัญเพื่อ "เพิกเฉย" ที่จะใช้ใบรับรอง มันสามารถทำงานได้?

ดังนั้นคำสั่งนี้จึงสร้างไฟล์ แคลิฟอร์เนีย ไฟล์ที่ฉันจะใช้เพื่อสร้างเซิร์ฟเวอร์และใบรับรองไคลเอ็นต์ของฉัน

ฉัน สร้างคีย์และใบรับรอง SSL ของเซิร์ฟเวอร์ Apache ของฉัน: นี่ยังไม่ใช่ใบรับรองไคลเอนต์ (ใบรับรองที่ไคลเอนต์ใช้เพื่อพูดกับเซิร์ฟเวอร์: "ฉันเป็นไคลเอนต์ที่ผ่านการรับรอง !!!") นี่คือใบรับรองเซิร์ฟเวอร์ที่บอกกับไคลเอนต์: "ฉันเป็นเซิร์ฟเวอร์ที่ถูกต้อง ไม่ใช่คนตรงกลาง". ถูกต้องหรือไม่?

หากต้องการสร้างใบรับรอง serer นี้ ก่อนอื่นฉันสร้างเซิร์ฟเวอร์ รหัสส่วนตัว:

openssl genrsa -out server.key 4096

จากนั้นฉันใช้รหัสส่วนตัวของเซิร์ฟเวอร์นี้เพื่อสร้างคำขอสร้างใบรับรอง

opensl req -new -key server.key -out server.req -sha256

นอกจากนี้ที่นี่ยังถามฉันด้วยพารามิเตอร์บางอย่าง:

คุณกำลังจะถูกขอให้ป้อนข้อมูลที่จะรวมเข้าด้วยกัน
ในคำขอใบรับรองของคุณ
สิ่งที่คุณกำลังจะป้อนคือสิ่งที่เรียกว่า Distiminated Name หรือ DN
มีฟิลด์ค่อนข้างน้อย แต่คุณสามารถเว้นว่างไว้ได้
สำหรับบางฟิลด์จะมีค่าเริ่มต้น
หากคุณป้อน '.' ช่องนี้จะเว้นว่างไว้
-----
ชื่อประเทศ (รหัสตัวอักษร 2 ตัว) [AU]:IT
ชื่อรัฐหรือจังหวัด (ชื่อเต็ม) [บางรัฐ]:.
ชื่อท้องที่ (เช่น เมือง) []:.
ชื่อองค์กร (เช่น บริษัท) [Internet Widgits Pty Ltd]:Notariato
ชื่อหน่วยขององค์กร (เช่น ส่วน) []:.
ชื่อสามัญ (เช่น เซิร์ฟเวอร์ FQDN หรือชื่อของคุณ) []:*
ที่อยู่อีเมล []:[email protected]

บันทึก: ที่นี่ฉันใส่ไวด์การ์ด (*) สำหรับชื่อสามัญเพื่อ "เพิกเฉย" ที่จะใช้ใบรับรอง มันสามารถทำงานได้?

จากนั้นฉันใช้คำขอสร้างใบรับรองและใบรับรอง CA เพื่อสร้างใบรับรองเซิร์ฟเวอร์:

opensl x509 -req -in server.req -CA ca.cer -CAkey ca.key -set_serial 100 -extensions เซิร์ฟเวอร์ -days 1460 -outform PEM -out server.cer -sha256 

จากนั้นฉันพยายามติดตั้งใบรับรองใน Apache ของฉันโดย:

  1. คัดลอกใบรับรอง CA ไปยังสถานที่ถาวร เราจะต้องระบุใบรับรอง CA ของเราใน Apache เนื่องจากเป็น CA ที่สร้างขึ้นเอง ไม่ใช่ใบรับรองที่มีอยู่ในระบบปฏิบัติการทุกที่:

    cp ca.cer /etc/ssl/certs/

  2. คัดลอกใบรับรองเซิร์ฟเวอร์และรหัสส่วนตัวไปยังตำแหน่งถาวร:

    cp server.cer /etc/ssl/certs/server.crt cp server.key /etc/ssl/private/server.key

  3. เปิดใช้งานโมดูล SSL ใน Apache:

    a2enmod ssl

  4. เปิดใช้งานไซต์ SSL ใน Apache และปิดใช้งานไซต์ HTTP:

    a2ensite เริ่มต้น-ssl a2dissite เริ่มต้น

และตอนนี้ฉันพบปัญหากับคำสั่งสุดท้าย ตามผลลัพธ์ของสองคำสั่งสุดท้าย:

andrea@ubuntu:~/cert$a2ensite default-ssl.dll
ไซต์เริ่มต้น - ssl เปิดใช้งานแล้ว
andrea@ubuntu:~/cert$ a2dissite เริ่มต้น
ข้อผิดพลาด: ไม่มีค่าเริ่มต้นของไซต์!

อย่างที่คุณเห็นเมื่อฉันแสดง a2dissite เริ่มต้น ฉันได้รับสิ่งนี้ ข้อผิดพลาด: ไม่มีค่าเริ่มต้นของไซต์! ข้อความผิดพลาด.

ทำไม มันหมายความว่าอะไร? เกิดอะไรขึ้น? ฉันจะพยายามแก้ไขข้อผิดพลาดนี้ได้อย่างไร

A. Darwin avatar
my flag
เนื้อหาของ /etc/apache2/sites-enabled/default-ssl.conf คืออะไร

โพสต์คำตอบ

คนส่วนใหญ่ไม่เข้าใจว่าการถามคำถามมากมายจะปลดล็อกการเรียนรู้และปรับปรุงความสัมพันธ์ระหว่างบุคคล ตัวอย่างเช่น ในการศึกษาของ Alison แม้ว่าผู้คนจะจำได้อย่างแม่นยำว่ามีคำถามกี่ข้อที่ถูกถามในการสนทนา แต่พวกเขาไม่เข้าใจความเชื่อมโยงระหว่างคำถามและความชอบ จากการศึกษาทั้ง 4 เรื่องที่ผู้เข้าร่วมมีส่วนร่วมในการสนทนาด้วยตนเองหรืออ่านบันทึกการสนทนาของผู้อื่น ผู้คนมักไม่ตระหนักว่าการถามคำถามจะมีอิทธิพลหรือมีอิทธิพลต่อระดับมิตรภาพระหว่างผู้สนทนา