Điểm:0

Từ chối quyền truy cập IP trực tiếp vào một ứng dụng được triển khai trong Kubernetes

lá cờ ru

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.

Điểm:1
lá cờ br

Từ góc độ kubernetes, Ingress-controller là cách tiêu chuẩn để hiển thị phụ trợ HTTP qua kết nối TLS từ cụm đến máy khách.

Bạn có thể xuất bản ứng dụng bằng chứng chỉ TLS. Khi tạo chứng chỉ TLS, bạn có thể chỉ định tên thay thế mà bạn sẽ cho phép ứng dụng của mình. Các tên hoặc địa chỉ IP khác sẽ không được phép truy cập trang web.

Dưới đây là một ví dụ về các tên thay thế. Chúng tôi có thể xóa địa chỉ IP nếu chúng tôi không muốn cho phép truy cập bằng IP.

Tên thay thế chủ đề X509v3:
                DNS:kmaster, DNS:kubernetes, DNS:kubernetes.default, DNS:kubernetes.default.svc, DNS:kubernetes.default.svc.cluster.local, Địa chỉ IP:10.96.0.1, Địa chỉ IP:172.16.16.100

Các ví dụ về TLS xâm nhập https://github.com/kubernetes/ingress-nginx/tree/main/docs/examples/tls-termination

Tên khác https://kubernetes.io/docs/tasks/administer-cluster/certificates/#openssl

Đăng câu trả lời

Hầu hết mọi người không hiểu rằng việc đặt nhiều câu hỏi sẽ mở ra cơ hội học hỏi và cải thiện mối quan hệ giữa các cá nhân. Ví dụ, trong các nghiên cứu của Alison, mặc dù mọi người có thể nhớ chính xác có bao nhiêu câu hỏi đã được đặt ra trong các cuộc trò chuyện của họ, nhưng họ không trực giác nhận ra mối liên hệ giữa câu hỏi và sự yêu thích. Qua bốn nghiên cứu, trong đó những người tham gia tự tham gia vào các cuộc trò chuyện hoặc đọc bản ghi lại các cuộc trò chuyện của người khác, mọi người có xu hướng không nhận ra rằng việc đặt câu hỏi sẽ ảnh hưởng—hoặc đã ảnh hưởng—mức độ thân thiện giữa những người đối thoại.