Hướng dẫn cài đặt Let's Encrypt SSL trên OpenLiteSpeed, LiteSpeed Web Server

Đăng bởi: Admin | Lượt xem: 2062 | Chuyên mục: Linux/Server

Let's Encrypt cung cấp chứng chỉ SSL miễn phí cho các website muốn sử dụng HTTPS. Trong bài viết này VnCoder sẽ hướng dẫn chi tiết cách cài đặt Let's Encrypt cho website của bạn sử dụng máy chủ OpenLiteSpeed hoặc LiteSpeed Web Server


Let's Encrypt cung cấp chứng chỉ SSL miễn phí cho các website muốn sử dụng HTTPS. Trong bài viết này VnCoder sẽ hướng dẫn chi tiết cách cài đặt Let's Encrypt cho website của bạn sử dụng máy chủ OpenLiteSpeed hoặc LiteSpeed

Tại sao lại sử dụng  Let’s Encrypt?

Let’s Encrypt là một nhà cung cấp chứng chỉ số SSL (Certificate Authority) hoàn toàn miễn phí, được nhiều cá nhân và tổ chức tin dùng và đặc biệt không giới hạn do tổ chức phi lợi nhuận Internet Security Research Group (ISRG) duy trì. Do đó Lets Encrypt được rất nhiều website sử dụng để cài đặt SSL khi muốn cấu hình HTTPS. 

Lét Encrypt SSL

LiteSpeed và OpenLiteSpeed Web Server 

LiteSpeed hay LiteSpeed Web Server (gọi tắt là LSWS) là một dịch vụ Web Server chạy trên nền tảng OS Linux, được biết đến với khả năng cung cấp một hiệu suất tuyệt vời và khả năng mở rộng cực cao. Một web server Apache nổi tiếng có thể được thay thế bằng LiteSpeed Web Server vô cùng dễ dàng mà không cần chỉnh sửa bất kỳ chi tiết nào trong cấu hình dịch vụ trên hệ điều hành và cũng không gây ảnh hưởng hay cản trở tiến trình hay chương trình nào cả. LiteSpeed khi sử dụng cần mất phí tuy nhiên chúng ta hoàn toàn có thể sử dụng bản miễn phí mã nguồn mở OpenLiteSpeed với phần đầy đủ tính năng tương tự 

Cài đặt môi trường

Để cài đặt và sử dụng Let’s Encrypt trên server của bạn chúng ta sử dụng một công cụ là Let’s Encrypt CertBot 

Cài đặt CertBot trên Ubuntu

sudo apt-get update
sudo apt-get install software-properties-common
sudo add-apt-repository universe
sudo add-apt-repository ppa:certbot/certbot
sudo apt-get update
sudo apt-get install certbot

Cài đặt CertBot trên CentOS 7

yum -y install yum-utils
yum-config-manager --enable rhui-REGION-rhel-server-extras rhui-REGION-rhel-server-optional
sudo yum install certbot

Cài đặt CertBot trên CentOS 8

wget https://dl.eff.org/certbot-auto
sudo mv certbot-auto /usr/local/bin/certbot-auto
sudo chown root /usr/local/bin/certbot-auto
sudo chmod 0755 /usr/local/bin/certbot-auto

Tạo chứng chỉ SSL cho website của bạn

Với các máy chủ Apache hoặc Nigx Certbot có thể tự động nhận diện máy chủ và cài đặt SSL một cách tự động. Với máy chủ OpenLiteSpeed ta thực hiện cài đặt thủ công như sau

Bước 1 chạy lệnh certbot để tạo chứng chỉ

certbot-auto certonly

Kết quả sau khi chạy lệnh

[root@git ~]# certbot-auto certonly
Saving debug log to /var/log/letsencrypt/letsencrypt.log

How would you like to authenticate with the ACME CA?
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
1: Spin up a temporary webserver (standalone)
2: Place files in webroot directory (webroot)
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
Select the appropriate number [1-2] then [enter] (press 'c' to cancel):       

Tiếp theo các bạn nhập số 2 rồi nhấn enter

Enter email address (used for urgent renewal and security notices) (Enter ‘c’ to cancel):

Sau đó  các bạn nhập email để đăng kí SSL, LiteSpeed sẽ gửi email gia hạn hoặc các thông tin liên quan vào mail này.

Please read the Terms of Service at https://letsencrypt.org/documents/LE-SA-v1.2-November-15-2017.pdf. You must agree in order to register with the ACME server at https://acme-v01.api.letsencrypt.org/directory
(A)gree/(C)ancel:

Nhập 'A' để đồng ý với điều khoản dịch vụ

Would you be willing to share your email address with the Electronic Frontier Foundation, a founding partner of the Let’s Encrypt project and the non-profit organization that develops Certbot?
(Y)es/(N)o:

