Điểm:1

AWS NLB với IP trong danh sách cho phép gửi đến

lá cờ in

Trước hết, tôi là người mới sử dụng các dịch vụ docker-compose và AWS nhưng tôi đã cố gắng tìm hiểu về nó và chuẩn bị nó một cách chính xác, mọi lời khuyên đều được hoan nghênh.

Tôi cần xuất bản một ứng dụng với ECS (phần này hoạt động tốt, tôi sử dụng docker-compose để thực hiện.Nó xuất bản chính xác với một ip công khai linh hoạt và nó hoạt động) nhưng quyền truy cập vào ứng dụng phải bị giới hạn bởi các IP được phép. Ý tưởng của tôi là xuất bản ứng dụng bằng IP công cộng (IP đàn hồi được chỉ định cho bộ cân bằng tải) và giới hạn quyền truy cập của các nhóm bảo mật ở đó.

Nhưng tôi có thể thêm bất kỳ loại nhóm bảo mật nào vào bộ cân bằng tải và nếu tôi đã sửa đổi nhóm bảo mật cho các dịch vụ của mình, chúng sẽ không hoạt động.

Câu hỏi của tôi là, tôi có thể gán IP trong danh sách trắng cho NLB không? Tôi đã thấy rằng tôi có thể làm giống như một IP danh sách trắng trong ALB nhưng nó không gán ip đàn hồi.

Điểm:1
lá cờ gp
Tim

Bạn có đang xuất bản ứng dụng web/API không? Nếu vậy, có lẽ bạn nên sử dụng bộ cân bằng tải ứng dụng thay vì bộ cân bằng tải mạng. NLB thường được sử dụng cho (các) ứng dụng không phải http, bạn có thể sử dụng chúng với (các) http nhưng ALB có xu hướng phù hợp hơn.

cân nhắc thiết kế

Tôi khuyên bạn nên suy nghĩ xem liệu bạn có thực sự cần một IP tĩnh hay không. Một số hệ thống cũ hoặc hệ thống nhúng có thể cần nó, nhưng hầu hết đều ổn với địa chỉ DNS. Nếu bạn thực sự cần một IP tĩnh, bạn có thể sử dụng một trong những kỹ thuật này (hoặc những người khác bạn tìm thấy trên Google) để cung cấp cho ALB một IP tĩnh, AWS Global Accelerator sẽ làm điều đó nhưng tôi không chắc đó là giải pháp tốt cho bạn. Bạn cũng phải xem xét tính khả dụng cao.

Về IP tĩnh cho danh sách cho phép, bạn có thể cân nhắc thực hiện xác thực bằng AWS Cognito được tích hợp với ALB (tốt nhất) hoặc bên trong bộ chứa của bạn. Chúng tôi thường liên kết với Azure AD, nhưng bạn có thể xác định người dùng/nhóm trong Cognito. Lưu lượng truy cập của người dùng vào ALB chỉ đến được bộ chứa/máy chủ đích nếu Cognito cho phép lưu lượng truy cập.

Đề xuất chính: AWS ALB được tích hợp với AWS Cognito để xác thực, nhóm bảo mật xung quanh ALB nếu bạn muốn nhưng không yêu cầu danh sách cho phép.

Câu hỏi gốc

ALB có các nhóm bảo mật. Cân bằng tải mạng thì không. Một NLB ẩn đối với lưu lượng truy cập, vì vậy bạn đặt một nhóm bảo mật xung quanh tài nguyên (vùng chứa) của mình thay vì bộ cân bằng tải của bạn.

Tùy chọn danh sách trắng IP ALB:

  • Bạn có thể đưa quyền truy cập vào ALB với một nhóm bảo mật vào danh sách trắng, nhưng bạn không thể đưa vào danh sách đen với một nhóm bảo mật. Có một số quy tắc tối đa, nhưng mỗi ALB có thể có nhiều SG được đính kèm - mặc dù vậy hãy cẩn thận vì nó có thể ảnh hưởng đến hiệu suất. Đây là đề xuất phụ của tôi dành cho bạn nếu bạn không muốn sử dụng Cognito.
  • Bạn có thể đưa vào danh sách trắng hoặc danh sách đen với Danh sách kiểm soát truy cập mạng (NACL)
  • Bạn có thể làm điều gì đó bên trong vùng chứa bằng tường lửa cục bộ, nhưng tôi không đề xuất điều đó

Các tùy chọn Danh sách cho phép của IP NLB:

  • Nhóm bảo mật xung quanh bộ chứa ECS
  • NACL xung quanh (các) mạng con
