cài đặt chứng chỉ ssl trên apache/nginx miễn phí từ let’s

cài đặt chứng chỉ ssl trên apache/nginx miễn phí từ let’s

Mục lục

Let’s Encrypt là gì?

Kể từ 2014, Google đã chính thức ưu tiên các website hỗ trợ giao thức HTTPS trên kết quả tìm kiếm. Để giảm nguy cơ giả danh, đảm bảo an toàn cho người dùng, tích hợp chứng chỉ SSL vào một website có giao thức HTTPS là ưu tiên hàng đầu để có thể chứng thực và nâng hạng website trên các bộ máy tìm kiếm.

Bạn đang xem: cài đặt chứng chỉ ssl trên apache/nginx miễn phí từ let’s

Để có chứng chỉ SSL, bạn phải đăng ký với các tổ chức xác thực với 3 loại: DV, OV và EV tùy theo từng loại hình website của bạn.

Những tổ chức cấp và xác thực chứng chỉ như Comodo, GeoTrust, Symantec,… đều có có thu phí. Vậy, có thể chứng chỉ SSL miễn phí không?

Let’s Encrypt là một nhà cung cấp chứng chỉ số SSL (Certificate Authority) hoàn toàn miễn phí nhằm cung cấp chứng chỉ SSL cho cộng đồng nói chung. Đây là một dự án của Internet Research Group, một hiệp hội về dịch vụ cộng đồng.

Let’s Encrypt được tài trợ bởi nhiều công ty bao gồm Google, Facebook, Sucuri, Mozilla, Cisco, v.v…

Mô hình Lab

Trong bài viết này, Zhost sẽ sử dụng một máy chủ CentOS 7 có IP Public: 103.21.150.182 cài đặt Apache/Nginx Web server.

Tên miền: wiki.onlineaz.vn đã trỏ bản ghi A về IP của Web Server.

Cài đặt và cấu hình Let’s Encrypt sử dụng cho Apache trên CentOS 7

Cài đặt Apache và cấu hình Virtual Host

Các bước cài đăt Apache và cấu hình Virtual Host bạn có thể tham khảo tại bài viết: Cấu hình Virtual Host cho Apache (httpd)

Ở đây tôi sẽ cấu hình một Website đơn giản chạy trên tên miền wiki.onlineaz.vn.

Thử truy cập vào website bằng tên miền thông qua http (port 80). wiki.onlineaz.vn

Cài đặt Certbot và mod_ssl module cho Apache

Chúng ta cần cài đặt Certbot và kích hoạt mod_ssl module cho Apache trên máy chủ.

Certbot là một công cụ đơn giản và dễ sử dụng giúp đơn giản hóa việc tạo chứng chỉ và cấu hình các Service web sử dụng SSL.

Theo mặc định, gói Certbot không khả dụng trong kho lưu trữ hệ điều hành mặc định của CentOS 7. Chúng ta cần kích hoạt kho lưu trữ EPEL, sau đó cài đặt Certbot.

Cài đặt EPEL:

yum install epel-release -y

Cài đặt tất cả certbot và mod_ssl bằng lệnh sau:

yum install certbot python2-certbot-apache mod_ssl -y

Tạo chứng chỉ SSL và cấu hình hoạt động trên Apache

Chạy lệnh sau để tạo chứng chỉ SSL cho miền của bạn:

certbot -apache -d wiki.onlineaz.vn

Hoặc bạn cũng có thể tạo ra một chứng chỉ mà có thể sử dụng cho nhiều tên miền bằng cách thêm option -d:

Có thể bạn quan tâm: chứng chỉ có giá trị trong bao lâu

certbot -apache -d wiki.onlineaz.vn -d wiki.onlineaz.vn -d wiki.onlineaz.vn -d wiki.onlineaz.vn

Nhập các tuỳ chọn như phía dưới:

Saving debug log to /var/log/letsencrypt/wiki.onlineaz.vn Plugins selected: Authenticator apache, Installer apache Enter email address (used for urgent renewal and security notices) (Enter ‘c’ to cancel): [email protected] <- Nhập email của quản trị viên Starting new HTTPS connection (1): wiki.onlineaz.vn – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – Please read the Terms of Service at wiki.onlineaz.vn/documents/LE-SA-v1.2-November-15-2017.pdf. You must agree in order to register with the ACME server at wiki.onlineaz.vn/directory – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – (A)gree/(C)ancel: A <- Nhập A để đồng ý – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – Would you be willing 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ập Y để đồng ý chia sẻ email để nhận tin tức hoặc N để từ chối Starting new HTTPS connection (1): wiki.onlineaz.vn Obtaining a new certificate Performing the following challenges: http-01 challenge for wiki.onlineaz.vn Waiting for verification… Cleaning up challenges Created an SSL vhost at /etc/httpd/sites-available/wiki.onlineaz.vn Deploying Certificate to VirtualHost /etc/httpd/sites-available/wiki.onlineaz.vn Enabling site /etc/httpd/sites-available/wiki.onlineaz.vn by adding Include to root configuration

