Hướng Dẫn Cấp Lại SSL Cho Domain Trên CyberPanel Bằng Giao Diện Và SSH

SSL là thành phần quan trọng giúp mã hóa dữ liệu giữa website và người dùng, đồng thời tăng độ tin cậy của website trên trình duyệt. Trong quá trình vận hành, chứng chỉ SSL có thể gặp lỗi hết hạn, cấp phát không thành công hoặc bị hỏng do thay đổi cấu hình DNS, chuyển máy chủ hoặc lỗi hệ thống. Khi đó, việc cấp lại SSL là cần thiết để website hoạt động ổn định.

Bài viết dưới đây hướng dẫn chi tiết các phương pháp cấp lại SSL cho website trên CyberPanel, bao gồm cả cách thực hiện thông qua giao diện quản trị và dòng lệnh SSH.

Khi Nào Cần Cấp Lại SSL?

Bạn nên thực hiện cấp lại SSL khi gặp một trong các trường hợp sau:

  • Trình duyệt hiển thị cảnh báo “Connection is Not Secure”.
  • SSL đã hết hạn hoặc sắp hết hạn.
  • CyberPanel báo lỗi khi tự động gia hạn chứng chỉ.
  • Website vừa chuyển sang máy chủ mới.
  • Thay đổi bản ghi DNS hoặc cấu hình tên miền.
  • Chứng chỉ SSL bị xóa hoặc hỏng do lỗi hệ thống.

Phương Pháp 1: Xóa SSL Cũ Và Cấp Lại Từ CyberPanel

Đây là phương pháp đơn giản và phù hợp với đa số người dùng.

Bước 1: Xóa chứng chỉ SSL cũ

Đăng nhập máy chủ qua SSH và thực hiện:

rm -rf /etc/letsencrypt/live/domain.com
rm -rf /etc/letsencrypt/archive/domain.com
rm -rf /etc/letsencrypt/renewal/domain.com.conf

Khởi động lại OpenLiteSpeed:

systemctl restart lsws

Bước 2: Cấp lại SSL từ giao diện CyberPanel

Truy cập CyberPanel:

Websites → List Websites → Manage → Issue SSL

Hoặc:

SSL → Manage SSL

CyberPanel sẽ tự động kết nối với Let’s Encrypt để cấp chứng chỉ mới cho tên miền.

Phương Pháp 2: Cấp SSL Bằng Dòng Lệnh CyberPanel

Một số trường hợp giao diện CyberPanel gặp lỗi hoặc không phản hồi, bạn có thể sử dụng SSH để cấp SSL trực tiếp.

Thực hiện lệnh:

python3 /usr/local/CyberCP/plogical/sslUtilities.py -d domain.com

Trên một số phiên bản CyberPanel:

python3 /usr/local/CyberCP/plogical/virtualHostUtilities.py issueSSL --domain domain.com

Sau khi hoàn tất, kiểm tra chứng chỉ:

ls -la /etc/letsencrypt/live/domain.com/

Nếu xuất hiện các tệp cert.pem, fullchain.pem và privkey.pem nghĩa là SSL đã được cấp thành công.

Phương Pháp 3: Sử Dụng Certbot Để Cấp SSL

Certbot là công cụ chính thức được khuyến nghị bởi Let’s Encrypt.

Cài đặt Certbot

Đối với Ubuntu:

apt update
apt install certbot -y

Đối với AlmaLinux hoặc Rocky Linux:

dnf install certbot -y

Cấp SSL

certbot certonly --webroot \
-w /home/domain.com/public_html \
-d domain.com \
-d www.domain.com

Sau khi hoàn tất, chứng chỉ sẽ được lưu tại:

/etc/letsencrypt/live/domain.com/

Bạn có thể nhập thủ công chứng chỉ vào CyberPanel nếu cần.

Phương Pháp 4: Cấp Wildcard SSL Cho Toàn Bộ Subdomain

Wildcard SSL cho phép bảo vệ toàn bộ các subdomain thuộc một tên miền.

Ví dụ:

*.domain.com

Thực hiện:

certbot certonly \
--manual \
--preferred-challenges dns \
-d "*.domain.com" \
-d domain.com

Hệ thống sẽ yêu cầu tạo bản ghi TXT:

_acme-challenge.domain.com

Sau khi DNS cập nhật hoàn tất, Certbot sẽ cấp chứng chỉ Wildcard SSL.

Phương pháp này đặc biệt hữu ích đối với các hệ thống có nhiều subdomain như:

  • mail.domain.com
  • blog.domain.com
  • api.domain.com
  • shop.domain.com

Phương Pháp 5: Sử Dụng acme.sh

Nhiều quản trị viên đánh giá acme.sh nhẹ hơn và ổn định hơn Certbot.

Cài đặt

curl https://get.acme.sh | sh
source ~/.bashrc

Cấp SSL

acme.sh --issue \
-d domain.com \
-w /home/domain.com/public_html

Cài đặt chứng chỉ

acme.sh --install-cert -d domain.com \
--key-file /usr/local/lsws/conf/key.pem \
--fullchain-file /usr/local/lsws/conf/cert.pem

Khởi động lại dịch vụ:

systemctl restart lsws

Kiểm Tra Nguyên Nhân Khi SSL Không Cấp Được

Kiểm Tra DNS

Đảm bảo tên miền đang trỏ đúng về IP máy chủ:

dig domain.com +short
dig www.domain.com +short

Kiểm Tra Cổng 80

Let’s Encrypt cần truy cập website qua cổng 80 để xác minh quyền sở hữu.

ss -tulpn | grep :80

Hoặc:

curl http://domain.com

Kiểm Tra Firewall

Đảm bảo các cổng sau đã được mở:

80/tcp
443/tcp

Kiểm tra bằng:

firewall-cmd --list-ports

Hoặc:

ufw status

Kiểm Tra Log CyberPanel

tail -f /usr/local/lscp/logs/error.log

Kiểm Tra Log Let’s Encrypt

tail -f /var/log/letsencrypt/letsencrypt.log

Hệ thống CyberPanel có thể lỗi SSL

CyberPanel hỗ trợ nhiều phương thức cấp và gia hạn SSL, từ giao diện quản trị đến dòng lệnh SSH. Trong đa số trường hợp, việc xóa chứng chỉ cũ và thực hiện lại chức năng “Issue SSL” là đủ để khắc phục sự cố. Đối với các hệ thống phức tạp hoặc sử dụng nhiều subdomain, Wildcard SSL kết hợp DNS Challenge là giải pháp tối ưu.

Việc thường xuyên kiểm tra DNS, firewall và log hệ thống sẽ giúp giảm thiểu các lỗi liên quan đến SSL, đảm bảo website luôn hoạt động an toàn và ổn định.