Skip to content Skip to main navigation Skip to footer

Cài đặt SSL Let’s Encrypt với Certbot trên Apache

Cài đặt SSL Let’s Encrypt với Certbot trên Apache như thế nào?

Ở bài viết này AZDIGI sẽ hướng dẫn bạn cách cài đặt chứng chỉ SSL Let’s Encrypt lên máy chủ Apache một cách đơn giản và nhanh chóng nhất. Các bạn cùng xem qua bài viết nhé.

I. Tổng quan

SSL là gì?

SSL là một loại chứng chỉ giúp mã hóa các thông tin trên những thiết bị hoặc các ứng dụng có hỗ trợ mã hóa này bằng chứng chỉ SSL. Chứng chỉ SSL sẽ có hai phần gồm những phần Private Key và Public Key, trong đó Public Key nó sẽ được cài ở các ứng dụng đầu cuối mà trình duyệt hay các ứng dụng khác cũng có thể truy cập đọc được, còn Private Key nó sẽ được cài đặt ở các ứng dụng xử lý tiếp nhận dữ liệu.

Mục đích hoạt động của nó giống như chìa khóa để giúp giải mã những dữ liệu gửi đi từ thiết bị đầu cuối cũng đã được mã hóa thông qua Public Key.

Let’s Encrypt là gì?

Let’s Encrypt là một tổ chức xác thực SSL giống như Comodo, GeoTrust, Symantec nhưng cái điểm khác đó là họ là tổ chức phi lợi nhuận được thành lập với sự bảo trợ của các tổ chức lớn trên thế giới Cisco, Akamai, Mozilla, Facebook…Do đó, những chứng chỉ SSL Let’s Encrypt sẽ không khác gì với những loại chứng chỉ SSL khác mà chỉ khác nhau ở chỗ bạn phải gia hạn mỗi 90 ngày một lần nếu muốn tiếp tục sử dụng.

Ngoài ra các bạn có thể tham khảo thêm về Let’s Encrypt tại link trang chủ bên dưới.

Vậy để cài đặt SSL Let’s Encrypt lên máy chủ Apache thì làm sao, mời các bạn xem tiếp các bước thực hiện bên dưới.

II. Các bước thực hiện

Để cài đặt SSL Let’s Encrypt trên máy chủ Apache các bạn có thể thực hiện với 3 bước sau.

Bước 1: Cài đặt Cerbot Let’s Encrypt Client

Với Let’s Encrypt các bạn có thể cài đặt nhanh nó thông qua Certbot client  chỉ với vài dòng lệnh đơn giản, việc còn lại của bạn chỉ là ngồi chờ hệ thống chạy tự động.

  • Đầu tiên bạn cần cài đặt EPEL repository: 
AZDIGI Tutorial
yum -y install epel-release
    
  • Bây giờ thì cài đặt certbot-apache bằng câu lệnh sau: 
AZDIGI Tutorial
yum -y install certbot python2-certbot-apache mod_ssl
    
Cài đặt SSL Let's Encrypt với Certbot trên Apache
Như hình là đã cài đặt thành công Certbot

Bước 2: Cài đặt SSL Let’s Encrypt

Lưu ý: Bạn phải đảm bảo domain đã được trỏ về IP máy chủ ( Nếu cài đặt SSL cho cả www.domain.com thì sub www cũng phải trỏ về máy chủ nhé)

Để cài đặt SSL cho website , các bạn sử dụng câu lệnh sau. (Bạn nhớ thay azdigi.cf thành tên website của bạn)

AZDIGI Tutorial
certbot --apache -d azdigi.cf -d www.azdigi.cf
    
[root@template conf.d]# certbot --apache -d azdigi.cf -d www.azdigi.cf
Saving debug log to /var/log/letsencrypt/letsencrypt.log
Plugins selected: Authenticator apache, Installer apache
Enter email address (used for urgent renewal and security notices)
 (Enter 'c' to cancel): kiendt@azdigi.cf  (Nhập email của bạn)
Starting new HTTPS connection (1): acme-v02.api.letsencrypt.org

- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
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. Do you agree?
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
(Y)es/(N)o: Y   (Nhấn Y để đồng ý điều khoản)

- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
Would you be willing, once your first certificate is successfully issued, 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? We'd like to send you email about our work encrypting the web,
EFF news, campaigns, and ways to support digital freedom.
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
(Y)es/(N)o: N    (Nhấn N để từ chối các thông tin, tin tức từ letsencrypt và Certbot )
Account registered.
Requesting a certificate for azdigi.cf and www.azdigi.cf
Performing the following challenges:
http-01 challenge for azdigi.cf
http-01 challenge for www.azdigi.cf
Waiting for verification...
Cleaning up challenges
Created an SSL vhost at /etc/httpd/conf.d/azdigi.cf-le-ssl.conf
Deploying Certificate to VirtualHost /etc/httpd/conf.d/azdigi.cf-le-ssl.conf
Deploying Certificate to VirtualHost /etc/httpd/conf.d/azdigi.cf-le-ssl.conf
Redirecting vhost in /etc/httpd/conf.d/azdigi.cf.conf to ssl vhost in /etc/httpd/conf.d/azdigi.cf-le-ssl.conf

- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
Congratulations! You have successfully enabled https://azdigi.cf and
https://www.azdigi.cf
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -

IMPORTANT NOTES:
 - Congratulations! Your certificate and chain have been saved at:
   /etc/letsencrypt/live/azdigi.cf/fullchain.pem
   Your key file has been saved at:
   /etc/letsencrypt/live/azdigi.cf/privkey.pem
   Your certificate will expire on 2021-04-23. To obtain a new or
   tweaked version of this certificate in the future, simply run
   certbot again with the "certonly" option. To non-interactively
   renew *all* of your certificates, run "certbot renew"
 - If you like Certbot, please consider supporting our work by:

   Donating to ISRG / Let's Encrypt:   https://letsencrypt.org/donate
   Donating to EFF:                    https://eff.org/donate-le

Như vậy đã cài đặt thành công SSL thông qua Certbot, đường đẫn lưu file chứng chỉ của website sẽ nằm tại đường dẫn tương ứng

 - Certificate/etc/letsencrypt/live/azdigi.cf/fullchain.pem
 -Private Key: /etc/letsencrypt/live/azdigi.cf/privkey.pem 

Chứng chỉ Let’s Encrypt chỉ có hiệu lực trong 90 ngày, các bạn có thể gia hạn thủ công hoặc thiết lập cronjob  để làm việc đó như sau

  • Gia hạn thủ công bằng cách chạy lệnh
AZDIGI Tutorial
certbot renew --dry-run
    

  • Thêm Cronjob để gia hạn tự động
AZDIGI Tutorial
export VISUAL=nano; crontab -e
    

Sau đó chép nội dung bên dưới vào

AZDIGI Tutorial
00 6 * * * /usr/bin/certbot renew --quiet
    

Chú thích: Cronjob này có nghĩa là cứ đúng 6:00 AM nó sẽ check chứng chỉ, nếu chứng chỉ hết hạn sẽ tự động gia hạn. Ngược lại, nếu còn hạn sẽ không thực hiện gia hạn.

Cài đặt SSL Let's Encrypt với Certbot trên Apache

Bước 3: Kiểm tra chứng chỉ sau cài đặt

Để kiểm tra chính xác hơn website của bạn đã được cài đặt thành công SSL chưa, bạn có thể kiểm tra thêm thông qua 2 cách bên dưới.

Cách 1: Kiểm tra từ trình duyệt

Bạn có thể truy cập website của mình ở trình duyệt và click vào biểu tượng ổ khóa như hình bên dưới kiểm tra. Tại đây sẽ hiển thị website đang sử dụng chứng chỉ của hãng nào, đồng thời cũng ghi rõ ngày cấp và ngày hết hạn.

Cài đặt SSL Let's Encrypt với Certbot trên Apache

Cách 2: Check từ trang ssllabs.com

Các bạn có thể truy cập trang SSL Checker theo đường dẫn: https://www.ssllabs.com/ssltest/

Sau đó bạn điền domain của mình vào và nhấn Submit . Lúc này toàn bộ thông tin về chứng chỉ của website sẽ được hiển thị đầy đủ như bên dưới.

Cài đặt SSL Let's Encrypt với Certbot trên Apache

III. Tổng kết

Như vậy ở bài viết này AZDIGI đã hướng dẫn bạn cách cài đặt nhanh SSL Let’s Encrypt lên website thông qua Certbot một cách nhanh chóng và đơn giản nhất. Việc cài đặt SSL tưởng chừng đơn giản này nhưng lại giúp ích khá nhiều cho website của bạn trong việc bảo mật cũng như rất tốt cho SEO. Hy vọng bài viết này sẽ giúp bạn cài đặt thành công.!

Nếu thấy bài viết hữu ích, hãy chia sẻ rộng rãi đến mọi người để cùng biết cách cài đặt nhé. Ngoài ra Các bạn có thể xem qua một số bài viết khác về kiến thức Linux tại link bên dưới

Nếu các bạn cần hỗ trợ các bạn có thể liên hệ bộ phận hỗ trợ theo các cách bên dưới: