Nếu bạn đã ufw
bật tường lửa, như được hướng dẫn bởi các hướng dẫn điều kiện tiên quyết, bạn sẽ cần phải điều chỉnh cài đặt để cho phép lưu lượng SSL. May mắn thay, Nginx đăng ký một vài hồ sơ với ufw
khi cài đặt.
Chúng ta có thể thấy các cấu hình có sẵn bằng cách gõ:
sudo ufw app list
Bạn sẽ thấy một danh sách như thế này:
Output
Available applications:
. . .
Nginx Full
Nginx HTTP
Nginx HTTPS
. . .
Bạn có thể xem cài đặt hiện tại bằng cách nhập:
sudo ufw status
Nó có thể sẽ giống như thế này, có nghĩa là chỉ lưu lượng HTTP được phép cho máy chủ web:
Output
Status: active
To Action From
-- ------ ----
OpenSSH ALLOW Anywhere
Nginx HTTP ALLOW Anywhere
OpenSSH (v6) ALLOW Anywhere (v6)
Nginx HTTP (v6) ALLOW Anywhere (v6)
Ngoài ra, hãy cho phép lưu lượng HTTPS, chúng ta có thể cho phép cấu hình "Nginx Full" và sau đó xóa phụ cấp hồ sơ "Nginx HTTP" dư thừa:
sudo ufw allow 'Nginx Full'
sudo ufw delete allow 'Nginx HTTP'
Trạng thái của bạn sẽ trông giống như sau:
sudo ufw status
Output
Status: active
To Action From
-- ------ ----
OpenSSH ALLOW Anywhere
Nginx Full ALLOW Anywhere
OpenSSH (v6) ALLOW Anywhere (v6)
Nginx Full (v6) ALLOW Anywhere (v6)
Bây giờ chúng ta đã thực hiện các thay đổi và điều chỉnh tường lửa của mình, có thể khởi động lại Nginx để thực hiện các thay đổi mới.
Trước tiên, nên kiểm tra để đảm bảo rằng không có lỗi cú pháp trong file. có thể làm điều này bằng cách gõ:
sudo nginx -t
Nếu mọi thứ thành công, bạn sẽ nhận được kết quả như sau:
Output
nginx: [warn] "ssl_stapling" ignored, issuer certificate not found
nginx: the configuration file /etc/nginx/nginx.conf syntax is ok
nginx: configuration file /etc/nginx/nginx.conf test is successful
Chú ý cảnh báo ngay từ đầu. Như đã nói ở trên, cài đặt cụ thể này sẽ đưa ra cảnh báo vì chứng chỉ tự ký của Chúng ta không thể sử dụng tính năng ghim SSL. Điều này được mong đợi và máy chủ vẫn có thể mã hóa các kết nối một cách chính xác.
Nếu đầu ra của bạn khớp với ở trên, file cấu hình của bạn không có lỗi cú pháp. chúng ta có thể khởi động lại Nginx một cách an toàn để thực hiện các thay đổi:
sudo systemctl restart nginx
Bây giờ, Chúng ta đã sẵn sàng để kiểm tra máy chủ SSL của Chúng ta.
Mở trình duyệt web của bạn và gõ https://
tiếp theo là tên miền hoặc IP của máy chủ của bạn vào thanh địa chỉ:
https://
server_domain_or_IP
Vì chứng chỉ mà chúng ta tạo không được ký bởi một trong các cơ quan cấp chứng chỉ đáng tin cậy của trình duyệt, bạn có thể thấy cảnh báo trông đáng sợ như cảnh báo bên dưới (thông tin sau xuất hiện khi sử dụng Google Chrome):
Điều này được mong đợi và bình thường. Chúng ta chỉ quan tâm đến khía cạnh mã hóa của chứng chỉ chứ không phải xác thực của bên thứ ba về tính xác thực của máy chủ. Click vào "ADVANCED" và sau đó liên kết được cung cấp để tiếp tục đến anyways lưu trữ của bạn:
Bạn nên được đưa đến trang web của bạn. Nếu bạn nhìn vào thanh địa chỉ của trình duyệt, bạn sẽ thấy một khóa có dấu "x" trên đó. Trong trường hợp này, điều này chỉ có nghĩa là chứng chỉ không thể được xác nhận hợp lệ. Nó vẫn đang mã hóa kết nối của bạn.
Nếu bạn đã định cấu hình Nginx với hai khối máy chủ, tự động chuyển hướng nội dung HTTP sang HTTPS, bạn cũng có thể kiểm tra xem chức năng chuyển hướng có chính xác không:
http://
server_domain_or_IP
Nếu điều này dẫn đến cùng một biểu tượng, điều này có nghĩa là chuyển hướng của bạn đã hoạt động chính xác.
Nếu chuyển hướng của bạn hoạt động chính xác và bạn chắc chắn rằng bạn chỉ muốn cho phép lưu lượng được mã hóa, bạn nên sửa đổi cấu hình Nginx để làm cho chuyển hướng vĩnh viễn.
Mở lại file cấu hình khối máy chủ của bạn:
sudo nano /etc/nginx/sites-available/example.com
Tìm return 302
và thay đổi nó thành return 301
:
/etc/nginx/sites-available/example.com
return
301 https://$server_name$request_uri;
Lưu và đóng tập tin.
Kiểm tra cấu hình của bạn để tìm lỗi cú pháp:
sudo nginx -t
Khi bạn đã sẵn sàng, hãy khởi động lại Nginx để chuyển hướng vĩnh viễn:
sudo systemctl restart nginx
Bạn đã cấu hình máy chủ Nginx của mình để sử dụng mã hóa mạnh cho các kết nối clients. Điều này sẽ cho phép bạn phân phối các yêu cầu một cách an toàn và sẽ ngăn bên ngoài đọc lưu lượng truy cập của bạn.
>> Xem phần 1» Tin mới nhất:
» Các tin khác: