Hosting
Tên miền
Cloud
Máy chủ
EmailSSLFirewall Anti DDoSTối ưu tốc độ website

Nội dung

Hướng dẫn cài đặt Zero SSL trên Nginx chi tiết

Ngày đăng:

11/12/2025

Cập nhật lần cuối:

22/12/2025

Bài viết này hướng dẫn chi tiết cách cài đặt chứng chỉ SSL miễn phí từ ZeroSSL cho website chạy trên Nginx mà không dùng control panel. Toàn bộ quy trình sẽ được trình bày từng bước, từ tạo chứng chỉ, xác thực qua file (HTTP-01), đến cấu hình vhost để bật HTTPS, giúp tăng cường bảo mật và cải thiện SEO.

Yêu cầu trước khi thực hiện

  • Hệ điều hành: Máy chủ sử dụng hệ điều hành nền tảng Linux (ví dụ: Ubuntu, Debian, CentOS,…).
  • Quyền truy cập: Cần có quyền quản trị cao nhất (root) hoặc quyền thực thi lệnh với sudo.
  • Trạng thái tên miền: Tên miền không bị khóa ở cấp độ nhà đăng ký (Registrar Lock), đảm bảo có thể thực hiện các thay đổi cần thiết.
  • Cấu hình DNS: Tên miền (domain) hoặc tên miền phụ (subdomain) cần cài đặt SSL phải được trỏ bản ghi A (A record) chính xác về địa chỉ IP của máy chủ.
  • Môi trường máy chủ: Máy chủ được cài đặt thủ công, không sử dụng bất kỳ control panel nào, ví dụ: aapanel, CyberPanel, DirectAdmin. Web server Nginx đã được cài đặt và đang hoạt động.
  • Kết nối mạng: Địa chỉ IP của máy chủ phải có khả năng truy cập công khai từ Internet, không bị tường lửa hoặc nhà cung cấp dịch vụ chặn các kết nối từ quốc tế.

Lưu ý quan trọng

Bài viết này sẽ thực hiện các bước hướng dẫn dựa trên một môi trường cấu hình cụ thể để bạn đọc dễ dàng hình dung. Khi thực hiện theo, bạn cần thay thế các giá trị mẫu bằng thông tin thực tế của máy chủ và tên miền của bạn.

  • Hệ điều hành: Hướng dẫn được thực hiện trên Ubuntu 20.04. Các lệnh có thể tương tự trên các phiên bản Ubuntu/Debian khác.
  • Tên miền: Vietnix sử dụng subdomain example.vietnix.xyz làm ví dụ. Bạn hãy thay thế example.vietnix.xyz bằng tên miền hoặc subdomain của bạn trong tất cả các lệnh và tệp cấu hình.
  • Phương thức xác thực: Phương pháp được sử dụng để xác thực chứng chỉ SSL là xác thực qua tệp (File authentication), phù hợp khi bạn có quyền truy cập vào thư mục gốc của website.
  • Các đường dẫn tệp:
    • Đường dẫn chứa tệp cấu hình virtual host của Nginx: /etc/nginx/sites-enabled/
    • Đường dẫn chứa mã nguồn website (document root): /var/www/example.vietnix.xyz/public
    • Đường dẫn đề xuất để lưu trữ tệp chứng chỉ SSL: /etc/nginx/ssl

Hãy đảm bảo bạn điều chỉnh các đường dẫn và tên miền này cho phù hợp với thiết lập của mình để tránh xảy ra lỗi.

Bước 1: Thực hiện Get Free SSL

Đầu tiên bạn truy cập https://zerossl.com chọn Get Free SSL.

Nhấn chọn Get Free SSL
Nhấn chọn Get Free SSL

Bước 2: Nhập thông tin khởi tạo

