Letsencrypt là gì? Cách tạo chứng chỉ SSL Free với Let’s Encrypt cực dễ

letsencrypt

Hiện nay thì những dịch vụ hosting đều sẽ hỗ trợ các chứng chỉ SSL miễn phí từ những tổ chức phi lợi nhuận SSL Let’s Encrypt nên các bạn cũng có thể tận dụng để giúp website của mình trở nên chuyên nghiệp và tạo được sự tin tưởng từ người dùng hơn. Vậy letsencrypt là gì? Cùng SEMTEK tìm hiểu ngay.

Chứng chỉ SSL và letsencrypt là gì?

Muốn hiểu được letsencrypt là gì thì trước tiên bạn cần nắm rõ về chứng chỉ SSL.

Chứng chỉ SSL nó là một loại chứng chỉ giúp nó 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.

letsencrypt
letsencrypt

Chứng chỉ SSL nó 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 rồi.

Nếu bạn muốn có chứng chỉ SSL thì bạn cũng phải đăng ký với những tổ chức xác thực như Comodo, GeoTrust, Symantec…với những chi phí nhất định, và chứng chỉ SSL nó cũng chia thành 3 loại như DV, OV hay EV còn tùy theo từng loại hình website của các bạn nữa.

Còn Let’s Encrypt là gì. Nó 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 letsencrypt nó sẽ không khác gì với những loại chứng chỉ SSL khác mà nó chỉ khác ở chỗ bạn phải gia hạn mỗi 90 ngày một lần.

Hướng dẫn cách tạo chứng chỉ SSL 

Đa phần các trang web hiện nay đều được hỗ trợ việc sử dụng SSL (Secure Socket Layer). Chứng chỉ này mã hóa dữ liệu truyền đi từ máy chủ web đến trình duyệt của người dùng để tăng tính bảo mật cho website của bạn. Bởi vậy, rất nhiều cá nhân và doanh nghiệp đã tin tưởng sử dụng chứng chỉ SSL với Let’s Encrypt cho website của mình.

Giả sử như người dùng đang sử dụng một server Ubuntu với tài khoản truy cập có quyền sudo và dùng web server là Nginx.

Các bước tạo SSL letsencrypt

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

Cài đặt gói Let’s Encrypt  với phiên bản mới đổi tên là certbot. Ngươi dùng sẽ sử dụng lệnh certbot thay cho letsencrypt như sau:

sudo apt-get update

sudo apt-get install letsencrypt

Bước 2: Tạo chứng chỉ SSL Certificate

Để người dùng có thể truy cập vào thư mục ẩn (.well-known) vào block server của file cấu hình website (thông thường chúng sẽ nằm trong /etc/nginx/sites-enabled hoặc /etc/nginx/conf.d) phục vụ cho việc xác thực, hãy bổ sung thêm đoạn cấu hình sau:

location ~ /.well-known {

allow all;

}

Tiếp theo hãy khởi động lại Nginx. Lưu ý sau khi khởi động xong nhớ kiểm tra lại xem website đó còn hoạt động hay không nhé!

sudo systemctl restart nginx

Tạo chứng chỉ SSL certificate bằng cách thay example.com bằng tên miền của chính bạn và /var/www/example.com là đường dẫn tới thư mục gốc của website như sau:

sudo letsencrypt certonly -a webroot –webroot-path=/var/www/example.com -d example.com -d www.example.com

Nếu như quá trình tạo SSL certificate thành công, giao diện sẽ hiện như sau:

IMPORTANT NOTES:

– If you lose your account credentials, you can recover through

e-mails sent to sammy@digitalocean.com

– Congratulations! Your certificate and chain have been saved at

/etc/letsencrypt/live/example.com/fullchain.pem. Your

cert will expire on 2016-03-15. To obtain a new version of the

certificate in the future, simply run Let’s Encrypt again.

Bước 3: Cách cấu hình SSL cho website

Để tăng tính bảo mật cho website của bạn, hãy tạo Strong Diffie-Hellman Group (sử dụng cho Nginx) theo câu lệnh:

sudo openssl dhparam -out /etc/ssl/certs/dhparam.pem 2048

Sau đó, tạo 1 snippet cho Nginx để có thể tái sử dụng được khi muốn cấu hình cho số lượng lớn website:

sudo nano /etc/nginx/snippets/ssl-params.conf

