Trình tạo CSR
Để có chứng chỉ TLS, bạn cần nộp Yêu cầu ký chứng chỉ (CSR) cho tổ chức chứng thực: tên miền, khóa công khai và bằng chứng bạn nắm giữ private key tương ứng. Trình tạo này tạo CSR dạng PEM và private key RSA ngay trong trình duyệt, với các trường và kích thước khóa bạn chỉ định. Private key không bao giờ rời khỏi trang, nhưng hãy tải xuống trước khi đóng tab vì không có gì được lưu trên máy chủ.
Cách tạo CSR
-
1
Nhập Common Name (CN)
Tên máy chủ chính mà chứng chỉ sẽ bảo vệ, ví dụ `www.example.com`. Cho phép dùng ký tự đại diện như `*.example.com`.
-
2
Điền các trường tổ chức (tùy chọn)
O (tổ chức), OU, L (thành phố), ST (tỉnh/bang), C (mã quốc gia) và địa chỉ email tùy chọn. Chứng chỉ xác thực tên miền bỏ qua hầu hết các trường này; chứng chỉ OV và EV yêu cầu chúng.
-
3
Chọn kích thước khóa
RSA 2048 (mặc định, tương thích phổ biến) hoặc các kích thước mạnh hơn RSA 3072 và RSA 4096.
-
4
Tải xuống cả hai tệp
Tệp `.csr` được gửi cho CA của bạn; tệp `.key` ở lại trên máy chủ của bạn. Hãy cất khóa an toàn: làm mất nó nghĩa là phải bắt đầu lại từ đầu.
Những gì được tạo ra
Hai tệp PEM:
example.csr (công khai, gửi cho CA):
-----BEGIN CERTIFICATE REQUEST-----
MIIC...
-----END CERTIFICATE REQUEST-----
example.key (riêng tư, ở lại trên máy chủ của bạn):
-----BEGIN PRIVATE KEY-----
MIIE...
-----END PRIVATE KEY-----
CSR được ký bằng private key như bằng chứng quyền sở hữu. Khi CA cấp chứng chỉ, khóa công khai của chứng chỉ sẽ khớp với khóa trong CSR, khóa này khớp với private key trên máy chủ của bạn.
Trình tạo này tạo CSR chỉ gồm Common Name bạn nhập, không có phần mở rộng Subject Alternative Name (SAN). Nếu chứng chỉ của bạn phải bao phủ nhiều tên máy chủ, hãy dùng công cụ của CA: các ứng dụng ACME như Let’s Encrypt sẽ tạo yêu cầu giúp bạn, và hầu hết biểu mẫu web của CA thêm các tên bổ sung khi bạn gửi.
Yêu cầu trường theo loại chứng chỉ
| Trường | Cần cho DV? | Cần cho OV/EV? |
|---|---|---|
| Common Name (CN) | Có | Có |
| Tổ chức (O) | Không | Có, đã xác minh |
| Đơn vị tổ chức | Tùy chọn | Tùy chọn |
| Địa điểm (thành phố) | Tùy chọn | Có, đã xác minh |
| Tỉnh / Bang | Tùy chọn | Có, đã xác minh |
| Quốc gia (2 ký tự) | Nên dùng | Có, đã xác minh |
| Địa chỉ email | Tùy chọn | Tùy chọn |
Let’s Encrypt và hầu hết nhà phát hành DV tự động chỉ xem Common Name. CA doanh nghiệp cấp chứng chỉ OV/EV xác minh thông tin tổ chức với hồ sơ kinh doanh.
Lựa chọn kích thước khóa
| Kích thước khóa | Ưu điểm | Nhược điểm |
|---|---|---|
| RSA 2048 | Tương thích phổ biến, nhanh | Biên an toàn nhỏ hơn |
| RSA 3072 | Mạnh hơn, vẫn phổ biến | Tạo và bắt tay chậm hơn |
| RSA 4096 | Mạnh nhất, vẫn phổ biến | Chậm nhất và lớn nhất |
Với máy chủ web công khai, RSA 2048 là lựa chọn mặc định an toàn. Chọn 3072 hoặc 4096 bit nếu bạn muốn biên an toàn lớn hơn và chấp nhận việc tạo khóa, bắt tay chậm hơn cùng chứng chỉ lớn hơn.
Những chỗ CSR thường sai
- Chứng chỉ không bao phủ tên máy chủ: trình duyệt hiển thị “NET::ERR_CERT_COMMON_NAME_INVALID” khi chứng chỉ không bao phủ đúng tên bạn truy cập. Common Name phải khớp với tên máy chủ đầy đủ, gồm cả
wwwnếu bạn dùng. Vì trình tạo này tạo yêu cầu chỉ có một CN, hãy dùng công cụ của CA khi bạn cần thêm tên. - Giới hạn ký tự đại diện: ký tự đại diện
*.example.comchỉ khớp một cấp tên miền phụ. Nó không khớpapi.v2.example.com. - Tên miền gốc và ký tự đại diện là hai tên khác nhau:
*.example.comkhông bao phủexample.comtrần; bạn cần cả hai như các tên riêng biệt trong chứng chỉ. - Địa chỉ IP: hầu hết CA công khai không còn cấp chứng chỉ cho địa chỉ IP; bạn phải dùng tên máy chủ.
Sau khi tạo
- Cất private key an toàn. Quyền 0600, do người dùng máy chủ web sở hữu.
- Dán CSR vào biểu mẫu web hoặc công cụ CLI của CA (Let’s Encrypt qua ACME thường tự xử lý việc này).
- Nhận chứng chỉ đã ký (và chuỗi trung gian).
- Cài cả chuỗi chứng chỉ và private key lên máy chủ của bạn.
- Xác minh bằng trình kiểm tra SSL.
Câu hỏi thường gặp
Không. Việc tạo khóa diễn ra hoàn toàn trong trình duyệt của bạn. Trang này không lưu khóa trên máy chủ. Hãy tải tệp khóa ngay lập tức; khi đóng tab là nó biến mất.
Với hầu hết trang web công khai, RSA 2048 là lựa chọn phổ biến an toàn và tạo nhanh. Chọn 3072 hoặc 4096 bit nếu bạn muốn biên an toàn lớn hơn và chấp nhận việc tạo khóa cùng bắt tay chậm hơn.
Có. Dùng *.example.com làm Common Name. Nhớ rằng ký tự đại diện chỉ khớp một cấp tên miền phụ và hầu hết nhà phát hành DV yêu cầu xác minh DNS (không phải HTTP) cho chứng chỉ ký tự đại diện.
CSR là một yêu cầu: nó nói “xin hãy ký khóa công khai này cho các tên máy chủ này.” Chứng chỉ là thứ CA trả về sau khi ký. CSR tồn tại ngắn ngủi và không được cài trên máy chủ; chính chứng chỉ mới thực sự phục vụ TLS.
Công cụ liên quan
Bộ mã hóa mật mã Caesar
Mã hóa và giải mã văn bản bằng mật mã Caesar. Hỗ trợ mọi độ dịch 1-25, có ROT13 như một trường hợp đặc biệt, giữ nguyên dấu câu và chữ hoa/thường.
Mã hóa / giải mã AES
Mã hóa và giải mã văn bản rủi ro thấp bằng các cipher AES của OpenSSL. Cụm mật khẩu được băm SHA-256 và đầu ra Base64 gồm IV cộng bản mã.
Bộ mã hóa và giải mã Base58
Mã hóa văn bản UTF-8 hoặc byte thập lục phân và giải mã Base58 an toàn bằng bảng chữ cái Bitcoin, Ripple hoặc Flickr.
Bộ mã hóa tệp Base64
Mã hóa mọi tệp (PDF, ZIP, ảnh, tệp thực thi) thành văn bản Base64 để nhúng vào JSON, email, YAML hoặc data URI. Chạy cục bộ, không tải lên.
Trình tạo bcrypt
Tạo hash bcrypt từ mật khẩu plaintext. Tùy chỉnh cost factor từ 4 đến 13, tương thích với Laravel, Django, Node và PHP.
Bộ mã hóa và giải mã Base32
Mã hóa và giải mã chuỗi Base32 bằng bảng chữ cái RFC 4648. Hữu ích cho TOTP secrets, token không phân biệt hoa thường và mã định danh do người nhập.