Tiếp theo hãy chọn tuỳ chọn 1 hoặc 2 để tiếp tục. trong đó:

    • 1 Là sẽ chỉ tải xuống chứng chỉ SSL và bạn cần cấu hình Apache theo cách thủ công để sử dụng chứng chỉ SSL.
    • 2 Là sẽ tự động tải xuống SSL và cấu hình Apache để sử dụng chứng chỉ SSL

Ở đây tôi chọn tự động cấu hình (2):

Please choose whether or not to redirect HTTP traffic to HTTPS, removing HTTP access. – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – 1: No redirect – Make no further changes to the webserver configuration. 2: Redirect – Make all requests redirect to secure HTTPS access. Choose this for new sites, or if you’re confident your site works on HTTPS. You can undo this change by editing your web server’s configuration. – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – Select the appropriate number [1-2] then [enter] (press ‘c’ to cancel): 2 <- Nhập 2 để tự động tạo và cấu hình SSL cho domain

Nếu nhận được thông báo bên dưới là đã thành công.

Congratulations! You have successfully enabled wiki.onlineaz.vn You should test your configuration at: wiki.onlineaz.vn/ssltest/analyze.html?d=wiki.onlineaz.vn – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – IMPORTANT NOTES: – Congratulations! Your certificate and chain have been saved at: /etc/letsencrypt/live/test.zhost.vn/wiki.onlineaz.vn Your key file has been saved at: /etc/letsencrypt/live/test.zhost.vn/wiki.onlineaz.vn Your cert will expire on 2020-07-17. 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” – Your account credentials have been saved in your Certbot configuration directory at /etc/letsencrypt. You should make a secure backup of this folder now. This configuration directory will also contain certificates and private keys obtained by Certbot so making regular backups of this folder is ideal. – If you like Certbot, please consider supporting our work by: Donating to ISRG / Let’s Encrypt: wiki.onlineaz.vn/donate Donating to EFF: wiki.onlineaz.vn/donate-le

Các tập tin chứng chỉ vừa tạo sẽ được lưu trong thư mục /etc/letsencrypt/live/test.zhost.vn

Certbot đồng thời làm tự động các việc sau:

  • Tạo 1 file Virtual Host mới cho domain wiki.onlineaz.vn lắng nghe trên port 443 (https) và điền đầy đủ cấu hình SSL.

  • Include file Virtual Host mới (https) vào file cấu hình của Apache (/etc/httpd/conf/httpd.conf)

  • Thêm đoạn cấu hình chuyển hướng từ http -> https trong Virtual Host cũ đang lắng nghe port 80 của domain wiki.onlineaz.vn

Kiểm tra hoạt động

Từ trình duyệt của User bạn vào wiki.onlineaz.vn sẽ được tự động chuyển hướng sang wiki.onlineaz.vn và chứng chỉ đã hoạt động.

Cài đặt và cấu hình Let’s Encrypt sử dụng cho Nginx trên CentOS 7

Lưu ý: Do sử dụng cùng một máy chủ để Lab vì vậy để thực hiện được bước này, ta cần Restore trạng thái máy chủ như ban đầu (Clear hết cấu hình của phần trước).

Cài đặt Nginx và cấu hình Virtual Host

Các bước cài đăt Nginx và cấu hình Virtual Host bạn có thể tham khảo tại bài viết: Cấu hình Virtual Host cho Nginx

Ở đây tôi sẽ cấu hình một Website đơn giản chạy trên tên miền wiki.onlineaz.vn.

Thử truy cập vào website bằng tên miền thông qua http (port 80). wiki.onlineaz.vn

Cài đặt Certbot

Cài đặt EPEL:

yum install epel-release -y

Cài đặt tất cả certbot bằng lệnh sau:

sudo yum install certbot-nginx -y

Tạo chứng chỉ SSL và cấu hình hoạt động trên Nginx

Chạy lệnh sau để tạo chứng chỉ SSL cho miền của bạn:

Có thể bạn quan tâm: Bật mí 8 cách kiếm tiền online không cần vốn cho học sinh, sinh viên, ngồi tại nhà không cần đi đâu cũng kiếm được tiền

certbot -nginx -d wiki.onlineaz.vn

Hoặc bạn cũng có thể tạo ra một chứng chỉ mà có thể sử dụng cho nhiều tên miền bằng cách thêm option -d:

