☎ Hỗ trợ 24/7: (+84.28).6268.0611 Email
CSR là gì? Cách hoạt động của Certificate Signing Request trong SSL/TLS

CSR là gì? Cách hoạt động của Certificate Signing Request trong SSL/TLS

Cập nhật lần cuối: 10/07/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

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

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.

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

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.

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
  • Email

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

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.

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.

Tin tức nổi bật

SSL Labs là gì?

SSL Labs là công cụ trực tuyến miễn phí giúp kiểm tra và đánh giá cấu hình SSL/TLS của website. Chỉ với tên miền, SSL Labs có thể phân tích chứng chỉ SSL, phiên bản TLS, Cipher Suites, HSTS, OCSP Stapling và nhiều yếu tố bảo mật khác, đồng thời chấm điểm từ A+ đến F để giúp quản trị viên cải thiện mức độ an toàn của hệ thống.

Xem bài viết
OpenSSL là gì?

OpenSSL là bộ thư viện và công cụ mã nguồn mở được sử dụng rộng rãi để triển khai các giao thức SSL/TLS, mã hóa dữ liệu và quản lý chứng chỉ số. Đây là công cụ không thể thiếu đối với quản trị viên hệ thống, DevOps và kỹ sư bảo mật khi làm việc với HTTPS, SSL Certificate và các kết nối bảo mật.

Xem bài viết
Cấu hình TLS 1.3 cho Nginx và Apache

TLS 1.3 là phiên bản mới nhất của giao thức Transport Layer Security (TLS), mang lại khả năng bảo mật cao hơn và tốc độ kết nối nhanh hơn so với TLS 1.2. Bài viết hướng dẫn cách kiểm tra điều kiện, cấu hình TLS 1.3 trên Nginx và Apache, đồng thời chia sẻ các lưu ý quan trọng để triển khai an toàn trên môi trường production.

Xem bài viết
Tại sao nên tắt TLS 1.0 và TLS 1.1?

TLS 1.0 và TLS 1.1 từng là các giao thức bảo mật phổ biến trên Internet. Tuy nhiên, do tồn tại nhiều hạn chế về bảo mật và không còn đáp ứng các tiêu chuẩn hiện đại, hai phiên bản này đã bị hầu hết trình duyệt, tổ chức bảo mật và tiêu chuẩn ngành khuyến nghị vô hiệu hóa. Bài viết này sẽ giúp bạn hiểu vì sao nên tắt TLS 1.0 và TLS 1.1, cũng như cách đánh giá trước khi thực hiện trên hệ thống production.

Xem bài viết
Tại sao website cần SSL?

SSL/TLS là nền tảng bảo mật của HTTPS, giúp mã hóa dữ liệu, xác thực danh tính website và tăng độ tin cậy với người dùng. Ngày nay, SSL không còn là tùy chọn mà gần như đã trở thành tiêu chuẩn bắt buộc đối với mọi website, từ blog cá nhân đến hệ thống doanh nghiệp.

Xem bài viết
(+84.28).6268.0611

Hotline liên hệ

Chat Zalo

Trò chuyện ngay

Live chat

Hỗ trợ trực tuyến