Let’s Encrypt là gì? Let’s Encrypt hoạt động như thế nào?

  • Last update: 22/07/2021

Nguyễn Lê Hoài Thương

Chuyên Gia Digital Marketing

Let's Encrypt là gì? Let's Encrypt hoạt động như thế nào? hình ảnh 1

Prodima sẽ cung cấp tổng hợp mọi thông tin xoay quanh Let’s Encrypt là gì? Cách Let’s Encrypt hoạt động như thế nào? Và những câu hỏi liên quan đến Let’s Encrypt.

Chúng ta bắt đầu ngay nhé!

Let’s Encrypt là gì?

Let’s Encrypt là một cơ quan cung cấp chứng chỉ TLS / SSL miễn phí thông qua giao thức ACME (Môi trường quản lý chứng chỉ tự động) và được phát triển bởi ISRG (Nhóm nghiên cứu bảo mật Internet).

Let’s Encrypt cung cấp cho người dùng một chứng nhận số phù hợp để kích hoạt HTTPS (có thể là TLS hoặc SSL) cho trang web của mình một cách thân thiện và hoàn toàn miễn phí.

=> Tất cả điều này nhằm đảm bảo một môi trường sử dụng website riêng tư, an toàn và tôn trọng giữa người dùng với nhau.

Let's Encrypt là gì
Let’s Encrypt là một cơ quan cung cấp chứng chỉ TLS / SSL miễn phí

Các loại chứng chỉ SSL

Let’s Encrypt hiện đang cung cấp 2 loại chứng chỉ phổ biến gồm: SSL ký tự đại diện và SSL tên miền đơn tiêu chuẩn (gồm cả tên miền chính và các tên miền phụ liên quan).

Các loại chứng chỉ SSL đều có thời hạn hoạt động là 90 ngày (tự động gia hạn) và được cài đặt trên các máy chủ của bạn.

Cơ quan cung cấp chứng chỉ là gì?

CA được viết tắt từ Certificate Authority – Nhà cung cấp các chứng chỉ kỹ thuật số cho các doanh nghiệp / người dùng để xác minh tính minh bạch của các máy chủ (server), phần mềm, mã nguồn…

CA đóng vai trò là bên thứ 3 có độ tin cậy cao được 2 bên tin tưởng để hỗ trợ xuyên suốt quá trình trao đổi thông tin diễn ra nhanh chóng và an toàn.

Let's Encrypt là gì? Let's Encrypt hoạt động như thế nào? hình ảnh 2
CA là Nhà cung cấp các chứng chỉ kỹ thuật số

Let’s Encrypt hoạt động như thế nào?

Giao thức ACME của Let’s Encrypt là xác định và thiết lập máy chủ HTTPS để website có thể tự động nhận được chứng chỉ SSL đáng tin cậy trên trình duyệt. Quy trình hoạt động của Let’s Encrypt sẽ diễn ra 2 bước sau:

Bước 1: Xác nhận tên miền

Let’s Encrypt sử dụng khóa công khai để xác định quyền quản trị máy chủ. Trình quản lý sẽ kết nối với Let’s Encrypt để tạo một cặp khóa mới và gửi thông tin xác nhận để chứng minh với CA rằng website này đang sở hữu một tên miền. Quá trình này tương tự như việc CA tự tạo tài khoản và thêm tên miền vào tài khoản đó.

Để hiểu rõ về cách hoạt động của Let’s Encrypt là gì, Prodima sẽ lấy một ví dụ về quy trình thiết lập website: https:.//example.com/ thông qua một trình quản lý chứng chỉ hỗ trợ cho Let’s Encrypt.

Let's Encrypt là gì? Let's Encrypt hoạt động như thế nào? hình ảnh 3
Minh họa 1

Trình quản lý sẽ gửi một yêu cầu đến Let’s Encrypt CA để xác nhận nó đang kiểm soát example.com. Let’s Encrypt sẽ xem xét thông tin nhận được và đưa ra các yêu cầu cần bạn phải hoàn thành để chứng minh sự thật. Lúc này bạn có 2 sự lựa chọn:

Khi nhận được kết quả hoàn thành, Let’s Encrypt sẽ gửi một cặp khóa riêng cho trình quản lý chứng chỉ để kiểm soát cặp khóa đó.

Trình quản lý sẽ đặt một tập tin liên quan trên URL được chỉ định trên website: https://example.com. Tiếp đến, trình quản lý sẽ ký một khóa riêng => sẽ tự động gửi thông báo cho CA rằng hoàn thành xác nhận.

Công việc của CA vào lúc này sẽ kiểm tra các yêu cầu đã đạt chuẩn hay chưa. CA sau khi xác minh chữ ký sẽ tải về các tập tin từ web server để đảm bảo có thể lấy được nội dung mong muốn.

