Nginx – HTTPS – Tạo SSL certificate

Hypertext transport protocol (http) là giao thức cơ bản mà các web servers sử dụng để thực hiện các requests.

HTTPS là phiên bản bảo mật của giao thức đó. HTTPS bảo vệ thông tin được gửi giữa server và client bằng cách mã hóa nó. Điều này rất quan trọng để bảo vệ các trang web sử dụng thông tin nhạy cảm.

Để sử dụng https đầu tiên chúng ta cần tạo SSL certificate sau đó config trong Nginx.

Tạo SSL certificate

Bạn có thể nhận Chứng chỉ SSL từ Let’s Encrypt, Symantec, hay DigiCert. Tuy nhiên để test chúng ta sẽ tạo một SSL certificate. Nó sẽ không được tin cậy(trusted) nhưng nó sẽ cho phép chúng ta config Nginx với SSL.

Khi thực hiện các dự án thực tế, bạn có thể sử dụng Let’s Encrypt với Certbot tự động hoá.

Để tạo SSL chúng ta sẽ dùng openssl.

Kiểm tra openssl nếu chưa có thì install nó.

sudo apt-get -y install openssl

Chạy lệnh sau để tạo SSL 

openssl req -batch -x509 -nodes -days 365 -newkey rsa:2048 -keyout /etc/ssl/private/nginx.key -out /etc/ssl/certs/nginx.crt -batch

Kiểm tra 2 file nginx.crt và nginx.key vừa tạo.

ls /etc/ssl/private/nginx.key
ls /etc/ssl/certs/nginx.crt

Như vậy chúng ta đã có SSL certificate. Bài tiếp theo chúng ta sẽ sử dụng 2 file này để cấu hình cho Nginx.