Khác với Let's Encrypt tự động, việc cài đặt các chứng chỉ SSL trả phí (như Comodo, DigiCert, Sectigo) yêu cầu bạn phải thực hiện các bước ghép nối thủ công giữa CSR, Private Key và CA-Bundle. Bài viết này sẽ hướng dẫn bạn cách triển khai chuẩn Enterprise cho cả Nginx và Apache trên mọi bản phân phối Linux.
1. Chuẩn bị bộ file chứng chỉ
Thông thường, sau khi mua và hoàn tất xác thực (Validation), nhà cung cấp sẽ gửi cho bạn một bộ file nén. Bạn cần chuẩn bị 3 file chính:
| Loại File | Mô Tả | Lưu Ý |
|---|---|---|
| Private Key (.key) | Được tạo cùng lúc với CSR. | Tuyệt mật, không được chia sẻ. |
| Certificate (.crt) | Chứng chỉ chính cho tên miền của bạn. | Do nhà cung cấp ký duyệt. |
| CA-Bundle (.crt) | Chuỗi chứng chỉ trung gian (Intermediate). | Cần thiết để trình duyệt tin cậy. |
2. Cài đặt SSL cho Nginx (All OS Linux)
Nginx yêu cầu chứng chỉ chính và CA-Bundle phải được ghép lại thành một file duy nhất (Full chain).
Bước 1: Ghép file chứng chỉ
# Ghép CRT và CA-Bundle thành một file fullchain
cat your_domain.crt ca-bundle.crt > certificate_fullchain.crt
Bước 2: Cấu hình Virtual Host
server {
listen 443 ssl;
server_name yourdomain.com;
ssl_certificate /etc/nginx/ssl/certificate_fullchain.crt;
ssl_certificate_key /etc/nginx/ssl/your_domain.key;
# Tối ưu bảo mật (Cipher Suites)
ssl_protocols TLSv1.2 TLSv1.3;
ssl_prefer_server_ciphers on;
ssl_ciphers HIGH:!aNULL:!MD5;
}
3. Cài đặt SSL cho Apache (All OS Linux)
Apache hỗ trợ khai báo tách biệt giữa chứng chỉ chính và chuỗi trung gian (đối với các bản cũ) hoặc gộp chung (đối với bản mới).
Cấu hình SSL trong VirtualHost (*.conf):
<VirtualHost *:443>
ServerName yourdomain.com
DocumentRoot /var/www/html
SSLEngine on
SSLCertificateFile /etc/apache2/ssl/your_domain.crt
SSLCertificateKeyFile /etc/apache2/ssl/your_domain.key
SSLCertificateChainFile /etc/apache2/ssl/ca-bundle.crt
# Bảo mật nâng cao
SSLProtocol all -SSLv2 -SSLv3 -TLSv1 -TLSv1.1
SSLCipherSuite HIGH:!aNULL:!MD5
</VirtualHost>
4. Kiểm tra và Kích hoạt
Sau khi lưu cấu hình, bạn bắt buộc phải kiểm tra cú pháp trước khi khởi động lại dịch vụ để tránh làm sập website.
# Kiểm tra Nginx
nginx -t
systemctl restart nginx
# Kiểm tra Apache (Ubuntu/Debian)
apache2ctl configtest
systemctl restart apache2
# Kiểm tra Apache (CentOS/AlmaLinux)
httpd -t
systemctl restart httpd
Pro Tip: Sau khi cài đặt xong, hãy truy cập SSL Labs để kiểm tra điểm bảo mật. Mục tiêu của chúng ta là đạt điểm A+.
Tổng kết
Việc cài đặt SSL mua tuy có nhiều bước hơn SSL miễn phí nhưng nó mang lại sự bảo đảm cao hơn và hỗ trợ bảo hiểm từ nhà cung cấp cho các website thương mại điện tử. Hãy luôn giữ an toàn cho Private Key của bạn!
Leave a Comment