Có thể bạn quan tâm: chứng chỉ có giá trị trong bao lâu

certbot -apache -d wiki.onlineaz.vn -d wiki.onlineaz.vn -d wiki.onlineaz.vn -d wiki.onlineaz.vn

Nhập các tuỳ chọn như phía dưới:

Saving debug log to /var/log/letsencrypt/wiki.onlineaz.vn Plugins selected: Authenticator nginx, Installer nginx Enter email address (used for urgent renewal and security notices) (Enter ‘c’ to cancel): [email protected] <- Nhập email của quản trị viên Starting new HTTPS connection (1): wiki.onlineaz.vn – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – Please read the Terms of Service at wiki.onlineaz.vn/documents/LE-SA-v1.2-November-15-2017.pdf. You must agree in order to register with the ACME server at wiki.onlineaz.vn/directory – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – (A)gree/(C)ancel: A <- Nhập A để đồng ý – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – Would you be willing 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ập Y để đồng ý chia sẻ email để nhận tin tức hoặc N để từ chối Obtaining a new certificate Performing the following challenges: http-01 challenge for wiki.onlineaz.vn Waiting for verification… Cleaning up challenges Deploying Certificate to VirtualHost /etc/nginx/conf.d/wiki.onlineaz.vn

Tiếp theo hãy chọn tuỳ chọn 1 hoặc 2 để tiếp tục. trong đó:

    • 1 Là sẽ chỉ tải xuống chứng chỉ SSL và bạn cần cấu hình Nginx theo cách thủ công để sử dụng chứng chỉ SSL.
    • 2 Là sẽ tự động tải xuống SSL và cấu hình Nginx để sử dụng chứng chỉ SSL

Ở đây tôi chọn tự động cấu hình (2):

Please choose whether or not to redirect HTTP traffic to HTTPS, removing HTTP access. – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – 1: No redirect – Make no further changes to the webserver configuration. 2: Redirect – Make all requests redirect to secure HTTPS access. Choose this for new sites, or if you’re confident your site works on HTTPS. You can undo this change by editing your web server’s configuration. – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – Select the appropriate number [1-2] then [enter] (press ‘c’ to cancel): 2

Nếu nhận được thông báo bên dưới là đã thành công.

Congratulations! You have successfully enabled wiki.onlineaz.vn You should test your configuration at: wiki.onlineaz.vn/ssltest/analyze.html?d=wiki.onlineaz.vn – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – IMPORTANT NOTES: – Congratulations! Your certificate and chain have been saved at: /etc/letsencrypt/live/test.zhost.vn/wiki.onlineaz.vn Your key file has been saved at: /etc/letsencrypt/live/test.zhost.vn/wiki.onlineaz.vn Your cert will expire on 2020-07-17. 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” – Your account credentials have been saved in your Certbot configuration directory at /etc/letsencrypt. You should make a secure backup of this folder now. This configuration directory will also contain certificates and private keys obtained by Certbot so making regular backups of this folder is ideal. – If you like Certbot, please consider supporting our work by: Donating to ISRG / Let’s Encrypt: wiki.onlineaz.vn/donate Donating to EFF: wiki.onlineaz.vn/donate-le

Các tập tin chứng chỉ vừa tạo sẽ được lưu trong thư mục /etc/letsencrypt/live/test.zhost.vn

Certbot đã tự động chỉnh sửa lại file Virtual Host của domain wiki.onlineaz.vn để thêm cấu hình chứng chỉ SSL và chuyển hưởng https sang https.

Kiểm tra hoạt động

Từ trình duyệt của User bạn vào wiki.onlineaz.vn sẽ được tự động chuyển hướng sang wiki.onlineaz.vn và chứng chỉ đã hoạt động.

Cấu hình gia hạn tự động SSL

Theo mặc định, chứng chỉ Let’s Encrypt có hiệu lực trong 90 ngày. Do đó, nên gia hạn chứng chỉ trước khi hết hạn. Lý tưởng nhất là tự động hóa quá trình gia hạn.

Để gia hạn chứng chỉ SSL thủ công, bạn chạy lệnh:

certbot renew -dry-run

Để tự động kiểm tra và gia hạn chứng chỉ sắp hết hạn, bạn hay tạo một cronjob đặt lịch tự động chạy lệnh gia hạn.

Chỉnh sửa crontab:

crontab -e

Thêm dòng sau vào cuối file:

* */12 * * * root /usr/bin/certbot renew >/dev/null 2>&1

Cronjob trên sẽ tự động chạy lệnh kiểm tra 2 lần/ngày và gia hạn chứng sắp hết hạn.

Zhost chúc các bạn thành công!

Xem thêm: cách chặn quảng cáo youtube trên android

Trả lời

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 *