brunch

You can make anything
by writing

C.S.Lewis

by Master Seo Aug 24. 2019

148. 사용자 IP로 AWS 사용 제한하기

1. 문제점

2. 개선 방향

3개선 

4. 확인

5. 사용자 IP 제한 시 Elastic Beanstalk 사용 주의

6. 사용자 IP 제한 시  Cloud9 사용 주의



1. 문제점   


외부 어느 곳에서 나 AWS 접속해 사용한다.

콘솔 계정 노출 시는  개인정보 유출이나 고비용 발생



2. 개선 방향


특정 네트워크에서만  AWS에 로그온 해서 사용하게 하고 싶다.

예를 들어 집에서만 AWS 관리 페이지에 접속하게 하고 싶다.

참고: ROOT 계정은 사용자 IP 제한 설정은 적용이 불가능하다.

일반 계정만 적용된다.




3. 개선 


1)  나의 IP를  확인한다.  https://www.whatismyip.com/


2) IAM에서 Policy를 만든다.

특정 IP만  AWS접속 가능하도록  Policy를 만든다.


{

    "Version": "2012-10-17",

    "Statement": {

        "Effect": "Deny",

        "Action": "*",

        "Resource": "*",

        "Condition": {

            "NotIpAddress": {

                "aws:SourceIp": [

                    "192.0.2.0/24",

                    "203.0.113.0/24"

                ]

            }

        }

    }

}



AWS: 소스 IP를 바탕으로 AWS에 대한 액세스 거부
  

https://docs.aws.amazon.com/ko_kr/IAM/latest/UserGuide/reference_policies_examples_aws_deny-ip.html





3) 해당 Policy를 그룹에 적용한다.

여기서는 dev Group에 적용한다.



4.  확인


AWS  모든 리소스에 접근이 안된다.

AWS자체는 로그인된다.





5.  사용자 IP 제한 시 Elastic Beanstalk 사용 주의


문제점 : Elastic Beanstalk 사용 시 에러가 발생할 수 있다.  

             기존 계정 기반으로 설정해 동작한다면, IP 제한으로 인해 Elastic Beanstalk이 동작하지 않는다.

개선방향  : Elastic Beanstalk을  Role기반으로 설정해야 한다.




6.  사용자 IP 제한 시  Cloud9 사용 주의


문제점 : 일반 계정으로  Cloud9 생성되지 않는다.


원인 : Cloud9 생성시 ,  Cloud9은 불특정 IP를 가지므로, 사용자  IP 제한 설정으로  일반계정으로는 Cloud9 이 생성되지 않는다.


개선방향:  사용자  IP 제한 설정 해지 ->  Cloud9 생성 -> 사용자  IP 제한 재 설정

기타 : ROOT계정은  IP 제한 설정이 적용되지 않으므로 ROOT 계정은 Clouud9 사용 가능



감사합니다.



  



브런치는 최신 브라우저에 최적화 되어있습니다. IE chrome safari