tôi có một NodeJS
ứng dụng với express.js
như một khung phụ trợ được triển khai trên đám mây bằng Kubernetes. K8s chạy trên mẫu Ubuntu. Ứng dụng được triển khai trong Kubernetes là của dịch vụ
loại Nút Cổng
. Điều này có nghĩa là ứng dụng sử dụng địa chỉ IP bên ngoài của các nút K8. Trong trường hợp của tôi, nó hiện đang sử dụng địa chỉ IP bên ngoài của một trong các nút chính.
Sau đó, tôi đã chỉ định tên máy chủ DNS cho ứng dụng bằng Đường hầm Cloudflare (còn gọi là Đường hầm Argo). Nó hoạt động hoàn toàn tốt vì tôi có thể truy cập ứng dụng từ bên ngoài cụm K8 với tên máy chủ DNS đã được giải quyết. Tuy nhiên, tôi cũng có thể truy cập ứng dụng trực tiếp từ a.b.c.d: 31130
.
Đây là một đoạn trích từ config.yml
tệp được sử dụng để tạo đường hầm Cloudflare:
đường hầm: **********8ab68bscjbi9cddhujhdhbh
tệp thông tin xác thực: /home/sebastian/.cloudflared/************8ab68bscjbi9cddhujhdhbh.json
xâm nhập:
- tên máy chủ: myapp.test.io
dịch vụ: http://a.b.c.d:31130
- dịch vụ: http_status:404
Mối quan tâm của tôi ở đây là, làm cách nào để từ chối hoặc chặn quyền truy cập IP trực tiếp vào ứng dụng vì tôi không muốn tiết lộ địa chỉ IP và gây khó khăn cho bản thân từ quan điểm bảo mật?
Điều này có phải được cấu hình từ bên trong cụm Cloudflare hoặc K8 hay không cũng là điều tôi nghi ngờ. Mọi phản hồi và đề xuất sẽ được đánh giá cao.