Cài đặt SSL cho Wekan với Nginx Proxy

Đây là cách tạo SSL Reverse Proxy cho Wekan với sự hỗ trợ của webinoly trên Ubuntu 20.04. Ngoài ra, bạn cũng có thể dùng Certbot để tạo ssl.

OS: ubuntu 20.04
Weinoly (nginx, …) - Hướng dẫn cài đặt Webinoly trên server
Wekan - Hướng dẫn cài đặt Wekan trên Ubuntu 20.04

Để tùy biến hướng dẫn này, hãy nhập tên miền của bạn vào ô dưới

Thay bằng tên miền của bạn >>>

Tạo một trang web có cấu hình Reverse Proxy trong Nginx

sudo site =example.com= -proxy=[localhost:3001]

Vào đường dẫn /etc/nginx/sites-available/ và sửa file =example.com=. Tìm đến và nhận xét dòng include như bên dưới

	# WebinolyCustom
	# include apps.d/=example.com=-proxy.conf;
	# WebinolyCustomEnd

Khởi động lại nginx

nginx -t && nginx -s reload

Tạo thư mục để xác thực ssl

mkdir /var/www/=example.com=/htdocs

Tạo SSL

sudo site =example.com= -ssl=on

Bây giờ lại vào đường dẫn /etc/nginx/sites-available/ và sửa file =example.com= . Hiện tại file này đã được thêm cấu hình ssl. Bây giờ ta lại sửa dòng include về như lúc ban đầu:

# WebinolyCustom
include apps.d/=example.com=-proxy.conf;
# WebinolyCustomEnd

Khởi động lại nginx

nginx -t && nginx -s reload

:warning: Bạn có thể áp dụng cách này đê tạo ssl cho proxy ngược với những mục đích khác.

Hiện tại bạn có thể truy cập wekan qua ssl. Tuy nhiên mail gửi đi trong wekan vẫn là địa chỉ IP, vì vậy bạn cần thêm tên miền vào wekan nữa.

snap set wekan root-url='https://=example.com='
systemctl restart snap.wekan.wekan

Cách này có thể không gia hạn tự động ssl, vì vậy khi ssl hết hạn, cần gia hạn thủ công cho nó.

Gia hạn ssl thủ công

Quy trình Gia hạn ssl
Vào đường dẫn /etc/nginx/sites-available/ và sửa file =example.com= . Tìm đến và nhận xét dòng include như bên dưới

	# WebinolyCustom
	# include apps.d/=example.com=-proxy.conf;
	# WebinolyCustomEnd

Khởi động lại nginx

nginx -t && nginx -s reload

Gia hạn ssl

sudo site =example.com= -ssl=force-renewal

Sau khi gia hạn thành công, nhớ bỏ nhận xét dòng include apps.d/=example.com=-proxy.conf; và khởi động lại nginx.