CSR là gì? Cách hoạt động của Certificate Signing Request trong SSL/TLS
Cập nhật lần cuối: 26/05/2026
CSR (Certificate Signing Request) là tệp yêu cầu cấp chứng chỉ SSL/TLS được tạo từ server và gửi đến Certificate Authority (CA). Bài viết giải thích CSR là gì, cấu trúc của CSR, cách hoạt động trong hệ thống PKI và vai trò của CSR trong quá trình cấp phát SSL certificate.
CSR là gì?
1. CSR là gì?
CSR (Certificate Signing Request) là tệp yêu cầu cấp chứng chỉ số SSL/TLS được tạo ra từ server trước khi gửi đến Certificate Authority (CA).
CSR chứa:
- Domain name
- Public key
- Thông tin tổ chức
- Chữ ký xác thực từ private key
Xem thêm: Certificate Authority (CA) là gì?
CSR là một thành phần quan trọng trong quy trình cấp SSL của hệ thống PKI.
2. CSR dùng để làm gì?
CSR được sử dụng để:
- Yêu cầu CA cấp SSL certificate
- Liên kết domain với public key
- Xác minh server sở hữu private key tương ứng
Xem thêm: PKI là gì?
CSR hoạt động như thế nào?
1. Server tạo Key Pair
Trước khi tạo CSR, server cần sinh ra:
- Private Key
- Public Key
Private key được lưu bí mật trên server, còn public key sẽ được đưa vào CSR.
Xem thêm: Public Key và Private Key là gì?
2. Tạo CSR từ Private Key
CSR được tạo bằng private key của server.
Ví dụ với OpenSSL:
openssl req -new -key domain.key -out domain.csr
3. Gửi CSR đến CA
Sau khi tạo xong, CSR sẽ được gửi đến CA để xác thực và cấp chứng chỉ SSL.
Cấu trúc của CSR
1. Thông tin Subject
CSR thường chứa:
- Common Name (CN)
- Organization (O)
- Country (C)
- State (ST)
- Locality (L)
2. Public Key
CSR luôn chứa public key của server.
CA sẽ sử dụng public key này để tạo SSL certificate.
3. Digital Signature
CSR được ký bằng private key nhằm chứng minh server thực sự sở hữu key pair tương ứng.
CSR có chứa Private Key không?
1. CSR không chứa Private Key
Một hiểu lầm phổ biến là CSR chứa private key.
Thực tế:
- CSR chỉ chứa public key
- Private key không bao giờ được gửi ra ngoài
2. Tại sao điều này quan trọng?
Nếu private key bị lộ:
- Hacker có thể giả mạo certificate
- HTTPS mất tính bảo mật
- Có thể bị tấn công MITM
Xem thêm: Website không có SSL có bị hack không?
Quy trình cấp SSL sử dụng CSR
1. Tạo CSR trên server
Server sinh CSR và private key.
2. Gửi CSR cho CA
CSR được gửi đến Certificate Authority.
3. CA xác thực
CA kiểm tra:
- Domain ownership
- Thông tin doanh nghiệp (nếu có)
4. CA cấp certificate
CA ký certificate và trả về cho server.
5. Cài đặt SSL certificate
Server cài SSL certificate để kích hoạt HTTPS.
Xem thêm: SSL là gì?
CSR trong thực tế triển khai SSL
1. Apache và Nginx
Apache và Nginx thường sử dụng OpenSSL để tạo CSR.
Ví dụ:
openssl req -new -newkey rsa:2048 -nodes -keyout domain.key -out domain.csr
2. DirectAdmin và cPanel
Các control panel thường có giao diện tạo CSR tự động.
Người dùng chỉ cần nhập:
- Domain
- Company name
- Country
Những lỗi thường gặp với CSR
1. Common Name không đúng
Nếu domain trong CSR không khớp:
- SSL có thể bị invalid
- Browser báo lỗi certificate
Xem thêm: NET::ERR_CERT_COMMON_NAME_INVALID là gì?
2. Mất Private Key
Nếu mất private key:
- Certificate không thể sử dụng
- Phải tạo CSR và certificate mới
3. Dùng sai CSR cho certificate
Certificate chỉ hoạt động với đúng private key đã tạo CSR ban đầu.
Vai trò của CSR trong PKI
1. Liên kết danh tính và Public Key
CSR giúp CA gắn domain với public key của server.
2. Đảm bảo tính xác thực
Digital signature trong CSR chứng minh server sở hữu private key.
3. Tự động hóa quy trình cấp SSL
CSR là nền tảng cho các hệ thống auto SSL hiện đại như ACME và Let’s Encrypt.
Xem thêm: Let’s Encrypt là gì?
Kết luận
CSR là thành phần trung gian quan trọng trong hệ thống PKI, đóng vai trò kết nối giữa server và Certificate Authority trong quá trình cấp SSL/TLS certificate.
Không có CSR, CA sẽ không thể tạo certificate hợp lệ cho website.
Bạn vẫn chưa biết nên chọn…?
Đừng lo lắng, đội ngũ chuyên gia của chúng tôi luôn sẵn sàng lắng nghe nhu cầu và tư vấn giải pháp bảo mật phù hợp nhất cho website và doanh nghiệp của bạn. Hãy liên hệ ngay để được hỗ trợ nhanh chóng, chính xác và hiệu quả.