2017-04-06 4 views
1

동적 IP로 EC2 보안 그룹 및 서비스를 사용하는 최상의 방법에 대한 지침을 찾고 있습니다. 나는 SendGrid, Elastic Cloud 등 80/443 포트를 통해 모든 dyanmic IP를 사용하는 서비스를 이용하고자합니다. 그러나 포트 80/443에 대한 액세스는 허용 된 IP를 제외하고는 닫힙니다. 지금까지 내가 찾은 해결책은 다음과 같습니다.호스트/유동 IP/DNS가있는 Amazon EC2 보안 그룹

  1. CRON 서비스를 핑 (ping)하고 IP를 가져 와서 EC2 보안 그룹을 EC2 API를 통해 업데이트합니다.
  2. 포트 80/443이 열려있는 프록시로 작동하도록 새 EC2를 만듭니다. 새로운 서버는 Sendgrid/ElasticCloud와 통신하고 응답을 검사하고 주 서버로 부품을 반환합니다.

더 좋은 해결책이 있습니까?

답변

1

첫째, AWS 보안 그룹은 예를 들어, 아웃 바운드 규칙의 모든 목적지 (0.0.0.0/0)에 포트를 열 80443 경우, 귀하의 EC2 기계는 수, 즉, stateful을 것을 명심하시기 바랍니다 원격 호스트에 연결하고 주어진 IP에 대한 인바운드 규칙이없는 경우에도 응답을 반환합니다.

그러나이 방법은 연결이 항상 EC2 인스턴스에 의해 시작되고 원격 서비스가 응답하는 경우에만 작동합니다. 외부에서 EC2 인스턴스에 대한 연결을 시작해야하는 경우 보안 그룹에 인바운드 규칙을 지정해야합니다. 공용 IP 주소의 CIDR 블록을 알고 있으면 보안 그룹 규칙의 대상으로 지정할 수 있으므로 문제가 해결 될 수 있습니다. 시스템에 도달 할 호스트의 IP 범위를 알지 못하는 경우 네트워크 레벨에서의 액세스 제한이 실현 될 수 없으며 요청자의 승인 양식을 구현해야합니다.

P. 보안 그룹당 부드러운 기본 제한은 50 inbound or outbound rules입니다.

+0

감사합니다. Dimitry, 몰랐습니다. 불행하게도 저는 EC2가 듣고 싶고 Sendgrid를위한 CIDR 블록이없는 webhooks가 있다고 생각합니다. :/다른 소프트웨어 방화벽을 찾아야합니까? – calh27

+0

@ calh27 EC2에 의해 연결이 시작되었으므로 청취가 잘되어야한다고 생각합니다. 물론 테스트해야합니다. –

+0

죄송합니다. 소켓 청취보다는 json 알림 대기중인 스크립트가 더 있음을 분명히해야합니다. – calh27