Sunday, February 23, 2025

Quản lý Certificate Management trên pfSense

-

1. Tổng quan.

Trong pfSense, Certificate Management (Quản lý Chứng chỉ) giúp bạn quản lý các chứng chỉ số (SSL/TLS) để bảo mật các dịch vụ như VPN, web interface của pfSense và xác thực người dùng. Nó hỗ trợ việc tạo, nhập và quản lý Certificate Authorities (CA), chứng chỉ serverchứng chỉ người dùng.

Trong các phiên bản mới của pfSense, phần “Certificate Management” đã được thay thế bằng “Certificates” và bạn có thể quản lý chứng chỉ từ System > Certificates và được hiển thị trên tab Certificates.

2. Quy trình quản lý Certificate Management trên pfSense

Đây là phần quản lý chứng chỉ số trên pfSense, cho phép bạn tạo, nhập và ký chứng chỉ phục vụ cho các dịch vụ như HTTPS, OpenVPN, HAProxy, v.v.

Khi tạo hoặc quản lý chứng chỉ, bạn có các tùy chọn sau:

🔹 Create an internal Certificate

  • Dùng để tạo một chứng chỉ nội bộ từ một Certificate Authority (CA) đã có trong hệ thống.
  • Bạn có thể tạo chứng chỉ cho các dịch vụ như OpenVPN, HAProxy (SSL/TLS), WebGUI của pfSense, hoặc thiết bị/server trong mạng nội bộ.
  • Chứng chỉ này có thể được cấp bởi:
    • Root CA (CA gốc)
    • Intermediate CA (CA trung gian)

🔹 Ví dụ:
Bạn có Root CA (hoanghd.com), bạn có thể tạo một Internal Certificate cho wiki.hoanghd.com để sử dụng SSL trên HAProxy.

🔹 Import an existing Certificate

  • Nếu bạn đã có một chứng chỉ từ một nhà cung cấp bên thứ ba (Let’s Encrypt, DigiCert, GlobalSign, v.v.), bạn có thể nhập vào pfSense.
  • Yêu cầu:
    • File chứng chỉ (.crt hoặc .pem)
    • File private key (.key)
    • Certificate Chain (nếu có, để xác thực CA gốc)

🔹 Ví dụ:
Bạn đã lấy chứng chỉ Wildcard SSL từ Let’s Encrypt (hoanghd.com), bạn có thể import nó vào pfSense để sử dụng cho HAProxy.

🔹 Create a Certificate Signing Request (CSR)

  • Khi bạn cần lấy chứng chỉ từ một CA bên ngoài (như Let’s Encrypt, DigiCert, v.v.), bạn sẽ tạo một Certificate Signing Request (CSR).
  • CSR chứa thông tin về chủ sở hữu chứng chỉ, public key và sẽ được CA ký thành chứng chỉ hợp lệ.

🔹 Ví dụ:
Bạn muốn lấy chứng chỉ Wildcard SSL từ Let’s Encrypt, bạn cần tạo CSR cho *.hoanghd.com, sau đó gửi CSR này đến Let’s Encrypt để lấy chứng chỉ.

🔹 Sign a Certificate Signing Request (CSR)

  • Nếu bạn có một CSR từ một server hoặc thiết bị khác và muốn sử dụng Internal CA của pfSense để ký nó thành một chứng chỉ hợp lệ.
  • Chỉ hoạt động nếu bạn đã có một Internal CA hoặc Intermediate CA trong pfSense.

🔹 Ví dụ:
Server monitoring.hoanghd.com gửi một CSR lên pfSense, bạn có thể dùng Internal CA (hoanghd.com) để ký và tạo chứng chỉ hợp lệ cho nó.

Khi nào dùng từng tùy chọn?

Tình huốngChọn tùy chọn nào?
Cần tạo chứng chỉ nội bộ cho VPN, HAProxy, v.v.Create an internal Certificate
Đã có chứng chỉ từ bên thứ ba (Let’s Encrypt, v.v.)Import an existing Certificate
Cần lấy chứng chỉ từ CA bên ngoàiCreate a Certificate Signing Request (CSR)
Cần cấp chứng chỉ cho server nội bộ bằng Internal CASign a Certificate Signing Request

