Skip to content

Instantly share code, notes, and snippets.

@ngocquyhoang
Last active May 7, 2019 11:20
Show Gist options
  • Save ngocquyhoang/e30ad75ee08c2613d2943a8c439de9f6 to your computer and use it in GitHub Desktop.
Save ngocquyhoang/e30ad75ee08c2613d2943a8c439de9f6 to your computer and use it in GitHub Desktop.
Install SSL of Let’s Encrypt

Tổng quan

Công cuộc cài SSL trên server chia làm 3 giai đoạn

  1. Lấy chứng chỉ (Certificate)
  2. Khai báo chứng chỉ với web server
  3. Gia hạn chứng chỉ khi hết hạn (optional)

Có 1 vài công cụ cho phép thực hiện 2 việc trên 1 cách tự động, nổi tiếng nhất là Certbot

Cài Let’s Encrypt trên Ubuntu

  1. Cài cerbot
# UPDATE UBUNTU

sudo apt-get update && sudo apt-get -y upgrade 

# Thêm repository

sudo add-apt-repository ppa:certbot/certbot

# Nếu web server là apache 

sudo apt install python-certbot-apache

# Nếu web server là nginx 

sudo apt install python-certbot-nginx

  1. Lấy chứng chỉ và khai báo chứng chỉ với web server

2.1 Nếu web server là apache

Lưu ý với apache, cần enable mod_ssl thì mới có thể cài được.

sudo certbot --apache -d example.com -d www.example.com

# và sau đó làm theo hướng dẫn 

2.2 Nếu web server là nginx

sudo certbot --nginx -d example.com -d www.example.com

# và sau đó làm theo hướng dẫn 
  1. Gia hạn chứng chỉ SSL

Chứng chỉ SSL của Let’s Encrypt là miễn phí, nhưng không phải vĩnh viễn. Thời hạn của 1 chứng chỉ SSL do LE cung cấp là 90 ngày, 90 ngày sau chứng chỉ sẽ hết hạn, do vậy cần gia hạn chứng chỉ.

Certbot đã cung cấp sẵn cronjob, chúng ta không cần làm gì thêm. Cronjob sẽ chạy mỗi ngày 1 lần, để xem chi tiết cronjob có thể kiểm tra trong /etc/cron.d.

hoặc dùng câu lệnh để kiểm tra.

sudo certbot renew --dry-run

nếu không có trả về có nghĩa là việc gia hạn chứng chỉ đã được cài đặt.

Cài Let’s Encrypt trên CentOS

Quá trình cài đặt SSL trên CentOS không khác so với trên Ubuntu, chỉ cần thay apt bằng yum

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment