Hướng dẫn cài đặt Certbot Nginx trên Ubuntu
Bước 1: Cập nhật hệ thống
Trước khi bắt đầu, hãy đảm bảo danh sách gói phần mềm của bạn luôn mới nhất.
Bash
sudo apt upgrade -y
Bước 2: Cài đặt Certbot và Plugin Nginx
Ubuntu thường đi kèm với bản Certbot ổn định trong kho lưu trữ mặc định. Bạn cần cài đặt cả Certbot và thư viện hỗ trợ riêng cho Nginx.
Bash
Bước 3: Kiểm tra cấu hình Nginx
Certbot cần tìm thấy khối server trong cấu hình Nginx của bạn để tự động thiết lập SSL. Hãy mở tệp cấu hình tên miền của bạn (ví dụ: /etc/nginx/sites-available/default hoặc tệp riêng):
Bash
Đảm bảo dòng server_name đã chứa tên miền của bạn:
Nginx
Sau đó kiểm tra lỗi cú pháp và khởi động lại Nginx:
Bash
sudo systemctl reload nginx
Bước 4: Thiết lập tường lửa (UFW)
Nếu bạn đang bật tường lửa, hãy cho phép lưu thông lượng HTTPS (cổng 443):
Bash
sudo ufw delete allow 'Nginx HTTP'
Bước 5: Lấy chứng chỉ SSL
Chạy lệnh sau để Certbot tự động thực hiện các thay đổi cấu hình cần thiết:
Bash
-
Lưu ý: Trong quá trình này, Certbot sẽ hỏi email của bạn và yêu cầu bạn đồng ý với các điều khoản. Khi được hỏi về việc tự động chuyển hướng (Redirect) từ HTTP sang HTTPS, bạn nên chọn 2 (Redirect) để tăng cường bảo mật.
Bước 6: Kiểm tra tự động gia hạn
Chứng chỉ Let's Encrypt có thời hạn 90 ngày. Tuy nhiên, gói cài đặt đã tự động thiết lập một cronjob để gia hạn. Bạn có thể kiểm tra xem tính năng này có hoạt động tốt không bằng lệnh:
Bash
Một số lưu ý quan trọng
-
Quyền hạn: Luôn sử dụng sudo để thực thi các lệnh cài đặt hệ thống.
-
Tính tương thích: Cách làm này áp dụng tốt nhất cho các phiên bản Ubuntu LTS (như 22.04 hoặc 24.04).
-
Sao lưu: Nên sao lưu cấu hình Nginx trước khi chạy Certbot để tránh rủi ro mất cấu hình tùy chỉnh.