Việc cài đặt SSL free của Lets Encrypt trên các Control Panel khá là đơn giản vì nó có giao diện đồ họa, rất dễ xử lý. Tuy nhiên khi dùng Laravel ta ko thể làm như vậy mà tất cả đều phải qua dòng lệnh, bài này tôi sẽ hướng dẫn các bạn cách cài SSL miễn phí cho tên miền chạy trên Laravel (Ubuntu 16.04).
Hãy lưu ý bài hướng dẫn tôi dùng quyền Root chính vì thế nếu các bạn ko có root hãy thêm sudo vào trc tất cả câu lệnh.
Trc hết ta cần update trc đã
apt-get update
Sau đó tiền thành tải Certbot, nói một cách đơn giản thì nó sẽ giúp bạn cài SSL từ Lets Encrypt một cách tự động và dễ dàng hơn bao giờ hết.
wget https://dl.eff.org/certbot-auto
Phần quyền cho file tải về sau đó cài đặt
chmod a+x ./certbot-auto./certbot-auto
Quá trình cài sẽ diễn ra trong một lúc, thông báo cài thành công
Installing new version of config file /etc/ssl/openssl.cnf ... Setting up virtualenv (15.0.1+ds-3ubuntu1) ... Setting up libffi-dev:amd64 (3.2.1-4) ... Processing triggers for libc-bin (2.23-0ubuntu10) ... Creating virtual environment... Installing Python packages... Installation succeeded.
Tiếp đó nó sẽ hỏi tên miền bạn muốn cài SSL, hãy chắn chắn tên miền đó đã trỏ về IP của VPS.
No names were found in your configuration files. Please enter in your domain name(s) (comma and/or space separated) (Enter 'c' to cancel): domain.com Obtaining a new certificate Performing the following challenges: http-01 challenge for domain.com Waiting for verification... Cleaning up challenges Created an SSL vhost at /etc/apache2/sites-available/000-default-le-ssl.conf Enabled Apache socache_shmcb module Enabled Apache ssl module Deploying Certificate for domain.com to VirtualHost /etc/apache2/sites-available/000-default-le-ssl.conf Enabling available site: /etc/apache2/sites-available/000-default-le-ssl.conf
Tiếp đó bạn dc chọn chỉ dùng Https hoặc dùng cả http và https. Nếu bạn chắc chắn web có thể chạy Https thì chọn 2, còn ko thì nên chọn 1, ta có thể dùng .htaccess để ép chạy Https sau cũng dc.
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): 1
-------------------------------------------------------------------------------
Congratulations! You have successfully enabled https://domain.com
Tiếp theo hãy mở file .ENV và đổi APP_URL = https://domain.name
Thường thì sẽ dc luôn tuy nhiên bạn có thể khởi động lại Apache cho chắc ăn.
service apache2 restart
Giờ hãy truy cập lại trang web của bạn xem dc chưa. Nếu như hình dưới là thành công. Lưu ý, hiện thị cả tên Công Ty là dịch vụ trả phí của Comodo. Nếu bạn cài free thì chỉ có chữ Bảo Mật màu xanh mà thôi, nếu vẫn chưa xanh thì rất có thể Database của bạn vẫn còn link http, hãy xem cách xử lý tại đây.