Nhập 'N' từ chối chia sẻ thông tin email

Plugins selected: Authenticator webroot, Installer None
Please enter in your domain name(s) (comma and/or space separated)  (Enter 'c'
to cancel):    

Bước tiếp theo là bạn nhập tên miền của website cần đăng kí

Input the webroot for YOUR_DOMAIN: (Enter ‘c’ to cancel):

Nhập đường dẫn tới thưc mục gốc của website, đợi vài giây certbot sẽ tạo chứng chỉ  cho các bạn

Waiting for verification… Cleaning up challenges

IMPORTANT NOTES: Congratulations! Your certificate and chain have been saved at:
/etc/letsencrypt/live/YOUR_DOMAIN/fullchain.pem
Your key file has been saved at:
/etc/letsencrypt/live/YOUR_DOMAIN/privkey.pem

Your cert will expire on DATE. To obtain a new or tweaked version of this certificate in the future, simply run “certbot-auto” again.
To non-interactively renew *all* of your certificates, run “certbot-auto renew”

Cấu hình SSL cho OpenLiteSpeed 

Sau khi đã tạo xong chứng chỉ SSL cho website, việc tiếp theo là ta phải cấu hình SSL trên trang admin

Truy cập trang admin của OpenLiteSpeed mặc định là domainname:7080 tạo thêm một Listeners mới cho HTTPS theo cấu hình dưới đây (nên đặt tên là HTTPS cho dễ nhớ)

Bây giờ chúng ta sẽ cấu hình SSL cho  listener. Bạn vào  Listeners  –> SSL –> SSL Private Key & Certificate.
Copy đường dẫn chứng chỉ ở trên điền vào như sau

  • Private Key File/etc/letsencrypt/live/YOUR_DOMAIN/privkey.pem
  • Certificate File/etc/letsencrypt/live/YOUR_DOMAIN/fullchain.pem

Ở phần SSL protocol tích tất cả các giao thức SSL 

Cấu hình Protocol SSL

Nếu server của bạn có nhiều website thì bạn nhớ mapping website của bạn vào listenner HTTPs vừa tạo

Chọn SAVE sau đó khởi động lại  OpenLiteSpeed

Khi cấu hình thành công Listener của bạn sẽ xuất hiện với màu xanh trên Dashboard

Việc tiếp theo  là test thử website của các bạn trên trình duyệt, hiện cái khoá màu xanh ở thanh địa chỉ là thành công

Gia hạn SSL 

Chứng chỉ Let’s Encrypt có thời hạn là 90 ngày, do đó bạn nên sử dụng  cron job (Linux Scheduler) để gia hạn tự động  Let’s Encrypt certificates trước khi hết hạn

Trước khi cấu hình  cron job, bạn chạy câu lênh dưới đây để thử gia hạn tự động chứng chỉ 

certbot renew --dry-run

Kết quả

Saving debug log to /var/log/letsencrypt/letsencrypt.log

-------------------------------------------------------------------------------
Processing /etc/letsencrypt/renewal/web.itzgeek.com.conf
-------------------------------------------------------------------------------
Cert not due for renewal, but simulating renewal for dry run
Starting new HTTPS connection (1): acme-staging.api.letsencrypt.org
Renewing an existing certificate
Performing the following challenges:
http-01 challenge for web.itzgeek.com
Waiting for verification...
Cleaning up challenges

-------------------------------------------------------------------------------
new certificate deployed without reload, fullchain is
/etc/letsencrypt/live/web.itzgeek.com/fullchain.pem
-------------------------------------------------------------------------------
** DRY RUN: simulating 'certbot renew' close to cert expiry
**          (The test certificates below have not been saved.)

Congratulations, all renewals succeeded. The following certs have been renewed:
  /etc/letsencrypt/live/web.itzgeek.com/fullchain.pem (success)
** DRY RUN: simulating 'certbot renew' close to cert expiry
**          (The test certificates above have not been saved.)

Tiếp theo các bạn thực hiện cron job thực hiện gia hạn 2 ngày một lần (hệ thống chỉ thực hiện lệnh gia hạn khi sắp hết hạn) với lệnh sau. Để biết thêm về cron job có thể đọc bài sau Hướng dẫn sử dụng Cronjob

certbot renew

Tổng kết

Trong bài viết này, VnCoder đã hướng dẫn chi tiết cho các bạn cách đăng kí chứng chỉ Let’s Encrypt cho website của bạn và cấu hình HTTPS trên trang admin. Nếu bạn nào không thực hiện được có thể comment bên dưới mình sẽ hướng dẫn thêm, Chúc các bạn thành công

MungND 

vncoder logo

Theo dõi VnCoder trên Facebook, để cập nhật những bài viết, tin tức và khoá học mới nhất!



Khóa học liên quan

Khóa học: Linux/Server