AWS 네트워크 ACL 규칙 제한 해결


12

VPC 네트워크 ACL에는 최대 40 개의 규칙이 적용될 수 있습니다.

시스템, 모든 포트 및 프로토콜을 통해 명시 적으로 액세스를 차단해야하는 50 개가 넘는 IP 주소 목록이 있습니다. 이는 ACL의 이상적인 목적이지만이 작업을 완료하는 데 방해가됩니다.

물론 각 호스트의 IPTables 에서이 작업을 수행 할 수 있지만 VPC의 모든 구성 요소 (예 : ELB)에 대한 모든 트래픽을 차단하고 싶습니다. 또한 이러한 규칙을 각 호스트가 아닌 한 곳에서 관리하는 것이 훨씬 이상적입니다.

시스템 / 플랫폼 수준 에서이 작업을 이해하지 못하는 방법이 있기를 바랍니다. 보안 그룹은 명시 적으로 허용되며 거부 조치가 없으므로 트릭을 수행하지 않습니다.


iptables 관리에 Ansible과 같은 프로비저닝 소프트웨어를 사용하면 완료됩니다. 분명히 EC2 인스턴스에서만 작동합니다. LBs 등이
아님

예, EC2에는 iptables를 사용하는 것이 좋지만 인바운드 트래픽의 99 %가 ELB 구조에 도달했습니다. 우리는 우리가 다루어야 할 알려진 사기꾼들로부터 많은 타격을 입게 될 것입니다. 입력 주셔서 감사합니다
emmdee

1
50 개의 개별 IP를 차단하는 것은 이상한 요구 사항처럼 보입니다.
user253751

@immibis 홀수입니다. 합법적 인 고객을 속이려고하는 많은 사기꾼이 있습니다. 우리는 그들의 계정을 차단하지만 명백한 러시아 / 나이지리아 / 중국 사기꾼과 같은 완전한 IP 금지도합니다. 우리 제품에는 많은 사용자 상호 작용, 채팅 등이 있습니다-플랫폼과는 전혀 다릅니다.
emmdee

1
... 스 캐머 중 동적 IP가없는 것은 없습니까?
user253751

답변:


8

여기 왼쪽 필드 아이디어가 있습니다. 각 IP의 VPC 라우팅 테이블에 "깨진"경로를 추가하여 50 개의 차단 된 IP를 "널 라우팅"할 수 있습니다.

이렇게하면 IP의 트래픽이 인프라에 닿는 것을 막을 수는 없지만 (NACL 및 SG만이이를 방지 할 수 있음) 모든 트래픽이 "고향"으로 돌아가는 것을 방지 할 수 있습니다.


대중 교통 게이트웨이를 생성하고 라우팅을 설정 한 다음 대중 교통 게이트웨이를 삭제하여 라우팅 된 트래픽을 실수로 한 번 무효화했습니다. 더 쉬운 방법이있을 수 있습니다.
Tim

나쁜 생각이 아닙니다. 감사합니다. 실험 해 볼게요 WAF 비용을 지불하지 않고 올바른 길을 갈 수 있습니다
emmdee

0

NACL에 대한 제한을 늘릴 방법이 없으며 많은 NACL 규칙이 네트워크 성능에 영향을줍니다.

무엇보다도 아키텍처 문제가있을 수 있습니다.

  1. 인스턴스가 퍼블릭 서브넷에 있어야합니까?
  2. 인바운드 트래픽을 제한하기 위해 NAT 게이트웨이를 설정 했습니까?
  3. 퍼블릭 서브넷에 있어야하는 인스턴스의 경우 최소 인바운드 보안 그룹 규칙이 있습니까?
  4. CloudFront 및로드 밸런서에 대한 원치 않는 트래픽을 차단하기 위해 AWS WAF IP 일치 조건 을 사용 하고 있습니까?

NACL 규칙 제한에 도달하는 경우 VPC 아키텍처에 대한 AWS 권장 접근 방식과 WAF (및 Shield for DDoS) 와 같은 서비스를 사용 하여 원하지 않는 트래픽과 명백한 공격을 차단 하지 않기 때문일 가능성이 높습니다 .

