Let’s Encrypt là gì? Có vai trò như thế nào? Cách tạo chứng chỉ SSL miễn phí với Let’s Encrypt ra sao? Mời bạn cùng Auctionsupplies tìm hiểu mọi thông tin cần biết về Let’s Encrypt ngay trong bài viết dưới đây bạn nhé!
SSL Let’s Encrypt là gì?
Let’s Encrypt là nhà cung cấp chứng chỉ SSL miễn phí, một cách hoàn toàn tự động, hoạt động chủ yếu vì mục tiêu lợi ích của cộng đồng. Nó được quản lý trực tiếp bởi Internet Security Research Group (ISRG).
Let’s Encrypt cung cấp cho hầu hết những người quản trị website của nó một chứng nhận số cần thiết để có thể đăng ký HTTPS (SSL hoặc TLS) sau khi hoàn thiện thiết kế website của mình, và theo một cách thân thiện nhất có thể. Tất cả là vì một mục tiêu quan trọng nhất, đó là nhằm tạo ra một môi trường Web an toàn, riêng tư, bảo mật và tôn trọng người dùng hơn.
Lợi ích khi dùng Let’s Encrypt
- Miễn phí: Chỉ với việc sở hữu một tên miền, bạn hoàn toàn có thể sử dụng Let’s Encrypt để có thể có được chứng chỉ rất đáng tin cậy mà lại miễn phí hoàn toàn.
- Tự động: Phần mềm được chạy hoàn toàn trên máy chủ web có thể tương tác với Let’s Encrypt để sở hữu chứng chỉ SSL nhanh chóng, cấu hình an toàn để sẵn sàng sử dụng ngay và tự động thay mới khi cần thiết.
- An toàn: Let’s Encrypt được hoạt động như một nền tảng thúc đẩy những TLS tốt nhất, cả về phía CA (Certificate Authority) và giúp cho nhiều nhà khai thác trang web đảm bảo được độ an toàn cho máy chủ của mình một cách đúng đắn nhất.
- Hợp tác: Cũng như nhiều giao thức Internet cơ bản khác hiện nay, Let’s Encrypt luôn nỗ lực cố gắng để mang lại lợi ích lớn nhất cho cộng đồng và không nằm dưới sự kiểm soát của bất kỳ một tổ chức hay cá nhân nào.
Let’s Encrypt hoạt động như thế nào?
Mục tiêu chính của Let’s Encrypt và giao thức ACME là thiết lập máy chủ HTTPS và để có thể khiến cho nó tự động có được những chứng nhận đáng tin cậy trên trình duyệt mà không hề có bất cứ sự can thiệp nào của con người vào. Điều đó đã được thực hiện bằng cách chạy một trình quản lý chứng chỉ ngay ở trên máy chủ web.
Xác nhận tên miền
Let’s Encrypt thường xác định quyền quản trị của máy chủ với hình thức khóa công khai. Đầu tiên, phần mềm quản lý sẽ tiến hành tương tác với Let’s Encrypt, nó có thể tạo ra một cặp khóa mới và chứng minh được với Let’s Encrypt CA rằng máy chủ đang kiểm soát được một hoặc một vài tên miền. Điều này cũng giống với quá trình CA truyền thống khi thực hiện việc tạo tài khoản và thêm tên miền vào tài khoản đó.
Để bắt đầu được quá trình này, trình quản lý sẽ yêu cầu Let’s Encrypt CA cung cấp được các thông tin cần thiết để chứng minh được rằng nó vẫn đang kiểm soát được example.com. Sau đó, Let’s Encrypt sẽ tiến hành xem xét và đưa ra những yêu cầu, công việc của bạn là cần hoàn thành nó để chứng minh là bạn có quyền kiểm soát tên miền. Bạn sẽ có hai sự lựa chọn sau đây:
- Cung cấp một bản ghi DNS dưới tên example.com
- Cung cấp nguồn HTTP dưới URL được biết đến trên https://example.com/
Sau khi hoàn thành tất cả các yêu cầu cần thiết, Let’s Encrypt sẽ cung cấp cho trình quản lý chứng chỉ một cặp khóa riêng biệt nhằm chứng minh rằng nó đã kiểm soát cặp khóa đó.
Tiếp theo đó, trình quản lý tiến hành đặt một tập tin trên đường dẫn được chỉ định ở trang web có địa chỉ là https://example.com. Trình quản lý cũng tiếp tục ký một khóa riêng, hoàn thành xong sẽ thông báo cho CA biết được rằng nó đã hoàn thành xác nhận.
Tiếp theo CA sẽ tiến hành thực hiện kiểm tra xem các yêu cầu đưa ra đó đã được thỏa mãn hay chưa. CA sẽ xác minh chữ ký,và cố gắng tải về tập tin từ máy chủ web và để xác minh rừng nó sẽ lấy được đúng nội dung.
Trong trường hợp chữ ký hợp lệ, và những yêu cầu đó đã được thỏa mãn, trình quản lý được xác định bằng khóa công khai khi được ủy quyền để làm quản lý chứng chỉ cho trang web example.com. Cặp khóa mà được trình quản lý sử dụng cho example.com có tên gọi là “cặp khóa ủy quyền”.
Cấp chứng chỉ và thu hồi
Sau khi trình quản lý đã sở hữu được “cặp khóa ủy quyền” thì các công việc như yêu cầu, đổi mới, hay thu hồi chứng chỉ SSL đều trở nên dễ dàng hơn, chỉ cần gửi thông điệp quản lý chứng chỉ và ký với cặp khóa ủy quyền.
Để có thể có được chứng chỉ cho tên miền, trình quản lý sẽ tạo PKCS#10 Certificate Signing Request, yêu cầu Let’s Encrypt CA phát hành một chứng chỉ cho example.com với một khóa công khai được chỉ định trước. Tiếp đó, CSR bao gồm chữ ký bằng khóa riêng tương ứng với khóa công khai trong CSR. Trình quản lý cũng thực hiện ký cả CSR với khóa ủy quyền cho example.com để Let’s Encrypt CA biết được rằng nó đã được ủy quyền.
Khi Let’s Encrypt CA nhận được yêu cầu xong, nó sẽ thực hiện việc xác minh cả hai chữ ký. Nếu không có sai sót gì nữa thì nó đưa ra một chứng chỉ cho example.com với khóa công khai từ CSR và trả trở lại cho trình quản lý.
Việc thu hồi chứng chỉ hoạt động cũng được thực hiện giống như vậy. Trình quản lý ký yêu cầu thu hồi với cặp khóa ủy quyền cho example.com và Let’s Encrypt CA nhằm xác minh được rằng yêu cầu đó đã đúng là được ủy quyền hay chưa. Sau đó, nó sẽ xuất thông tin để thu hồi chứng chỉ vào những kênh thu hồi thông thường hay sử dụng (như CRL, OCSP), và dựa vào các bên thứ 3, ví dụ như trình duyệt để chúng không chấp nhận chứng chỉ đã bị thu hồi.
Các lưu ý khi sử dụng Let’s Encrypt
Sau 90 ngày thì bạn lại phải gia hạn một lần.
Let’s Encrypt đã nêu rõ 2 nguyên nhân cho việc gia hạn này như sau:
- Bảo mật: Hạn chế những rủi ro về bảo mật, bị đánh cắp khoá và chứng chỉ đã được cấp hiện tại.
- Khuyến khích tự động hoá và cấp phát mới chứng chỉ là một việc quan trọng và cần thiết trong khi sử dụng.
Let’s Encrypt cũng khuyến cáo người dùng nên dành thời gian tự động đổi mới giấy chứng nhận sau 60 ngày để đảm bảo an toàn.
Let’s Encrypt chỉ cung cấp xác thực được cho tên miền của bạn và chỉ phù hợp để giúp cho bạn dễ dàng hơn trong việc sử dụng thử nghiệm SSL cho website của bản thân.
Hướng dẫn tạo SSL với Let’s Encrypt
Truy cập SSH
- Truy cập Control Panel, ở mục truy cập SSH bạn ấn chọn Enabled, chọn Cập nhật để kích hoạt truy cập SSH
- Sau đó bạn thực hiện cài đặt ACME client rồi đến Composer
- Tiếp đó, bạn tiếp tục sử dụng trình File Manager để di chuyển
Cài đặt SSL từ Control Panel
Khi đã có được 2 files là fullchain.pem và key.pem, chúng ta tiếp tục vào mục SSL ở trong Control Panel
Bạn tiếp tục thực hiện theo các bước dưới đây:
- Ấn domain cần tiếp tục thực hiện việc cài đặt
- Sao chép nội dung file fullchain.pem và dán vào Certificate: (CRT)
- Sao chép nội dung file file key.pem và dán vào Private Key: (KEY)
- Ấn nút Cài đặt và sau đó chỉ cần ngồi đợi một chút để quá trình cài đặt hoàn thành, nhấn F5 và xem sau đó trang web của bạn đã hiển thị được trên HTTPS hay chưa. Có hiện ra thì tức là bạn đã thành công! Sau đó, bạn chỉ cần để SSL tự động gia hạn, chúng ta sẽ thực hiện việc cài đặt Cron Job.
- Mở Control Panel, chọn “Cron Job nâng cao”
- Nhập Command để có thể chạy bằng code sau: php acme-client/bin/acme issue –domains yourdomain.com,www.yourdomain.com –path /home/username/public_html –server letsencrypt
- Hoàn tất rồi, bạn nhấn Lưu để kết thúc nhé!
Bài viết trên của chúng tôi đã giúp bạn hiểu hơn về Let’s Encrypt cùng với cách tạo chứng chỉ hoàn toàn miễn phí. Chúc bạn sẽ tự tạo được cho mình chứng chỉ SSL miễn phí nhé!