Nội dung file sẽ được hiển thị như sau:

ssl_protocols TLSv1 TLSv1.1 TLSv1.2;

ssl_prefer_server_ciphers on;

ssl_ciphers “EECDH+AESGCM:EDH+AESGCM:AES256+EECDH:AES256+EDH”;

ssl_ecdh_curve secp384r1;

ssl_session_cache shared:SSL:10m;

ssl_stapling on;

ssl_stapling_verify on;

ssl_dhparam /etc/ssl/certs/dhparam.pem;

resolver 8.8.8.8 8.8.4.4 valid=300s;

resolver_timeout 5s;

add_header Strict-Transport-Security “max-age=63072000; includeSubdomains”;

add_header X-Frame-Options DENY;

add_header X-Content-Type-Options nosniff;

Chỉnh sửa file cấu hình cho website

Tiến hành tạo redirect 301 cho block server listen 80 (http) nếu như bạn chỉ muốn support https. Lúc đó, người dùng truy cập với giao thức http sẽ tự động chuyển sang https.

server {

listen 80;

server_name example.com www.example.com;

return 301 https://$server_name$request_uri;

}

Tiếp tục tạo thêm 1 block server listen 443 (https):

server {

listen 443 ssl http2;

server_name example.com www.example.com;

ssl_certificate /etc/letsencrypt/live/example.com/fullchain.pem;

ssl_certificate_key /etc/letsencrypt/live/example.com/privkey.pem;

include snippets/ssl-params.conf;

root /var/www/example.com;

location ~ /.well-known {

allow all;

}

}

Bạn cũng nên lưu ý thay toàn bộ example.com bằng tên miền của mình và đường dẫn root /var/www/example.com tương tự như bước tạo SSL certificate ở trên. Sau khi đã cấu hình xong thì hãy khởi động lại Nginx theo câu lệnh:

sudo systemctl restart nginx

Đừng quên truy cập thử website để xem thành quả của mình nhé!

Cách cài đặt được SSL miễn phí lên Shared Hosting dùng cPanel

Sau khi tìm hiểu letsencrypt là gì. Bạn nên học cách cài đặt SSL dùng cPanel. Trước khi các bạn làm được việc này, tên miền của các bạn cũng phải được trỏ trực tiếp về hosting mà không cần thông qua bất kỳ proxy nào (như CloudFlare chẳng hạn), và tốt hơn hết bạn nên trỏ về hosting thông qua nameserver của nhà cung cấp đó nhé.

Cài tự động

Nếu hosting của bạn cũng có hỗ trợ tính năng cài SSL miễn phí trên Let’s Encrypt thì các bạn cũng sẽ tìm thấy mục tên là Let’s Encrypt SSL trong các bảng điều khiển cPanel như hình bên dưới.

letsencrypt
letsencrypt

Sau đó các bạn chọn tên miền của bạn và chọn Issue.

Và xong là thông báo thành công, nếu mà bạn bị lỗi (hiện thông báo màu đỏ) thì các bạn nhìn kỹ xem có lỗi gì nhé, thường hay gặp nhất là lỗi mà tên miền cần cài SSL chưa trỏ về hosting hoặc nếu các bạn đã trỏ rồi thì vào File Manager đổi tên tập tin .htaccess thành .htaccess_bak và thử lại.

Sau khi các bạn cài thành công thì nên đổi tên lại thành .htaccess.

Và bây giờ các bạn cũng có thể truy cập vào đường dẫn là https://tên-miền-của-bạn.com để thử giao thức https đã hoạt động được chưa nhé.

Nếu các bạn đã có website sẵn rồi thì trên hosting rồi thì các bạn chỉ cần cài plugin Really Simple SSL vào là website nó sẽ tự đổi sang giao thức HTTPS ngay nhé.

Gia hạn chứng chỉ Let’s Encrypt

Với những hosting có những hỗ trợ sẵn như letsencrypt thì hệ thống cũng sẽ tự động gia hạn cho các bạn và mỗi lần gia hạn như vậy thì sẽ có email thông báo tới.

Trường hợp mà các bạn nhận được email thông báo gia hạn bị thất bại thì các nguyên nhân chủ yếu đó là do xung đột từ tập tin .htaccess, do vậy các bạn cũng chỉ cần vào File Manager và đổi tên thư mục .htaccess thành .htaccess_bak và các bạn vào lại phần Let’s Encrypt SSL, chọn Reissue là hoàn tất xong.