Ở bước này, bạn cần cung cấp các thông tin cần thiết để đăng ký tài khoản và khởi tạo chứng chỉ SSL với ZeroSSL, bao gồm:

  • Account mail: Bạn không bắt buộc phải sử dụng email chính. Trường thông tin này được ZeroSSL sử dụng để quản lý các chứng chỉ SSL. Email này chỉ trở nên quan trọng nếu bạn chọn phương thức xác thực qua email hoặc khi đăng ký các gói dịch vụ trả phí của ZeroSSL.
  • Password: Đây là mật khẩu dùng để đăng ký tài khoản với ZeroSSL. Mật khẩu bắt buộc phải có độ dài tối thiểu 8 ký tự, bao gồm chữ in hoa, số và ký tự đặc biệt. Mật khẩu này cũng sẽ được sử dụng để truy cập tài khoản ZeroSSL của bạn, đặc biệt khi nâng cấp lên các gói trả phí.
  • Country: Chọn Việt Nam.

iconLưu ý

Nếu máy chủ của bạn đặt tại quốc gia khác, hãy chọn quốc gia tương ứng.

Điền thông tin cần thiết
Điền thông tin cần thiết

Bước 3: Tạo chứng chỉ SSL miễn phí

Tiếp theo bạn chọn New Certificate để tạo bộ SSL key (Account ZeroSSL free tạo được tối đa 3 SSL miễn phí.)

Tại giao diện này bạn điền domain và subdomain
Tại giao diện này bạn điền domain và subdomain

Điền domain và subdomain
Điền domain và subdomain

Sau đó bạn chọn loại chứng chỉ SSL 90 ngày và nhấn Next Step để đến bước tiếp theo.

Chọn loại chứng chỉ SSL 90
Chọn loại chứng chỉ SSL 90

Bạn chọn Next Step để bỏ qua bướcAdd-Ons vì các chức năng tại Add-Ons khi bật bạn phải trả phí. Đối với mục CSR & Contact bạn hãy để mặc định và bấm Next Step.

Nhấn chọn Next Step
Nhấn chọn Next Step
Tắt tùy chọn tạo tự động
Tắt tùy chọn tạo tự động

Trong trường hợp bạn muốn sử dụng CSR (Certificate Signing Request) với thông tin tùy chỉnh, vui lòng tắt tùy chọn tạo tự động: Auto-Generate CSR.

Điền thông tin được yêu cầu
Điền thông tin được yêu cầu

Lúc này, bạn cần điền đầy đủ các thông tin được yêu cầu, sau đó nhấn Next Step để tiếp tục.

Tại mục Encryption Algorithm (Thuật toán mã hoá), bạn nên giữ nguyên giá trị mặc định là 2048, sau đó nhấn Next Step. Tiếp theo, hãy kiểm tra lại thông tin gói dịch vụ (plan) và nhấn Next Step để tiếp tục.

_alt-image-9_
Bấm Next Step
Chọn gói dịch vụ phù hợp
Chọn gói dịch vụ phù hợp

Bước 4: Chọn phương thức xác thực SSL

Tại bước này bạn chọn phương thức xác thực là File upload (File authen).

Sau đó bạn bấm download file authen
Sau đó bạn bấm Next Step
Tải file authen
Tải file authen

Bước 5: Upload tệp xác thực lên vps/sv Nginx / item

Kiểm tra sự tồn tại của thư mục /.well-known/pki-validation/ trong thư mục gốc của source code.

Kiểm tra sự tồn tại của thư mục
Kiểm tra sự tồn tại của thư mục

Nếu thư mục trên không tồn tại, hãy tạo mới bằng lệnh sau (thực thi tại thư mục gốc của mã nguồn):

mkdir -p .well-known/pki-validation
Tạo mới thư mục
Tạo mới thư mục

Sau đó bạn thực hiện upload file xác thực: /var/www/example.vietnix.xyz/public/.well-known/pki-validation. Sau khi upload hoàn tất, bạn sẽ truy cập ở đường dẫn xác thực mà tệp xác thực yêu cầu thành công.

Upload file xác thực
Upload file xác thực

Bước 6: Thực hiện xác thực ở ZeroSSL

Tại bước này tiếp tục thực hiện Next Step để tiến hành xác thực.

Chọn Next Step
Chọn Next Step

