Vào ngày 30/9/2021 vừa qua hàng triệu thiết bị trên thế giới đột nhiên không thể truy cập vào các website, do các Website sử dụng chứng chỉ SSL miễn phí Let’s Encrypt. Cụ thể là chứng chỉ gốc DST Root CA X3 của Let’s Encrypt hết hạn và họ đã thay thế bằng ISRG Root X1. Chính vì nguyên nhân này mà các thiết bị sử dụng hệ điều hành cũ không thể truy cập được. Do đó một giải pháp thay thế khác là bạn cần nâng hệ điều hành cho thiết bị lên bản mới. Hoặc sử dụng chứng chỉ SSL trả phí được cung cấp bởi một tổ chức khác.
Mặc định khi bạn cài đặt SSL trên AAPANEL nó sẽ cài đặt Let’s Encrypt cho bạn. Nhưng vì những bất cập trên do đó bài viết này POWERNET sẽ hướng dẫn bạn thay thế ZeroSSL cho Let’s Encrypt
Bước 1: SSH vào máy chủ
Để cài đặt ZeroSSL trên AAPANEL đầu tiên chúng ta cần SSH vào máy chủ của bạn với quyền root trước. Nếu bạn chưa biết cách SSH vào Cloud Server của bạn thì bạn có thể tham khảo bài viết hướng dẫn sau:
Bước 2: Cài đặt acme.sh
ACME là môi trường quản lý chứng chỉ tự động (ACME) là một giao thức tiêu chuẩn để tự động xác thực miền, cài đặt và quản lý chứng chỉ X.509. Giao thức ACME được thiết kế bởi Nhóm Nghiên cứu Bảo mật Internet và được mô tả trong IETF RFC 8555. Là một tiêu chuẩn mở, được tài liệu hóa tốt với nhiều triển khai ứng dụng khách có sẵn, ACME đang được áp dụng rộng rãi như một giải pháp tự động hóa chứng chỉ doanh nghiệp.
Cách cài 1: Cài đặt Online
Lưu ý: Thay my@example.com bằng mail của bạn
curl https://get.acme.sh | sh -s email=my@example.com
Hoặc
wget -O - https://get.acme.sh | sh -s email=my@example.com
Cách 2: Cài đặt từ GIT
git clone https://github.com/acmesh-official/acme.sh.git cd ./acme.sh ./acme.sh --install -m my@example.com
Sau khi cài xong bạn hãy tạo và sao chép acme.sh
vào $HOME
của bạn. Bạn hãy chạy lệnh sau để ghi vào.
echo "alias acme.sh='~/.acme.sh/acme.sh'" >> /root/.bashrc source /root/.bashrc
Bước 3: Cài đặt lấy chứng chỉ ZeroSSL
Bước này sẽ thực hiện issue chứng chỉ SSL thông qua acme ZeroSSL. Bạn hãy nhập vào lệnh sau. Và mình sẽ chú thích lệnh này để bạn thay thế bằng domain của bạn.
acme.sh --issue -d powernet.website -w /www/wwwroot/powernet.website --force
Chú thích:
- -d: Để thêm tên miền bạn thêm vào
-d
trước tên miền đó - -w: đường dẫn đến thư mục chứa mã nguồn Website bạn.
- -d: Để thêm tên miền bạn thêm vào
Sau khi thực hiện lệnh issue bạn sẽ nhận được chứng chỉ ở màn hình và 4 đường dẫn File chứng chỉ bao gồm
- domain.cer: File chứa certificate
- domain.key: FIle chứa Private Key
- ca.cer: File chứa CARoot
- fullchain.cer: FIle đã bao gồm cert và ca
Bước 4: Cấu hình chứng chỉ và tạo cron gia hạn
Cấu hình chứng chỉ
Để cấu hình chứng chỉ lên Website, bạn hãy vào AAPANEL mở Website cần cài. Sau đó click vào Config và bạn copy đường dẫn 2 File là fullchain.cer
và domain.key
thay vào đường dẫn cũ và thực hiện Save lại để áp dụng thay đổi.
Tiếp theo bạn hãy khởi động lại dịch vụ Webserver mà bạn đang dùng (NGINX, APACHE hoặc OLS)
Bây giờ mình sẽ sử dụng các trang check SSL online để kiểm tra online và kết quả đã thành công.
Tạo cron tự động gia hạn
Vì chứng chỉ chỉ có thời hạn sử dụng 90 ngày. Do đó mình sẽ tạo một cron gia hạn tự động.
Bạn truy cập vào AAPANEL sau đó vào Cron và setup script như ảnh bên dưới.
Vì là gia hạn mình sẽ không sử dụng tùy chọn --issue
mà sử dụng --renew
acme.sh --renew -d powernet.website -d www.powernet.website -w /www/wwwroot/powernet.website --force