Các bạn lưu ý, tại tập tin .htaccess ở đây là tập tin .htaccess nó nằm ở thư mục public_html. Nếu các bạn không thấy tập tin .htaccess nữa thì vào File Manager => Settings (phía tay phải) và chọn Show hidden files là thấy được nhé.

Cài thủ công

Dành cho những ai đã biết let’s encrypt là gì và muốn cài SSL theo cách thủ công. Nếu mà hosting của bạn không được hỗ trợ cài đặt tự động như mình đã hướng dẫn ở trang trước thì cũng có thể làm thủ công theo các bước dưới đây nhé.

Và để làm được như theo hướng dẫn này thì các bạn cũng cần có một tài khoản FTP chính của gói hosting (thường thì là thông tin giống thông tin đăng nhập vào hosting đó).

Bước 1. Tạo chứng chỉ

Đầu tiên thì các bạn truy cập vào và sau đó nhập tên miền của các bạn vào sau đó ấn nút Create Free SSL Certificate nhé.

Ghi chú: nếu mà các bạn cần phải tạo chứng chỉ dùng cho nhiều subdomain thì bạn nên điền nhiều tên miền vào một lúc nhé, ví dụ wpcoban.com, mail.wpcoban.com, abc.wpcoban.com).

Rồi sau đó các bạn chọn Automatic FTP Verification.

Tiếp theo các bạn điền thông tin đăng nhập FTP vào, phần Directory các bạn nên nhập tên thư mục gốc của các tên miền cần cài SSL thôi.

Nếu mà tên miền cần cài là addon domain hoặc subdomain thì các bạn cũng phải phải nhập đúng cái đường dẫn của tên miền đó, và các bạn chọn Download Free SSL Certificate để hoàn tất.

Sau khi các bạn nhập thông tin là đúng thì nó sẽ cho các bạn thông tin chứng chỉ SSL như sau:

Các bạn lưu lại đó và quay lại bảng điều khiển cPanel của hosting để làm bước kế tiếp theo nhé.

Bước 2. Cài chứng chỉ SSL vào cPanel

Bây giờ các bạn vào bảng điều khiển cPanel của host và tìm mục SSL/TLS.

Sau đó vào mục Certificates (CRT).

Sau đó ở phần Upload a New Certificate, các bạn cũng phải điền mã chứng chỉ Certificate mà các bạn nhận được ở bước 1 vào, Description điền mô tả gì cũng được. Sau đó chọn Save Certificate nhé.

Sau khi các bạn lưu thành công, các bạn ấn Go Back để có thể quay lại và chọn nút Install ở chứng chỉ mà các bạn vừa cho thêm vào, nhớ để ý cái mục Issuer phải là letsencrypt nhé.

Sau đó ở phần Private Key (KEY), các bạn phải điền mã Private Key mà bạn đã nhận được ở bươc 1 vào, sau đó các bạn ấn nút Install Certificate.

Nếu mà thông tin của bạn nhập là chính xác thì các bạn cũng sẽ nhận được thông báo như sau.

letsencrypt
letsencrypt
Bây giờ các bạn cũng có thể truy cập vào website theo giao thức https rồi. Nếu mà các bạn đã có website WordPress sẵn thì cũng chỉ cần cài plugin Really Simple SSL vào là được nhé.
Ở bài viết này chúng tôi đã giúp bạn hiểu letsencrypt là gì và hướng dẫn cho các bạn các bước cài SSL Let’s encrypt lên hosting nhanh chóng nhất. Chúc các bạn thành công.

Liên hệ với SEMTEK để tháo nút thắt cho website của bạn bằng giải pháp về Marketing!

SEMTEK Co,.LTD

🏡 Địa chỉ: 2N Cư Xá Phú Lâm D, Phường 10, Quận 6, TP.HCM
📧 Email: info@semtek.com.vn
☎️ Hotline: (+84)098.300.9285

Tìm kiếm liên quan
  • encrypt everything
  • certboat
  • encrypt this
  • enable let’s encrypt
Nội dung liên quan

Để lại một bình luận

Email của bạn sẽ không được hiển thị công khai. Các trường bắt buộc được đánh dấu *