Lúc này, bạn tiến hành gửi yêu cầu xác thực bằng cách chọn “Verify Domain” như hình minh họa dưới đây.

_alt-image-17_
Bấm Verify Domain

Khi đã hoàn tất việc xác thực SSL, ZeroSSL sẽ tạo bộ SSL free, quá trình thường sẽ diễn ra trong 5-10 phút, bạn cần đợi trong thời gian này.

Thời gian đợi bộ SSL miễn phí từ 5-10 phút
Thời gian đợi bộ SSL miễn phí từ 5-10 phút

Khi bộ SSL free được tạo thành công, hệ thống ZeroSSL sẽ gửi file Download để bạn tải về sử dụng. Lúc này bạn có thể đóng cửa sổ trình duyệt này và thao tác cấu hình Nginx trên VPS.

Tải bộ SSL miễn phí về sử dụng
Tải bộ SSL miễn phí về sử dụng

Bước 7: Cấu hình SSL trên nginx

Tải bộ chứng chỉ SSL miễn phí bao gồm các tệp certificate.crt, private.key, và ca_bundle.crt đã tải về từ ZeroSSL lên VPS hoặc máy chủ chứa website.

  • Đổi tên tệp: Để thuận tiện cho việc quản lý và phân biệt với các chứng chỉ khác, bạn nên đổi tên các tệp theo định dạng subdomain.crt, subdomain.key, và subdomain.ca.
  • Tạo tệp PEM: Tạo một tệp hợp nhất có định dạng .pem ví dụ: subdomain.pem bằng cách nối nội dung của tệp subdomain.crtsubdomain.ca theo đúng thứ tự.

Bạn có thể tạo tệp .pem trên máy chủ bằng hai lệnh sau (thực thi theo đúng thứ tự):

  • cat /etc/nginx/ssl/example.vietnix.xyz.crt > /etc/nginx/ssl/example.vietnix.xyz.pem
  • cat /etc/nginx/ssl/example.vietnix.xyz.ca >> /etc/nginx/ssl/example.vietnix.xyz.pem

Ngoài ra, bạn cũng có thể thực hiện thao tác này trên máy tính cá nhân bằng cách tạo một tệp tin mới, sau đó sao chép (copy) và dán (paste) lần lượt toàn bộ nội dung của tệp certificate.crtca_bundle.crt vào tệp mới đó.

Tạo tệp pem
Tạo tệp pem
Truy cập đường dẫn cấu hình Vhosts Nginx
Truy cập đường dẫn cấu hình Vhosts Nginx

Tạo tệp cấu hình Virtual Host cho SSL: example.vietnix.xyz-ssl.conf

Sau đây là nội dung của một tệp cấu hình mẫu. Lưu ý rằng bạn cần điều chỉnh các chỉ thị trong tệp để phù hợp với thiết lập Nginx cụ thể của mình:

root@example:/etc/nginx/sites-enabled# cat example.vietnix.xyz-ssl.conf

server {

    listen 14.225.206.105:443 ssl;

    server_name example.vietnix.xyz www.example.vietnix.xyz;

    root /var/www/example.vietnix.xyz/public;

    index index.php index.html index.htm;

    access_log /var/log/nginx/example.vietnix.xyz.access.log;

    error_log  /var/log/nginx/example.vietnix.xyz.error.log;

    ssl_certificate     /etc/nginx/ssl/example.vietnix.xyz.pem;

    ssl_certificate_key /etc/nginx/ssl/example.vietnix.xyz.key;

    # Điều hướng request tĩnh & fallback sang index.php (phù hợp cho nhiều framework)

    location / {

        try_files $uri $uri/ /index.php?$query_string;

    }

    # Xử lý PHP qua PHP-FPM

    location ~ \.php$ {

        include snippets/fastcgi-php.conf;

        # CHỈNH LẠI socket CHO ĐÚNG PHIÊN BẢN PHP-FPM CỦA BẠN:

        fastcgi_pass unix:/run/php/php7.4-fpm.sock;

        # Nếu dùng TCP thay vì socket (ít gặp trên Ubuntu):

        # fastcgi_pass 127.0.0.1:9000;

    }

    # Bảo vệ file ẩn (.git, .env, …)

    location ~ /\.(?!well-known).* {

        deny all;

    }

}
Tạo tệp cấu hình Virtual Host cho SSL
Tạo tệp cấu hình Virtual Host cho SSL

