ไฟล์. crt และ. key คืออะไรและจะสร้างได้อย่างไร


59

ฉันมีการกำหนดค่าต่อไปนี้:

SSLEngine on
SSLCertificateFile /etc/httpd/conf/login.domain.com.crt
SSLCertificateKeyFile /etc/httpd/conf/login.domain.com.key
SSLCipherSuite ALL:-ADH:+HIGH:+MEDIUM:-LOW:-SSLv2:-EXP

แต่ฉันไม่รู้วิธีสร้าง.crtและ.keyไฟล์

คำตอบ:


63

ไฟล์crtและคีย์แสดงทั้งสองส่วนของใบรับรองคีย์เป็นไพรเวตคีย์ของใบรับรองและ crt เป็นใบรับรองที่ลงนาม

มันเป็นเพียงหนึ่งในวิธีในการสร้าง certs วิธีหนึ่งก็คือการมีทั้งในไฟล์ pem หรือวิธีอื่นใน p12 container

คุณมีหลายวิธีในการสร้างไฟล์เหล่านั้นหากคุณต้องการลงชื่อใบรับรองด้วยตนเองคุณสามารถออกคำสั่งนี้ได้

openssl genrsa 2048 > host.key
chmod 400 host.key
openssl req -new -x509 -nodes -sha256 -days 365 -key host.key -out host.cert

โปรดทราบว่าด้วยใบรับรองที่ลงชื่อด้วยตนเองเบราว์เซอร์ของคุณจะเตือนคุณว่าใบรับรองไม่ "เชื่อถือ" เพราะยังไม่ได้ลงนามโดยผู้ออกใบรับรองที่อยู่ในรายการความน่าเชื่อถือของเบราว์เซอร์ของคุณ

จากนั้นเป็นต้นไปคุณสามารถสร้างห่วงโซ่ความไว้วางใจของคุณเองโดยสร้าง CA ของคุณหรือซื้อใบรับรองจาก บริษัท เช่น Verisign หรือ Thawte


หลังจากทำงาน "openssl genrsa 1024> host.key" ฉันได้รับมันใน terminal: "e คือ 65537 (0x10001)" มันเป็นข้อผิดพลาดหรือไม่?
Mohammad Ali Akbari

1
ใช่หมายความว่า openssl ไม่สามารถเขียนเมล็ดสุ่มไปยังไฟล์เริ่มต้นที่ใช้ซึ่งกำหนดโดย openssl.cnf โดยค่าเริ่มต้นใน CentOS / RHEL ไฟล์นี้อยู่ใน /etc/pki/tls/openssl.cnf ลองดำเนินการคำสั่งเดียวกับรูทในกรณีนี้และดูว่ามันทำงานอย่างไร
lynxman

ฉันลองใช้เป็น root แต่ฉันได้รับ "e is 65537 (0x10001)" อีกครั้ง
Mohammad Ali Akbari

1
คุณเปิดใช้งาน SELinux บนเครื่องของคุณหรือไม่ ตรวจสอบ / var / log / messages เพื่อดูว่าทำไม openssl ไม่สามารถเขียนไฟล์ได้
lynxman

3
letsencrypt.orgเป็นผู้ให้บริการ ssl ฟรี ดูที่มันแทนที่จะจ่ายเงินเป็นจำนวนมากให้กับ บริษัท เหล่านั้น
Kaan

6

นี่คือส่วนสาธารณะ (.crt) และส่วนบุคคล (.key) ของใบรับรอง SSL ดูคำถามนี้สำหรับข้อมูลที่เกี่ยวข้องมากมายเช่นถ้าคุณต้องการสร้างใบรับรองด้วยตัวเองหรือซื้อ


คำถามพื้นฐาน แต่ - ฉันสมมติว่าฉันควรคัดลอกไฟล์. key ไปยัง~/.sshโฟลเดอร์ของฉันเมื่อฉันอัปโหลดไฟล์ CSR ไปยังผู้ให้บริการ ssl ของฉัน
Qasim

1
@Qasim SSL-files ไม่มีส่วนเกี่ยวข้องกับ SSH (ซึ่งเป็นสิ่งที่. ssh-folder เป็นของ)
mad_vs
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.