Tệp .crt và .key là gì và cách tạo chúng?


59

Tôi có cấu hình sau:

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

nhưng tôi không biết làm thế nào để tạo .crt.keytập tin.

Câu trả lời:


64

tập tin crt và khóa đại diện cho cả hai phần của chứng chỉ, khóa là khóa riêng của chứng chỉ và crt là chứng chỉ đã ký.

Đó chỉ là một trong những cách để tạo certs, một cách khác là có cả hai trong tệp pem hoặc một cách khác trong thùng chứa p12.

Bạn có một số cách để tạo các tệp đó, nếu bạn muốn tự ký chứng chỉ, bạn có thể chỉ cần ban hành lệnh này

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

Lưu ý rằng với chứng chỉ tự ký, trình duyệt của bạn sẽ cảnh báo bạn rằng chứng chỉ đó không "đáng tin cậy" vì nó chưa được ký bởi cơ quan chứng nhận có trong danh sách tin cậy của trình duyệt của bạn.

Từ đó trở đi, bạn có thể tạo chuỗi tin cậy của riêng mình bằng cách tạo CA hoặc mua chứng chỉ từ một công ty như Verisign hoặc Thawte.


sau khi chạy "openssl genrsa 1024> host.key" Tôi đã nhận được điều này trong thiết bị đầu cuối: "e là 65537 (0x10001)" có phải là lỗi không?
Mohammad Ali Akbari

1
Có, điều này có nghĩa là openssl không thể ghi hạt giống ngẫu nhiên vào tệp mặc định mà nó sử dụng được xác định bởi openssl.cnf, theo mặc định trong CentOS / RHEL, tệp này nằm trong /etc/pki/tls/openssl.cnf. Hãy thử thực hiện các lệnh tương tự như root trong trường hợp này và xem nó diễn ra như thế nào.
lynxman

Tôi thử nó với quyền root, nhưng tôi lại nhận được "e là 65537 (0x10001)"
Mohammad Ali Akbari

1
Bạn đã kích hoạt SELinux trên máy chưa? Kiểm tra / var / log / message để xem tại sao openssl không thể ghi tệp
lynxman

3
allowencrypt.org là một nhà cung cấp ssl miễn phí. Hãy nhìn vào nó thay vì trả nhiều tiền cho các công ty đó.
Kaan

6

Đây là các phần công khai (.crt) và riêng tư (.key) của chứng chỉ SSL. Xem câu hỏi này để biết rất nhiều thông tin liên quan, ví dụ nếu bạn muốn tự tạo chứng chỉ hoặc mua chứng chỉ.


Câu hỏi cơ bản nhưng - Tôi giả sử tôi phải sao chép tệp .key vào ~/.sshthư mục của mình , khi tôi tải tệp CSR của mình lên nhà cung cấp ssl của mình?
Qasim

1
@Qasim Các tệp SSL không liên quan gì đến SSH (đó là thư mục .ssh thuộc về).
mad_vs
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.