Let's Encrypt là gì? Let's Encrypt hoạt động như thế nào? hình ảnh 4
Minh họa 2

Nếu chữ ký và các yêu cầu đáp ứng, trình quản lý sẽ nhận được ủy quyền trong việc quản lý chứng chỉ cho trang web example.com. Và cặp khóa mà trình quản lý sử dụng được gọi là “cặp khóa ủy quyền”.

Bước 2: Cấp chứng chỉ và thu hồi

Trình quản lý có thể thu hồi, thay đổi hoặc yêu cầu chứng chỉ cho tên miền đó bằng cách gửi yêu cầu quản lý chứng chỉ, chữ ký đã xác minh cùng cặp khóa ủy quyền.

Trình quản lý phải tạo PKCS#10 Certificate Signing Request và gửi yêu cầu đến Let’s Encrypt CA để được cung cấp một khóa công khai cũng như nhận được chứng chỉ cho tên miền example.com.

Trong đó, CSR sẽ gồm chữ ký xác nhận bằng khóa riêng của trình quản lý, nhưng phải tương ứng với khóa công khai trong CSR. Đồng thời, trình quản lý cũng phải ký xác nhận CSR cùng với khóa ủy quyền cho example.com. Điều này nhằm đảm bảo Let’s Encrypt CA hiểu được nó đã được ủy quyền.

Khi Let’s Encrypt CA nhận được yêu cầu => sẽ gửi một xác minh gồm cả 2 chữ ký. Nếu hoàn tất mọi thứ thì Let’s Encrypt CA sẽ trả lại khóa công khai từ CSR và chứng chỉ cho example.com cho trình quản lý.

Let's Encrypt là gì? Let's Encrypt hoạt động như thế nào? hình ảnh 5
Minh họa 3

=> Quy trình thu hồi chứng chỉ đang hoạt động cũng được thực hiện theo cách tương tự.

Let's Encrypt là gì? Let's Encrypt hoạt động như thế nào? hình ảnh 6
Minh họa 4

Triển khai ứng dụng khách ACME

Đề xuất: Certbot Let’s Encrypt Client

Certbot là một ứng dụng Let’s Encrypt phổ biến nhất và có trong hầu hết các bản phân phối Linux chính, bao gồm khả năng cấu hình tự động thuận tiện cho Apache và Nginx.

Sau khi cài đặt, tìm nạp chứng chỉ và cập nhật cấu hình Apache của bạn và thực hiện giống như sau:

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

Bạn cần hoàn thành một số câu hỏi bắt buộc từ Certbot => tải xuống chứng chỉ => cập nhật cấu hình Apache => tải lại máy chủ.

Sau đó, bạn sẽ được điều hướng đến trình duyệt web của mình. Nếu thấy khóa màu xanh lục xuất hiện, đồng nghĩa chứng chỉ hợp lệ và kết nối đã được mã hóa https://www.example.com

Vì chứng chỉ Let’s Encrypt chỉ có giá trị trong 90 ngày, nên điều quan trọng là phải thiết lập quy trình gia hạn tự động. Ghi lệnh sudo certbot renew sẽ gia hạn tất cả các chứng chỉ trên máy.

Đặt lệnh trên vào Crontab để khởi chạy hàng ngày và các chứng chỉ sẽ tự động được gia hạn ba mươi ngày trước khi hết hạn. Nếu một chứng chỉ được tạo ban đầu với –apache hoặc –nginx cùng các tùy chọn, Certbot sẽ tải lại máy chủ sau khi gia hạn thành công.

Các tùy chọn ứng dụng khách khác

Vì giao thức ACME mở và được ghi chép đầy đủ, nhiều ứng dụng khách thay thế đã được phát triển Let’s Encrypt duy trì danh sách danh sách các khách hàng ACME trên trang web của họ. Hầu hết các ứng dụng khách khác không có các tính năng cấu hình máy chủ web tự động của Certbot, nhưng chúng có các tính năng khác có thể thu hút bạn.

  • Có một ứng dụng khách được viết bằng tất cả ngôn ngữ lập trình, bao gồm các tập lệnh Shell, Go và Node.js. Điều này sẽ quan trọng nếu bạn đang tạo chứng chỉ trong một môi trường hạn chế và muốn loại bỏ Python cùng các Certbot khác.
  • Một số máy khách có thể chạy mà không cần đặc quyền root. Tốt nhất, bạn nên chạy số lượng mã đặc quyền ít nhất có thể.
  • Nhiều ứng dụng khách có thể tự động hóa hoạt động dựa trên DNS bằng cách sử dụng API của nhà cung cấp DNS để tự động tạo bản ghi TXT thích hợp. Thử thách DNS cho phép một số trường hợp sử dụng các mã hóa các máy chủ web không thể truy cập công khai.
  • Một số máy khách thực sự được tích hợp vào máy chủ web (web server), Cân bằng tải (Load balancing) hoặc Reverse proxy giúp định cấu hình và triển khai trở nên dễ dàng hơn.

