Việc triển khai HTTPS cho website là bắt buộc trong năm 2025. Điều này không chỉ vì yếu tố bảo mật mà còn vì yêu cầu từ các trình duyệt và công cụ tìm kiếm. Tuy nhiên, phần lớn tài liệu hiện tại chỉ dừng ở mức “cài SSL là xong”. Bài viết này của GDATA sẽ hướng dẫn từng bước cấu hình HTTPS chuẩn, nâng cấp bảo mật. Mời bạn đọc cùng tìm hiểu ngay thôi nào!
HTTPS là gì?
HTTPS (HTTP Secure) là giao thức HTTP chạy trên nền tảng SSL/TLS để mã hóa dữ liệu trao đổi giữa trình duyệt và máy chủ. HTTPS (Hypertext Transfer Protocol Secure) là phiên bản bảo mật của giao thức HTTP.
Bằng cách sử dụng chứng chỉ SSL/TLS để mã hóa thông tin, HTTPS đảm bảo tính riêng tư và an toàn cho dữ liệu nhạy cảm của người dùng. Ví dụ như thông tin đăng nhập hoặc giao dịch ngân hàng; những thông tin này sẽ được trình duyệt web hiển thị bằng biểu tượng ổ khóa an toàn trên thanh địa chỉ.
- Bảo vệ khỏi MITM (Man-in-the-middle)
- Xác thực danh tính máy chủ
- Mã hóa toàn bộ nội dung truyền tải
- Tăng uy tín, tốt cho SEO

