1. Giới thiệu về Let’s Encrypt
Let’s Encrypt là một nhà cung cấp chứng chỉ SSL (Certificate Authority) hoàn toàn miễn phí. Đây là một dự án của Internet Research Group, một hiệp hội về dịch vụ cộng đồng.
Khi bản truy cập website mà có đỉa chỉ: https:// như thế có nghĩa là website đã được thiết lập SSL.

2. Các bước cài đặt
Giờ mình sẽ hướng dẫn cài đặt Let’s Encrypt cho CentOS 7 nhé.

STEP1: Cài đặt Certbot Let’s Encrypt Client.
Nếu đã cài đặt rồi thì bạn chỉ cần làm STEP2

Để sử dụng Let’s encrypt có được chứng chỉ SSL, việc đầu tiên ta cần cài đặt Certbot và mod_ssl, đây là một module apache, cung cấp cho SSL v3 encryption.

– Add CentOS 7 EPEL repository, sử dụng command line sau:

 yum install epel-release 

– Tiếp tục cài đặt các package bắt buộc:

 sudo yum install certbot python2-certbot-apache mod_ssl 

Khi xuất hiện câu hỏi y/n. Thì bạn ấn: y rồi ENTER

STEP2: Lấy chứng chỉ cho website của bạn
Trước khi run Step2 này bắt buộc đã phải có file vitualhost của apache, chính là file example.conf nằm trong thư mục : /etc/httpd/conf.d/
Run lệnh sau:

 sudo certbot --apache -d example.com 

Hoặc bạn có thể cài đặt cho phương thức www thì run lệnh sau:

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

Trong đó:
– example.com: là domain website của bạn cần cài ssl.
Sau khi ấn ENTER lúc sau màn hình có xuất hiện là nhập số như hình dưới.

Sau khi thành công một thông báo sẽ xuất hiện như sau:

Tất cả các certificate được để trong folder: /etc/letsencrypt/live

STEP3: Kiểm tra certificate
Nhập địa chỉ sau vào browser của bạn:
https://www.ssllabs.com/ssltest/analyze.html?d=example.com
Thay example.com, bằng domain của bạn vừa được cài đặt SSL
Kết quả:

STEP4: Tự động gia hạn Certificate
Mặc định mỗi certificate sẽ có hạn là 90 days. Vì thế bạn phải gia hạn cho nó trước khi hết hạn.
– Edit crontab:

 sudo crontab –e 

– Ấn phím i và thêm dòng sau vào:

 0 0,12 * * * python -c 'import random; import time; time.sleep(random.random() * 3600)' && certbot renew 

– Ấn tiếp Esc, sau đó ấn :wqENTER để thoát khỏi vim

Như vậy là hoàn thành cài đặt SSL hoàn toàn miễn phí cho website của bạn.

Từ lần sau bạn muốn cài đặt SSL cho website khác, thì bạn chỉ cần làm STEP2 là OK

Link tham khảo: https://www.digitalocean.com/community/tutorials/how-to-secure-apache-with-let-s-encrypt-on-centos-7

Với CENTOS 8, các bạn tham khảo link sau: https://www.tecmint.com/secure-apache-with-lets-encrypt-ssl-certificate-on-centos-8/

CHÚC CÁC BẠN THÀNH CÔNG!