Hướng dẫn cách cài đặt SSL https hiển thị xanh lè từ PositiveSSL cho website, hướng dẫn này dùng cho chạy server Nginx nhé các bạn.PositiveSSL là chứng chỉ số cấp cho website của Comodo PositiveSSL Certificate giá cả khá là rẻ khoảng 6$ mua tại Namecheap nhé các bạn. Mình không để link ở đây các bạn tự vào website Namecheap để mua nhé.
Tại sao phải dùng https chứng chỉ mua của các hãng CA?
Nếu bạn làm SEO thì bạn sẽ hiểu rõ về tầm quan trọng của website được bảo mật chạy https, vừa là 1 điểm cộng trong quá trình SEO vừa để bảo mật website. Khách hàng truy cập thấy link https ở trên website của bạn họ sẽ tin tưởng để thanh toán. Mặt khác khi bạn dùng https miễn phí của Let’s Encrypt thì bạn đã lạc hậu rồi, vì Let’s Encrypt ngừng hỗ trợ trình duyệt web và hệ điều hành cũ từ 2021. Một số máy tính sẽ lỗi chứng chỉ gây ra không truy cập được vào website của bạn.
Bảng giá:

Hướng dẫn cách cài đặt SSL cho website chạy server Nginx
Ở đây mình ví dụ cho cài với tên miền https://9areacodes.com/
Bước 1: Dùng 2 file đã giải nén từ file .zip sẽ có: 9areacodes_com 9areacodes_com.ca-bundle
đã ký mua ở namecheap dùng https://decoder.link/csr_generator để ký
Tạo xong Verify Cname DNS ở domain điền thông tin lấy file CSR đưa vào ký để nhận file nén ZIP PositiveSSL Certificate
Lưu Private Key vào
Bước 2: Copy mã Private Key vào file private.key
Lệnh: nano private.key
Bước 3: Lưu 2 file 9areacodes_com.crt bước 1 vào thư mục Nginx
mkdir -p /etc/nginx/ssl/9areacodes_com/ && cd /etc/nginx/ssl/9areacodes_com/
Thư mục sẽ có 3 file:
private.key
9areacodes_com.crt
9areacodes_com.ca-bundle
( 9areacodes_com.crt và 9areacodes_com.ca-bundle là 2 file nén Zip mà PositiveSSL Certificate gửi vào email đã làm ở bước 1)
Bước 4:
Kiểm tra độ trùng khớp của chứng chỉ và Private Key, trùng mã MD5 là okie
# openssl x509 -noout -modulus -in ssl-bundle.crt | openssl md5
(stdin)= 334d84440715d4dc1c96ddbcf71a0f8e
# openssl rsa -noout -modulus -in private.key | openssl md5
(stdin)= 334d84440715d4dc1c96ddbcf71a0f8e
Tạo file DH parameters 2048 bit, quá trình generate sẽ hơi lâu (tạo một lần duy nhất cho 1 VPS)
openssl dhparam 2048 -out /etc/nginx/ssl/dhparam.pem
Bước 5: khai báo trong Nginx
Vào nano /etc/nginx/conf.d/9areacodes.com.conf
Thêm đoạn này vào hoặc để ý sửa đi cấu hình mặc định:
# SSL
ssl_certificate /etc/nginx/ssl/9areacodes_com/9areacodes_com.crt;
ssl_certificate_key /etc/nginx/ssl/9areacodes_com/private.key;
ssl_protocols TLSv1 TLSv1.1 TLSv1.2;
ssl_prefer_server_ciphers on;
ssl_ciphers ‘ECDHE-ECDSA-CHACHA20-POLY1305:ECDHE-RSA-CHACHA20-POLY1305:ECDHE-ECDSA-AES128-GCM-SHA256:ECDHE-RSA-AES128-GCM-SHA256:ECDHE-ECDSA-AES256-GCM-SHA384:ECDHE-RSA-AES256-GCM-SHA384:DHE-RSA-AES128-GCM-SHA256:DHE-RSA-AES256-GCM-SHA384:ECDHE-ECDSA-AES128-SHA256:ECDHE-RSA-AES128-SHA256:ECDHE-ECDSA-AES128-SHA:ECDHE-RSA-AES256-SHA384:ECDHE-RSA-AES128-SHA:ECDHE-ECDSA-AES256-SHA384:ECDHE-ECDSA-AES256-SHA:ECDHE-RSA-AES256-SHA:DHE-RSA-AES128-SHA256:DHE-RSA-AES128-SHA:DHE-RSA-AES256-SHA256:DHE-RSA-AES256-SHA:ECDHE-ECDSA-DES-CBC3-SHA:ECDHE-RSA-DES-CBC3-SHA:EDH-RSA-DES-CBC3-SHA:AES128-GCM-SHA256:AES256-GCM-SHA384:AES128-SHA256:AES256-SHA256:AES128-SHA:AES256-SHA:DES-CBC3-SHA:!DSS’;
# Improve HTTPS performance with session resumption
ssl_session_cache shared:SSL:50m;
ssl_session_timeout 1d;
# DH parameters
ssl_dhparam /etc/nginx/ssl/dhparam.pem;
Xong bạn chạy: nginx -t test xem ok thì xong rồi đấy
Leave a Reply
You must be logged in to post a comment.