Sau khi tạo Cloudflare Tunnel thành công, mình đã có thể truy cập vào dịch vụ mạng nội bộ hông qua tên miền phụ đã thiết lập. Ví dụ: mở địa chỉ http://remote.thuanbui.me/guacamole
trên trình duyệt web để sử dụng dịch vụ Guacamole được cài trên máy ảo ở nhà.
Tuy nhiên, hiện tại bất kỳ ai cũng có thể truy cập vào dịch vụ này thông qua địa chỉ website trên. Và mình không muốn như thế!
Việc mở truy cập vào dịch vụ mạng ra công cộng kiểu này là một nguy cơ bảo mật, nhiều khả năng sẽ bị hack, mất thông tin cá nhân.
Để tối ưu bảo mật, mình sẽ thiết lập tính năng Zero Trust của Cloudflare cho dịch vụ mạng. Tất cả mọi truy cập đều phải xác thực danh tính rồi mới được cấp phép.
Zero Trust là mô hình bảo mật yêu cầu tất cả người dùng, dù thuộc hay không thuộc một tổ chức, cần phải xác thực danh tính, và đáp ứng các yêu cầu bảo mật trước khi được cấp hoặc giữ quyền truy cập vào các ứng dụng và dữ liệu.
Dưới đây là hướng dẫn cách thiết lập giới hạn truy cập cho dịch vụ mạng được thiết lập thông qua Cloudflare Tunnel.
1. Tạo Application
Truy cập vào mục Access trong menu bên trái, chọn Application. Sau đó bấm Add an application để tạo ứng dụng mới.
Chọn mục Self-hosted.
2. Thiết lập thông số
- Application name: Đặt tên cho ứng dụng. Mình tạm gọi là Guacamole.
- Session Duration: để mặc định 24 hours.
- Subdomain / Domain / Path: thiết lập giống như bạn đã làm khi tạo Cloudflare Tunnel.
Bấm Next
3. Cấu hình bảo mật
- Policy name: Restrict
- Rule action: Allow
- Session duration: để mặc định
- Selector: bạn có thể chọn nhiều loại ở đây. Mình chọn Emails, và nhập email vào mục Value.
Bấm Next
Phần này mình để mặc định. Bấm Add application để tạo ứng dụng mới.
Ứng dụng đã được thiết lập thành công trong Cloudflare Zero Trust.
4. Thử nghiệm kết nối
Sau khi thiết lập xong, mình truy cập lại vào địa chỉ web https://remote.thuanbui.me/guacamole/
, Cloudflare sẽ tự động chuyển hướng về trang Cloudflare Access, yêu cầu xác thực danh tính.
Nhập vào địa chỉ email đã được cấu hình ở phần trên, và bấm Send me a code.
Hệ thống sẽ thông báo email đã được gửi thành công. Yêu cầu nhập vào mã Code nhận được trong email và bấm Sign In.
Sau xác thực danh tính thành công, mình sẽ được chuyển lại về đúng dịch vụ Guacamole để có thể truy cập remote desktop vào các máy ảo.
(nguon: thuanbui.me)