Xeven avatar
lá cờ in
Có, tôi đang xuất bản một ứng dụng web (trong tương lai cũng là api của nó).Tôi đã sử dụng NLB vì tôi có thể gán IP đàn hồi cho nó (nó cho phép tôi truy cập vào ứng dụng web và api), nhưng trong trường hợp ALB, tôi thấy rằng tôi có thể sử dụng SG để truy cập danh sách trắng mặc dù tôi không thể chỉ định một IP đàn hồi cho nó. Làm cách nào tôi có thể gán nó hoặc IP công cộng tĩnh cho ALB?
Tim avatar
lá cờ gp
Tim
Tôi đã chỉnh sửa câu trả lời của mình - đoạn 2. Bạn có yêu cầu khắt khe về IP tĩnh không? IP tĩnh có thể hạn chế khả năng cung cấp tính khả dụng cao của bạn. ALB với tên DNS là giải pháp tốt hơn trong hầu hết các trường hợp, cho ứng dụng web và API
Xeven avatar
lá cờ in
Có thể không bắt buộc phải có IP tĩnh vì đây là ứng dụng web mà chúng tôi chỉ muốn cho phép truy cập vào các IP cụ thể. Tôi rất mới trong mạng, bạn có thể giới thiệu một số tài liệu hoặc điều gì đó về nó không? Dù sao tôi sẽ thử nó. Cảm ơn Tim.
Tim avatar
lá cờ gp
Tim
Cân bằng tải ứng dụng với nhóm bảo mật để cung cấp danh sách cho phép sẽ là tùy chọn tốt nhất/dễ dàng nhất của bạn cho đến nay. Tài liệu AWS rất xuất sắc và có rất nhiều tài nguyên/hướng dẫn trực tuyến. Hãy xem câu trả lời cập nhật của tôi, xung quanh Cognito.
Xeven avatar
lá cờ in
Tôi quan tâm đến AWS Cognito, nó có thể đơn giản hóa một số bước. Tôi cần chức năng cơ bản trong tuần này nên trước tiên tôi sẽ thử về tùy chọn ALB/NLB và sau đó tích hợp một tùy chọn tốt để tìm hiểu và biết cách thực hiện trong tương lai. Trong khi tôi tìm kiếm thông tin, tôi đã thấy url này trong AWS https://aws.amazon.com/about-aws/whats-new/2021/09/application-load-balancer-aws-privatelink-static-ip-addresses-network-load-balancer/ Nó cũng sẽ giải quyết vấn đề của tôi chứ? Ngoài chủ đề: Bạn có thể giới thiệu tài liệu hay giải thích về AWS và mạng không, điều đó thật thú vị nhưng tôi biết rất ít về nó. Cảm ơn bạn rất nhiều vì đã giúp đỡ của bạn
MLu avatar
lá cờ id
MLu
@Tim thôi nào, Global Accelerator không phải là một "cách giải quyết chậm chạp"! Đó thực sự là câu trả lời chính xác khi ai đó cần ALB với IP tĩnh;)
Tim avatar
lá cờ gp
Tim
@MLu ha, tôi chưa thực sự sử dụng dịch vụ đó nên tôi không biết nhiều về nó ngoài những gì tôi phải học cho các chứng chỉ AWS khác nhau :) Tôi nghĩ mấu chốt ở đây là hiểu các yêu cầu và kiến ​​trúc để làm gì là cần thiết, hơn là làm cho ý tưởng ban đầu hoạt động. ALB với Cognito có lẽ là tốt nhất, ALB với SG là bước tiếp theo, sau đó có thể là GA với ALB.
MLu avatar
lá cờ id
MLu
@Tim thực sự, và bạn hoàn toàn chính xác. Tôi chỉ đang bình luận về tuyên bố "cách giải quyết của kludgy" w.r.t. GA - đó thực sự là một dịch vụ tuyệt vời và không quá đắt. Hãy xem https://speedtest.globalaccelerator.aws/;)
Tim avatar
lá cờ gp
Tim
@MLu trông giống như một dịch vụ hữu ích và không phải là bùn, và thậm chí Wellington đến Sydney cũng được hưởng lợi một chút. Tôi đã không sử dụng GA trước đây, hàng chục dịch vụ khác nhưng không phải dịch vụ đó! Đó không phải là giải pháp phù hợp cho câu hỏi này, nhưng nó có thể tốt cho các giải pháp khác - đặc biệt là doanh nghiệp. Giá cả khá hợp lý cho AWS;)

Đă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.