3. Ví dụ cho Quy trình quản lý Certificate Management trên pfSense

3.1. Create an internal Certificate

Ví dụ về Create an internal Certificate bạn có thể xem lại bài https://wiki.hoanghd.com/quan-ly-certificate-authorities/

3.2. Create a Certificate Signing Request

CSR là một yêu cầu cấp chứng chỉ gửi đến một Certificate Authority (CA) bên ngoài (như Let’s Encrypt, Digicert, Sectigo…) để cấp SSL hợp lệ.

📌 Khi nào cần dùng?

  • Khi bạn muốn sử dụng chứng chỉ SSL được công nhận trên toàn cầu thay vì tự cấp bằng Internal CA.
  • Khi bạn muốn lấy chứng chỉ từ nhà cung cấp bên ngoài như Let’s Encrypt, Digicert, GlobalSign, v.v.

CSR là một yêu cầu cấp chứng chỉ gửi đến một Certificate Authority (CA) bên ngoài (như Let’s Encrypt, Digicert, Sectigo…) để cấp SSL hợp lệ.

📌 Ví dụ thực tế: Lấy chứng chỉ từ Let’s Encrypt

📝 Mục tiêu:

  • Lấy chứng chỉ SSL hợp lệ từ Let’s Encrypt cho wiki.hoanghd.com.

📌 Các bước thực hiện:

🔹 Bước 1: Tạo CSR trên pfSense

  • Đi đến: System / Certificates / Certificates
  • Nhấn: Add
  • Chọn: Create a Certificate Signing Request
  • Điền thông tin:
    • Descriptive name: CSR - wiki.hoanghd.com
    • Common Name: wiki.hoanghd.com
    • Alternative Names:
      • DNS: wiki.hoanghd.com
    • Key length: 2048
    • Digest Algorithm: SHA256
  • Nhấn Save

📌 Sau khi tạo, bạn sẽ có:

  • CSR File (Dùng để gửi đến CA)
  • Private Key (Dùng để ghép với chứng chỉ sau này)

🔹 Bước 2: Gửi CSR đến Let’s Encrypt

📌 Có 2 cách để gửi CSR đến Let’s Encrypt:

Cách 1: Dùng ACME (tự động cấp chứng chỉ)

Nếu pfSense có ACME Package, bạn có thể tự động cấp chứng chỉ như sau:

  • Cài đặt ACME Package:
    • System / Package Manager / Available Packages
    • Cài đặt acme
  • Đi đến: Services / ACME Certificates
  • Thêm chứng chỉ mới:
    • Common Name: wiki.hoanghd.com
    • Method: Let's Encrypt Staging/Production
    • Challenge Type: DNS-01 hoặc HTTP-01
  • Nhấn Save & Issue Certificate

🔹 Ưu điểm: Tự động gia hạn, không cần thao tác thủ công.
🔹 Nhược điểm: Cần cấu hình đúng DNS/API nếu dùng DNS-01.

4. Kết luận

  • Nếu bạn tự quản lý CA: Tạo Internal CA, rồi tạo chứng chỉ nội bộ.
  • Nếu bạn dùng chứng chỉ từ bên ngoài: Tạo CSR để gửi đi hoặc Import nếu đã có chứng chỉ.
  • Nếu bạn có Intermediate CA: Ký CSR để cấp phát chứng chỉ.

Quản lý chứng chỉ là một phần quan trọng trong bảo mật hệ thống. Hiểu rõ các bước tạo, nhập, ký và xuất chứng chỉ sẽ giúp đảm bảo an toàn cho các dịch vụ và dữ liệu. Bằng cách sử dụng GUI của hệ thống, quy trình này trở nên đơn giản và hiệu quả hơn.

LEAVE A REPLY

Please enter your comment!
Please enter your name here

4,956FansLike
256FollowersFollow
223SubscribersSubscribe
spot_img

Related Stories