วัตถุประสงค์ของ ssl-cert-snakeoil.key คืออะไร


62

ตอนนี้ฉันติดตั้งเซิร์ฟเวอร์ Ubuntu 12.04.3 ซึ่งฉันต้องการเข้าถึงผ่าน ssh ด้วยเหตุนี้ฉันจึงสร้างรหัสส่วนตัวที่ฉันย้ายไป

/etc/ssl/private/

ฉันแค่สงสัยว่าทำไมมีคีย์ส่วนตัวssl-cert-snakeoil.keyอยู่ในนั้นแล้ว รหัสส่วนตัวนี้ใช้อยู่ที่ไหนและฉันจะลบได้อย่างไร


8
ใบรับรองที่ลงนามเองนั้นเรียกว่าใบรับรองงูน้ำมันเนื่องจากใบรับรองเหล่านี้ไม่ได้ลงนามโดย CA สาธารณะ

คำตอบ:


46

ssl-snakeoil.key เป็นคีย์ที่สร้างขึ้นโดยสคริปต์การติดตั้งแพ็กเกจ ssl-cert มันถูกสร้างขึ้นสำหรับผู้ใช้ snakeoil และไม่ควรลบ :

grep '#' /var/lib/dpkg/info/ssl-cert.postinst 
#!/bin/sh -e
# Create the ssl-cert system group for snakeoil ownership:
# Check if the generated snakeoil key/cert has been generated 
# from a vulnerable openssl version and replace it if necessary.
    # check if the cert and key file exist,
    # the issuer and subject are the same (self signed cert)
    # and the private key is vulnerable
# no need to perform any check. If the certificates are there
# it will exit 0.
# allow group ssl-cert to access /etc/ssl/private
# If we're upgrading from an older version, fix the unreadable key:

ตอนนี้แพ็คเกจ ssl-cert คืออะไร:

แพคเกจนี้เปิดใช้งานการติดตั้งแพคเกจแบบอัตโนมัติที่ต้องการสร้างใบรับรอง SSL

มันเป็น wrapper ง่าย ๆ สำหรับยูทิลิตี้การร้องขอใบรับรองของ OpenSSL ที่ฟีดมันด้วยตัวแปรผู้ใช้ที่ถูกต้อง

ดังนั้นจึงเป็นใบรับรองที่ใช้ในการติดตั้งแพคเกจที่จำเป็นต้องสร้างใบรับรอง SSL ดังนั้นระบบจะสร้างใบรับรองขึ้นมาทันทีด้วยการติดตั้งแพ็คเกจนี้

ตามหมายเหตุด้านแพ็คเกจนี้ไม่ได้เป็นเอกสิทธิ์ของ Ubuntu เพราะมันยังปรากฏใน Debian


7
ว้าว! ที่ชาญฉลาด คุณสามารถบอกได้ว่าผู้ใช้ snakeoil นี้คืออะไร?
humanityANDpeace

1
@humanityANDpeace น้ำมันที่ทำจากงู ... ?
Braiam

@humanityANDpeace ไม่มีผู้ใช้ snakeoil
Braiam

4
:) ฉันตระหนักถึงต้นกำเนิดงานและความหมายทั่วไปของ snakeoil ในคำตอบข้างต้นคุณพูดit's created for the snakeoil user and should not be deleted:ซึ่งเป็นสาเหตุที่ฉันคิดว่ามีหนึ่ง
humanityANDpeace

20
หากคนไม่รู้จักสำนวนนั้น "น้ำมันงู" โดยทั่วไปหมายถึงของปลอมและไม่ควรเชื่อถือได้
Collin Anderson

24

เป็นคู่คีย์สาธารณะและส่วนตัวเฉพาะเซิร์ฟเวอร์ที่สร้างขึ้นเมื่อติดตั้งระบบปฏิบัติการที่ใช้ Debian ของเซิร์ฟเวอร์ (เช่น Ubuntu)

มันถูกใช้ในกรณีที่ไม่มีการติดตั้งหรือกำหนดค่าใบรับรอง SSL อื่น ๆ แต่การสื่อสารที่เข้ารหัสถูกเปิดใช้งานและต้องการ

แม้ว่ามันจะเข้ารหัสการรับส่งข้อมูลอย่างปลอดภัย แต่ก็ไม่ปลอดภัยและมีชื่อว่า 'snakeoil' เพราะไม่มีลายเซ็นของผู้มีอำนาจรากหมายความว่ามีความเสี่ยงต่อการโจมตีแบบคนกลางที่ง่ายที่สุด

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


4
คุณมีตัวอย่าง / ลิงค์เกี่ยวกับประเภทของการโจมตีแบบคนกลางคนหรือไม่ใบรับรองดังกล่าวมีแนวโน้มที่จะ?
Alexis Wilke

5
เนื่องจากใบรับรองไม่สามารถตรวจสอบได้ดังนั้นลูกค้าสามารถยอมรับใบรับรองอื่นใดได้เว้นแต่พวกเขาจะได้รับอนุญาตล่วงหน้าใบรับรองนี้โดยเฉพาะหรือมีความขยันเป็นพิเศษในการตรวจสอบลายนิ้วมือ กล่าวโดยย่อคือ CA มีเหตุผลที่ดี (นอกเหนือจากผลกำไร; p)
dyasta
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.