Let’s Encrypt là cơ quan cấp chứng chỉ (CA) cung cấp chứng chỉ SSL/TLS miễn phí. Bạn có thể nhận được chứng chỉ SSL hợp lệ cho tên miền của mình miễn phí.

1. Bước 1 – Cài đặt Let Encrypt

Đầu tiên  các bạn cần cài đặt Certbot bằng cách chạy lần lượt các lệnh sau.

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

2. Bước 2: Nhận chứng chỉ SSL

Để xác thực SSL các bạn chạy lệnh sau

sudo certbot-auto certonly --standalone -d example.com -d www.example.com

Sau khi chạy lệnh trên các bạn sẽ cần cung cấp Email và trả lời một vài câu hỏi. Sau khi hoàn thành, nó sẽ cấp chứng chỉ SSL cho tên miền của bạn

3. Bước 3: Kiểm tra chứng chỉ SSL

Nếu mọi thứ đều ổn chứng chỉ ssl sẽ tạo trong thư mục /etc/letsencrypt/live/example.com. Các bạn có thể điều hướng đến thư mục /etc/letsencrypt/live/example.com và kiểm tra các tập tin.

cd /etc/letsencrypt/live/example.com
ls

4. Cấu hình virtual host

Chỉnh sửa lại file virtual host của website để website hoạt động với https

  • Với Nginx
server {
listen 80;
server_name example.com www.example.com;
return 301 https://www.example.com$request_uri;
}

server {
listen 443 ssl;
server_name www.example.com;
root /var/www/html
index index.html index.htm index.php

ssl_certificate /etc/letsencrypt/live/example.com/fullchain.pem;
ssl_certificate_key /etc/letsencrypt/live/example.com/privkey.pem;

// More .....
}
  • Với Apache
SSLEngine on
SSLCertificateFile /etc/letsencrypt/live/example.com/cert.pem
SSLCertificateKeyFile /etc/letsencrypt/live/example.com/privkey.pem
SSLCertificateChainFile /etc/letsencrypt/live/example.com/chain.pem

5. Bước 5: Cấu hình Auto Renew

Cuối cùng, hãy tạo Cronjobs để tự động gia hạn SSL mỗi khi hết hạn.

Để tạo Cronjos đầu tiên các bạn chạy lệnh sau

EDITOR=nano crontab -e

Sau đó dán nội dung dưới đây vào

0 2 * * * sudo /usr/bin/certbot -q renew

Như vậy chúng ta đã cài đặt xong Let’s Encrypt trên Ubuntu 18. Chúc bạn thành công.