Một số ứng dụng khách phổ biến:

  • lego: Được viết bằng Go – là bản cài đặt nhị phân một tệp và hỗ trợ các nhà cung cấp DNS khi sử dụng thử thách DNS.
  • acme.sh: Là một tập lệnh shell đơn giản có thể chạy ở chế độ không đặc quyền và tương tác với hơn 30 nhà cung cấp DNS.
  • Caddy: Là một máy chủ web đầy đủ được viết bằng Go và hỗ trợ tích hợp cho Let’s Encrypt.
Let's Encrypt là gì? Let's Encrypt hoạt động như thế nào? hình ảnh 7
Ứng dụng khách Caddy

Các câu hỏi liên quan đến Let’s Encrypt

Tôi đã có SSL, có thể hủy và tải Let’s Encrypt không?

Hoàn toàn có thể!

Đầu tiên, bạn nên hủy SSL hiện tại trước khi tải Let’s Encrypt. Tuy nhiên, bạn có thể mua các chứng chỉ SSL bằng IP chuyên dụng và con dấu trang động. Và đây cũng là lợi ích mà bạn sẽ không nhận được từ Let’s Encrypt.

Trước khi tiến hành hủy SSL, bạn hãy ghi nhớ những điều sau:

  • IP chuyên dụng của bạn đi cùng với SSL cũng sẽ bị hủy.
  • Tất cả các tên miền chính và tên miền phụ trên tài khoản lưu trữ của bạn sẽ được chỉ định một IP chia sẻ mới.
  • Cài đặt DNS của bạn cần được cập nhật với IP mới. Bạn có thể nhờ nhà cung cấp dịch vụ DNS cập nhật tự động.
  • Sau khi cài đặt DNS với IP mới (đã được cập nhật), có thể mất từ ​​vài giờ đến tối đa 72 giờ để tất cả các tên miền trên website của bạn được liên kết với IP mới (một quá trình được gọi là lan truyền DNS). Trong thời gian này, các trang web của bạn có thể bị lỗi khi được truy cập bằng tên miền.

Tại sao cần sử dụng chứng chỉ SSL?

Chứng chỉ SSL đã trở thành một điều cần thiết tuyệt đối trong ngành công nghiệp lưu trữ hiện nay. Có hai lợi ích chính khi sử dụng chứng chỉ SSL:

  • Mã hóa dữ liệu nhạy cảm như số thẻ tín dụng và thông tin cá nhân.
  • Tạo độ tin cậy cho khách truy cập website hiểu được rằng: dữ liệu của họ được bảo mật bằng kết nối an toàn và trang web của bạn được bảo đảm bởi CA đáng tin cậy.
Let's Encrypt là gì? Let's Encrypt hoạt động như thế nào? hình ảnh 8
Chứng chỉ SSL giúp bảo vệ website và bảo mật thông tin khách truy cập

Let’s Encrypt SSL có tự động được gia hạn không?

Chứng chỉ SSL Let’s Encrypt có giá trị trong 90 ngày và được trình quản lý tự động gia hạn chứng 30 ngày trước khi hết hạn để tránh gián đoạn dịch vụ. Nếu muốn ngừng sử dụng chứng chỉ, bạn có thể xóa nó khỏi Site Tools => Security => SSL Manager.

Làm cách nào để cài đặt Let’s Encrypt trên miền website?

Để cài đặt chứng chỉ SSL Let’s Encrypt trên tên miền của bạn, hãy chuyển đến Công cụ trang web => Bảo mật => Trình quản lý SSL .

Lời kết

Hy vọng những kiến thức cơ bản về Let’s Encrypt là gì cũng như cách hoạt động của Let’s Encrypt trên đây, giúp bạn hiểu thêm về tầm quan trọng của các chứng chỉ TLS / SSL đối với website của mình.

Nếu bạn thích bài viết này, chắc hẳn bạn sẽ thích thú với dịch vụ thiết kế website của chúng tôi. Prodima là đội ngũ chuyên gia về Digital Marketing tại TP. Hồ Chí Minh. Chúng tôi có thể mang đến cho bạn những chiến lược xuất sắc để giúp bạn bứt phá lượng truy cập và tăng doanh thu một cách bền vững. Liên hệ ngay với các chuyên gia của chúng tôi để được tư vấn ngay bây giờ với sự hỗ trợ tận tình 24/7.