DDoS 공격이 우려되는 경우 : Amazon CloudFront 및 Amazon Route 53을 사용하여 DDoS 공격으로부터 동적 웹 애플리케이션을 보호하는 방법


NAT 게이트웨이는 인바운드가 아닌 아웃 바운드 트래픽을위한 것입니다.
Tim

@Tim을 수정하여 인스턴스를 NAT 게이트웨이 뒤에있는 프라이빗 서브넷에 배치하면 인바운드 공격을하지 않고도 아웃 바운드 연결이 가능하며 NACL에서 IP를 차단할 필요가 없습니다
Fo.

WAF는 트래픽이 많은 웹 사이트의 경우 상당히 비쌉니다. 그런 이유로 그것을 피하려고합니다. 보안 그룹이 명시 적으로 차단할 수없고 웹 ACL에이 제한이 있다는 사실은 주요 현금 확보와 같습니다.
emmdee

설명되지 않은 유스 케이스에 달려 있다고 생각합니다. 이러한 IP를 차단하는 이유가 웹 서버를 공격하고 있기 때문에 여전히 서버에 대한 공개 액세스 권한이 있어야합니다. 이는로드 밸런서 또는 프록시를 의미합니다. 이 경우 프라이빗 서브넷은 도움이되지 않습니다.
Tim

나의 유스 케이스는 99 % ELB가 인바운드 트래픽을 취하고있는 것입니다. EC2 인스턴스는 ELB 뒤에 비공개입니다.
emmdee

0

이것은 정확히 당신이 요구 한 것이 아니지만 일을 충분히 잘 할 수 있습니다.

인프라 앞에 CloudFront를 설정하십시오. IP 일치 조건 을 사용 하여 트래픽을 효과적으로 차단하십시오. CloudFront는 정적 및 동적 컨텐츠 모두에서 작동하며 퍼블릭 인터넷이 아닌 AWS 백본을 사용하므로 동적 컨텐츠를 가속화 할 수 있습니다. 문서가 말한 내용은 다음과 같습니다.

요청이 시작된 IP 주소를 기반으로 일부 웹 요청을 허용하고 다른 웹 요청을 차단하려면 허용하려는 IP 주소에 대한 IP 일치 조건과 차단하려는 IP 주소에 대한 다른 IP 일치 조건을 작성하십시오. .

CloudFront를 사용하는 경우 보안 그룹을 사용하여 모든 퍼블릭 리소스에 대한 직접 액세스를 차단해야합니다. AWS 업데이트 보안 그룹 람다 최신 보안 그룹을 유지합니다은에 CloudFront를 트래픽을 허용하지만, 다른 트래픽을 거부합니다. CloudFront를 사용하여 http를 https로 리디렉션하면 http가 인프라에 충돌하지 않도록 스크립트를 약간 조정할 수 있습니다. 직접 관리자 액세스가 필요한 모든 IP를 허용 목록에 추가 할 수도 있습니다.

또는 CloudFlare와 같은 타사 CDN을 사용할 수 있습니다. CloudFlare에는 효과적인 방화벽이 있지만 원하는 규칙 수는 한 달에 200 달러입니다. CloudFront보다 저렴할 수 있습니다. AWS 대역폭은 상당히 비쌉니다. 무료 요금제는 5 가지 방화벽 규칙 만 제공합니다.


정적 콘텐츠에는 이미 클라우드 프론트를 사용하고 있지만 많은 사이트는 동적 웹 콘텐츠입니다.
emmdee

.

CloudFront는 동적 컨텐츠를 가속화 할 수 있습니다. 퍼블릭 인터넷이 아닌 AWS 백본을 사용한다고 생각합니다. CloudFront는 EC2보다 대역폭이 약간 저렴하며, CloudFront가 EC2로 되 돌리는 대역폭이 무료라는 발표를 한 적이 있다고 생각합니다.
Tim
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.