Kiểm tra cú pháp cấu hình Nginx, sau đó tải lại (reload) dịch vụ để áp dụng các thay đổi.

Thực hiện reload Nginx
Thực hiện reload Nginx

Bước 8: Kiểm tra website và tình trạng SSL

Sau khi hoàn tất cài đặt, bạn cần tiến hành kiểm tra để đảm bảo chứng chỉ SSL hoạt động chính xác. Hãy truy cập website của bạn bằng giao thức HTTPS (ví dụ: https://example.vietnix.xyz). Một biểu tượng ổ khóa bảo mật phải xuất hiện trên thanh địa chỉ của trình duyệt, cho thấy kết nối đã được mã hóa thành công.

Sử dụng công cụ kiểm tra SSL trực tuyến: Truy cập vào địa chỉ https://www.sslshopper.com/ssl-checker.html. Nhập tên miền của bạn (ví dụ: example.vietnix.xyz) vào ô tương ứng và nhấn nút Check SSL.

Quá trình cài đặt được xem là thành công nếu kết quả trả về cho thấy tất cả các thông số của chứng chỉ SSL đều hợp lệ và khớp với thông tin đã cấu hình.

Cài đặt thành công Zero SSL trên Nginx
Cài đặt thành công Zero SSL trên Nginx
Cài đặt thành công Zero SSL trên Nginx
Cài đặt thành công Zero SSL trên Nginx

Khi cả hai phương pháp xác minh trên (kiểm tra trên trình duyệt và bằng công cụ trực tuyến) đều cho kết quả tích cực, điều đó khẳng định quá trình cài đặt chứng chỉ SSL từ nhà cung cấp ZeroSSL của bạn đã hoàn tất thành công.

Một số lỗi thường gặp và cách xử lý nhanh chóng

LỗiNguyên nhânCách khắc phục
Không truy cập được file challengePort 80 bị chặn hoặc chặn quốc tếMở port 80 trong firewall: ufw allow 80 và liên hệ bộ phận kỹ thuật nhờ bỏ chặn quốc tế.
Xác thực thất bạiFile challenge sai đường dẫnĐảm bảo file nằm đúng tại /.well-known/pki-validation
Nginx báo lỗi syntaxSai cấu hình VhostChạy nginx -t để kiểm tra lỗi, sửa file .conf
HTTPS không hoạt độngChưa reload NginxChạy systemctl reload nginx
SSL không hiển thị ổ khóaMixed content (HTTP assets)Chuyển tất cả tài nguyên (CSS, JS, hình ảnh) sang HTTPS
Một số lỗi thường gặp và cách xử lý nhanh chóng

Chỉ với 8 bước, bạn đã cài đặt thành công ZeroSSL trên Nginx, đảm bảo website chạy HTTPS an toàn, tăng độ tin cậy với người dùng và cải thiện SEO. Phương thức File Authentication giúp đơn giản hóa quá trình, phù hợp cho server đơn lẻ. Hãy kiểm tra chứng chỉ định kỳ và gia hạn trước 90 ngày để duy trì bảo mật. Trong quá trình thao tác nếu còn vấn đề nào thắc mắc bạn có thể liên hệ Vietnix để được hỗ trợ nhanh chóng.

VIETNIX – DỊCH VỤ HOSTING, VPS TỐC ĐỘ CAO, ỔN ĐỊNH, BẢO MẬT

  • Địa chỉ: 265 Hồng Lạc, Phường Bảy Hiền, Thành Phố Hồ Chí Minh
  • Điện thoại: 1800 1093
  • Email liên hệ: sales@vietnix.com.vn
  • Website: https://vietnix.vn/

VIETNIX

Đội ngũ tại Vietnix

Kết nối với mình qua

Vietnix thành lập vào năm 2012, là công ty chuyên nghiệp tại Việt Nam trong lĩnh vực cung cấp dịch vụ Hosting, VPS, máy chủ vật lý, dịch vụ Firewall Anti DDoS, SSL… Với 10 năm xây dựng và phát triển, ứng dụng nhiều công nghệ hiện đại, Vietnix đã giúp hàng ngàn khách hàng tin tưởng lựa chọn, mang lại sự ổn định tuyệt đối cho website của khách hàng để thúc đẩy việc kinh doanh đạt được hiệu quả và thành công.

Kết nối với mình qua

NHỮNG CÂU HỎI THƯỜNG GẶP VỀ DỊCH VỤ TẠI VIETNIX

Để có thể gửi ticket yêu cầu hỗ trợ đến các phòng ban của Vietnix, trước hết bạn cần đăng nhập vào hệ thống portal tại đường link: https://portal.vietnix.vn/.
Sau đó vào phần Hỗ trợ > Chọn Gửi yêu cầu > Lựa chọn phòng ban mà bạn muốn gửi yêu cầu > Nhập nội dung cần hỗ trợ và nhấn Gửi.

Chúng tôi sẽ tiếp nhận và phản hồi ngay khi nhận được yêu cầu từ Quý Khách Hàng. Bạn có thể xem hướng dẫn chi tiết cách gửi ticket tại đây.
Nếu bạn còn vấn đề gì thắc mắc, hãy liên hệ đến hotline 1800 1093 để được hỗ trợ giải đáp nhanh chóng.

Vietnix có riêng đội ngũ tư vấn và hỗ trợ kỹ thuật chuyên nghiệp giúp khách hàng giải quyết được các vấn đề phát sinh một cách nhanh gọn nhất, không làm ảnh hưởng đến hiệu suất công việc. Đội ngũ nhân viên của chúng tôi với kinh nghiệm và trình độ chuyên môn cao sẵn sàng hỗ trợ khách hàng 24/7, mang đến cho khách hàng trải nghiệm tốt nhất khi sử dụng dịch vụ tại Vietnix.

Đảm bảo an toàn và bảo mật thông tin của Quý khách hàng là nhiệm vụ Vietnix luôn đặt lên hàng đầu. Chúng tôi sẽ không xâm phạm vào thông tin và dữ liệu của khách hàng khi chưa được cho phép. Vietnix cam kết không chia sẻ thông tin khách hàng dưới bất kỳ hình thức nào cho bên thứ ba. Mọi hoạt động sẽ tuân thủ đúng pháp luật, điều khoản hợp đồng và Chính sách bảo mật thông tin của chúng tôi.

Vietnix có hệ thống các kênh liên lạc đa dạng giúp bạn dễ dàng kết nối được với chúng tôi. Bạn có thể liên hệ với Vietnix qua Fanpage Facebook, Livechat, Ticket, Email,… Ngoài ra, trong trường hợp cần hỗ trợ nhanh chóng, bạn có thể gọi đến hotline: 1800 1093 – 07 088 44444 để được giải quyết kịp thời.

Tại Vietnix, chúng tôi hỗ trợ việc hoàn tiền trong vòng 30 ngày kể từ khi dịch vụ của quý khách được kích hoạt trên hệ thống (không tính thời gian dùng thử dịch vụ), ngoại trừ các dịch vụ: Domain, SSL, License.

– Đối với các dịch vụ Hosting, VPS: Hoàn tiền 100% trong vòng 07 ngày kể từ ngày đăng ký dịch vụ. Sau 07 ngày hoàn lại số tiền tương ứng sau khi đã trừ đi số tiền dịch vụ đã được sử dụng theo ngày.

– Đối với các dịch vụ Server, Colocation: hoàn lại số tiền tương ứng sau khi đã trừ đi số tiền dịch vụ đã được sử dụng theo ngày.

Quý khách có thể xem nội dung chi tiết tại Chính sách hoàn tiền của Vietnix.

Xem tất cả câu hỏi