HTTPS hoạt động như thế nào?
Vậy HTTPS hoạt động như thế nào? Nội dng chi tiết như ở dưới đây:
1. Bắt tay SSL/TLS
2. Mã hóa dữ liệu
3. Xác thực máy chủ
Hướng dẫn cấu hình HTTPS chi tiết
1. Cài đặt hoặc tạo chứng chỉ SSL
✅ Mục đích:
Chứng chỉ SSL giúp mã hóa kết nối giữa trình duyệt và máy chủ. Đây là bước bắt buộc để kích hoạt HTTPS. Bước này giúp:
- Bảo mật dữ liệu người dùng
- Xác thực danh tính website
- Tránh cảnh báo “Không bảo mật” trên trình duyệt khi người dùng truy cập (Ví dụ như ảnh phía dưới)
✔ Ưu điểm:
- Tăng độ tin cậy
- Hỗ trợ SEO tốt hơn
- Miễn phí nếu dùng Let’s Encrypt
✖ Nhược điểm:
- Cần gia hạn định kỳ
- Một số chứng chỉ có phí (OV/EV)
Cách làm:
Có 3 loại SSL:
- DV (Domain Validation) – dành cho blog/cá nhân
- OV (Organization Validation) – doanh nghiệp
- EV (Extended Validation) – tổ chức lớn, mức tin cậy cao
Hoặc dùng Let’s Encrypt (miễn phí):
bash
2. Cấu hình SSL trong Nginx
Cấu hình SSL trong Nginx giúp kích hoạt HTTPS hoạt động đúng cách. Nhằm giúp tùy chỉnh giao thức, thuật toán mã hóa và hiệu suất kết nối.
✅ Mục đích:
Khai báo cho Nginx biết sử dụng chứng chỉ nào và cấu hình các thông số liên quan đến TLS.
✔ Ưu điểm:
- Kiểm soát độ bảo mật
- Tối ưu tốc độ khi kết nối qua HTTPS
✖ Nhược điểm:
- Cấu hình sai có thể khiến website không truy cập được
- Yêu cầu kiến thức về TLS/cipher
Cách làm:
nginx
server {
listen 443 ssl http2;
server_name yourdomain.com www.yourdomain.com;
ssl_certificate /etc/letsencrypt/live/yourdomain.com/fullchain.pem;
ssl_certificate_key /etc/letsencrypt/live/yourdomain.com/privkey.pem;
ssl_protocols TLSv1.2 TLSv1.3;
ssl_ciphers HIGH:!aNULL:!MD5;
ssl_prefer_server_ciphers on;
ssl_session_cache shared:SSL:10m;
ssl_session_timeout 1h;
ssl_session_tickets off;
# HSTS
add_header Strict-Transport-Security “max-age=63072000; includeSubDomains; preload” always;
location / {
proxy_pass http://localhost:3000;
}
}
Hãy liên hệ với GDATA để hỗ trợ nếu bạn gặp vấn đề khi cấu hình HTTPS cho website!
3. Chuyển hướng HTTP → HTTPS (301 redirect)
Tự động đưa tất cả truy cập không bảo mật (HTTP) sang HTTPS. Việc này giúp:
- Ngăn tấn công downgrade (SSL stripping)
- Thống nhất URL, tránh trùng lặp nội dung
✔ Ưu điểm:
- Cải thiện SEO
- Người dùng luôn dùng kết nối an toàn
✖ Nhược điểm:
- Dễ gây lỗi vòng lặp nếu cấu hình sai
- Cần kiểm tra redirect trên cả www và non-www
Cách làm:
server {
listen 80;
server_name yourdomain.com www.yourdomain.com;
return 301 https://$host$request_uri;
}
4. Cấu hình giao thức TLS và bộ mã hóa (Cipher)
✅ Mục đích:
Chọn giao thức TLS an toàn (ví dụ TLS 1.3) và loại bỏ các thuật toán yếu. Nó giúp bảo vệ khỏi các lỗ hổng cũ (ví dụ POODLE, BEAST). TLS 1.3 nhanh và an toàn hơn các phiên bản cũ.
✔ Ưu điểm:
- Bảo mật hiện đại
- Giảm thời gian bắt tay (handshake)
✖ Nhược điểm: Không tương thích với trình duyệt/thiết bị quá cũ
Cách làm:
a. Sử dụng TLS 1.3 nếu có thể
TLS 1.3 nhanh hơn, an toàn hơn:ssl_protocols TLSv1.3 TLSv1.2;
b. Cấu hình Ciphers (mã hóa)
Tránh các thuật toán lỗi thời:ssl_ciphers 'ECDHE-ECDSA-AES256-GCM-SHA384:ECDHE-RSA-AES256-GCM-SHA384';
c. Chống Downgrade Attack
Thêm dòng sau vào cấu hình:ssl_prefer_server_ciphers on;
5. Bật HSTS (HTTP Strict Transport Security)
✅ Mục đích:
Yêu cầu trình duyệt luôn dùng HTTPS trong tương lai, không bao giờ quay về HTTP. Có tác dụng ngăn tấn công Man-in-the-Middle khi truy cập lần đầu. Ngoài ra còn tăng độ tin cậy trong trình duyệt.
✔ Ưu điểm:
- Chống downgrade attack hiệu quả
- Cần thiết để đạt điểm A+ trên các công cụ kiểm tra bảo mật
✖ Nhược điểm:
- Khó gỡ bỏ nếu cấu hình sai
- Có thể chặn luôn site nếu chứng chỉ hết hạn
6. Thêm HTTP Headers bảo mật
✅ Mục đích:
Giảm nguy cơ bị tấn công từ phía trình duyệt: XSS, clickjacking,… Giúp bạn chặn các hành vi bất thường.
✔ Ưu điểm:
- Tăng cường bảo mật phía frontend
- Dễ triển khai
✖ Nhược điểm: Có thể làm lỗi một số tính năng nếu không hiểu rõ (ví dụ: iframe bị chặn)
Cách làm:
add_header Strict-Transport-Security “max-age=63072000; includeSubDomains; preload” always;
add_header X-Content-Type-Options nosniff;
add_header X-Frame-Options DENY;
add_header X-XSS-Protection “1; mode=block“;
add_header Referrer-Policy “strict-origin-when-cross-origin“;
add_header Permissions-Policy “geolocation=(), microphone=(), camera=()“;
7. Bật OCSP Stapling
✅ Mục đích:
Giúp trình duyệt xác minh chứng chỉ nhanh hơn mà không phải kết nối tới CA. Giúp giảm độ trễ khi người dùng truy cập. Đồng thời còn tăng tính riêng tư (trình duyệt không gửi yêu cầu OCSP ra ngoài).
✔ Ưu điểm:
- Cải thiện tốc độ tải trang
- Giảm tải cho trình duyệt
✖ Nhược điểm:
- Cần máy chủ cấu hình đúng DNS resolver
- Không phải CA nào cũng hỗ trợ tốt
8. Thêm DNS CAA Record
✅ Mục đích:
Chỉ định CA nào được phép cấp chứng chỉ cho domain của bạn. Ngăn chặn các CA giả mạo cấp chứng chỉ trái phép.
✔ Ưu điểm:
- Giảm nguy cơ bị tấn công qua chứng chỉ giả
- Kiểm soát nghiêm ngặt hơn việc phát hành SSL
✖ Nhược điểm:
- Nếu ghi sai record → không xin được chứng chỉ mới
- Cần quyền cấu hình DNS
9. Dùng khóa ECDSA thay cho RSA
✅ Mục đích:
Sử dụng thuật toán mã hóa hiện đại hơn (Elliptic Curve) thay vì RSA truyền thống. ECDSA an toàn hơn, hiệu suất cao hơn với kích thước khóa nhỏ hơn.
✔ Ưu điểm:
- Nhanh hơn khi bắt tay TLS
- Giảm tải cho CPU
✖ Nhược điểm:
- Một số thiết bị cũ không hỗ trợ ECDSA
- Không phải CA nào cũng cho tùy chọn ECDSA
10. Kiểm tra cấu hình SSL
✅ Mục đích:
Đánh giá và kiểm tra độ an toàn của cấu hình SSL/TLS hiện tại. Phát hiện điểm yếu trong cấu hình (giao thức cũ, cipher yếu…). Ngoài ra còn giúp đo mức độ tương thích trình duyệt.
Công cụ có thể sử dụng:
- SSL Labs
testssl.sh(CLI)
✔ Ưu điểm:
- Cải thiện liên tục bảo mật
- Có thể đạt chứng nhận A+ nếu cấu hình chuẩn
✖ Nhược điểm:
- Có thể khó hiểu với người mới
- Một số cảnh báo có thể “quá kỹ tính”
11. Bật HTTP/2 hoặc HTTP/3 – Tối ưu hiệu suất HTTPS
✅ Mục đích:
Nâng cấp giao thức HTTP để tăng tốc độ tải trang qua HTTPS: listen 443 ssl http2;
Trong đó:
- HTTP/2 hỗ trợ multiplexing, giảm số kết nối TCP
- HTTP/3 sử dụng UDP, tối ưu cho kết nối kém
✔ Ưu điểm:
- Tăng tốc độ truy cập đáng kể
- Trải nghiệm người dùng tốt hơn
✖ Nhược điểm:
- HTTP/3 cần phần mềm máy chủ hỗ trợ đặc biệt (như
quiche) - Thiết bị/lập trình viên phải kiểm tra kỹ tương thích
Bảng tổng hợp – Cấu hình HTTPS
| Tính năng | Lý do cần thiết | Ưu điểm | Nhược điểm |
|---|---|---|---|
| Cài SSL | Mã hóa, xác thực | Bảo mật, tin cậy | Gia hạn, cấu hình |
| Redirect HTTP → HTTPS | Tránh HTTP không an toàn | SEO, bảo mật | Dễ sai logic |
| TLS 1.3 + Cipher mạnh | Chống mã hóa yếu | An toàn, nhanh hơn | Có thể không tương thích |
| HSTS | Ngăn downgrade attack | Bảo mật cao, chuẩn SEO | Khó rollback nếu lỗi |
| HTTP Headers bảo mật | Chống XSS, clickjacking | Cứng hóa trình duyệt | Cần kiểm tra kỹ |
| OCSP Stapling | Tăng tốc xác minh SSL | Nhanh hơn | Cấu hình sai sẽ lỗi |
| DNS CAA | Ngăn cấp chứng chỉ trái phép | Kiểm soát CA | Cần quyền DNS |
| ECDSA Key | Hiện đại hơn RSA | Nhỏ, nhanh, bảo mật cao | Kén thiết bị cũ |
| HTTP/2, HTTP/3 | Tối ưu hiệu suất HTTPS | Truy cập nhanh hơn | Yêu cầu phần mềm mới |
Tổng kết
Bài viết trên của GDATA đã giúp bạn hiểu rõ về tại sao cần cấu hình HTTPS. Bên cạnh đó là hướng dẫn cấu hình HTTPS chi tiết và bảo mật cho website. Hi vọng bài viết đã mang đến cho bạn thông tin hữu ích!
Và nếu bạn có nhu cầu thuê Cloud VPS/ Cloud Server thì hãy nhanh tay liên hệ GDATA để nhận ưu đãi mới nhất nhé!
Thông tin liên hệ:
Hotline: 0904 299 668
Tổng đài: 1800 4814 – Phím 2
Email: lienhe@gdata.com.vn
Website: gdata.com.vn
Facebook:https://www.facebook.com/gdata.com.vn
CÔNG TY CP DỮ LIỆU TOÀN CẦU
Địa chỉ: Tầng 03 Tòa Lạc Hồng/ 27 Lê Văn Lương, Thanh Xuân, Hà Nội
GDATA – Thuê VPS toàn diện cho doanh nghiệp!

