Giới thiệu về Let’s Encrypt SSL
Let’s Encrypt là một cơ quan cấp chứng chỉ tự động và mở, cung cấp chứng chỉ TLS/SSL miễn phí vì lợi ích công cộng. Dịch vụ này được cung cấp bởi Nhóm Nghiên cứu An ninh Internet (ISRG). Hướng dẫn này sẽ chỉ bạn cách cài đặt chứng chỉ SSL Let’s Encrypt trên máy chủ Ubuntu 20.04 với OpenLiteSpeed (~Apache) sử dụng trình cài đặt Certbot. Sau khi hoàn thành hướng dẫn này, máy chủ của bạn sẽ có chứng chỉ hợp lệ và chuyển hướng tất cả các yêu cầu HTTP sang HTTPS.
Yêu cầu tiên quyết để cài Let’s Encrypt SSL
Let’s Encrypt SSL: Hướng dẫn này giả định rằng bạn đã triển khai một máy chủ Ubuntu từ Vultr với OpenLiteSpeed hoặc Apache, có tên miền trỏ đến địa chỉ IP của máy chủ và bạn đã đăng nhập với quyền root.
Cài đặt Certbot: Let’s Encrypt SSL
Cài đặt Let’s Encrypt SSL: Phương pháp cài đặt Certbot được khuyến nghị là sử dụng Snap.
Xác minh rằng snapd đã được cập nhật.
$ sudo snap install core; sudo snap refresh core
Xóa certbot-auto
và bất kỳ gói Certbot nào khác đã có trên hệ điều hành của bạn.
$ sudo apt-get remove certbot
Cài đặt Certbot với Snap.
$ sudo snap install --classic certbot
Liên kết Certbot tới /usr/bin
.
$ sudo ln -s /snap/bin/certbot /usr/bin/certbot
Chọn cách bạn muốn chạy Certbot:
Bạn có đồng ý tạm dừng website của mình không?
- Có, máy chủ web của tôi hiện không chạy trên máy này.
Dừng máy chủ web của bạn, sau đó chạy lệnh này để lấy chứng chỉ. Certbot sẽ tạm thời khởi động một máy chủ web trên máy của bạn.
$ sudo certbot certonly --standalone
- Không, tôi cần giữ máy chủ web của mình đang chạy.
Nếu bạn có một máy chủ web đã sử dụng cổng 80 và không muốn dừng nó trong khi Certbot chạy, hãy chạy lệnh này và làm theo hướng dẫn trong terminal.
$ sudo certbot certonly --webroot
Cài đặt chứng chỉ của bạn
Bạn cần phải cài đặt chứng chỉ mới vào tệp cấu hình của máy chủ web.
Kiểm tra Let’s Encrypt SSL tự động gia hạn
Các gói Certbot trên hệ thống của bạn đi kèm với một cron job
hoặc hệ thống bộ đếm thời gian systemd
sẽ tự động gia hạn chứng chỉ của bạn trước khi chúng hết hạn. Bạn sẽ không cần phải chạy lại Certbot, trừ khi bạn thay đổi cấu hình. Bạn có thể kiểm tra việc gia hạn tự động cho chứng chỉ của mình bằng cách chạy lệnh này:
$ sudo certbot renew --dry-run
Lệnh gia hạn certbot được cài đặt tại một trong các vị trí sau:
/etc/crontab/ ;/etc/cron.*/* ;systemctl list-timers
Nếu việc gia hạn tự động không thành công, hãy kiểm tra yêu cầu gia hạn tự động tại /etc/letsencrypt/renewal/domain.com.conf
để xem liệu nó đã được cấu hình chính xác hay chưa (ví dụ dưới đây).
renew_before_expiry = 30 days
version = 2.9.0
archive_dir = /etc/letsencrypt/archive/saibabc.com
cert = /etc/letsencrypt/live/saibabc.com/cert.pem
privkey = /etc/letsencrypt/live/saibabc.com/privkey.pem
chain = /etc/letsencrypt/live/saibabc.com/chain.pem
fullchain = /etc/letsencrypt/live/saibabc.com/fullchain.pem
Options used in the renewal process
[renewalparams]
account = 56bb8680ab21b3db38f6d756e69139be
authenticator = webroot
webroot_path = /var/www/html/saibabc.com
server = https://acme-v02.api.letsencrypt.org/directory
key_type = ecdsa
[[webroot_map]]
saibabc.com = /var/www/html/saibabc.com
www.saibabc.com = /var/www/html/saibabc.com
Xác nhận rằng Certbot đã hoạt động
Để xác nhận rằng trang web của bạn đã được thiết lập đúng cách, hãy truy cập vào https://yourwebsite.com/
trong trình duyệt và tìm biểu tượng khóa trong thanh URL.
Xin chúc mừng, bạn đã hoàn thành cài đặt Let’s Encrypt SSL tự động gia hạn khi sắp hết hạn.
Đọc thêm: Tối ưu hóa bảo mật và hiệu quả với Ubuntu Server: Hướng dẫn cài đặt
2 Bình luận
Quá hay, tôi đã làm được. Trước khi xem bài viết này tôi toàn phải gia hạn thủ công, nhiều lúc quên không gia hạn là web mất lượt truy cập nghiêm trọng. Cảm ơn.
Xin cảm ơn bạn. Chúc bạn thành công.