이전까지 vpc, public/private subnet등등 생성했습니다.
이번 글에서는 private 인스턴스 접속및 보안에 대해 다뤄보겠습니다.
```````
private 접속
-public ec2(test-public)에 접속합니다
-'ssh 사용자명@private ip'를 통해 접속합니다
*이전글에서 private ec2생성시 사용자 데이터를 통해, root로그인과 비밀번호 설정을 했습니다.
*비밀번호가 설정되어 있으면, 설정된 비밀번호를 기입하면 됩니다
ACL과 Security group
ACL(Access Control List)
-subnet 단위로 적용합니다
-인바운드/아웃바운드 규칙을 정합니다
-번호가 낮은것부터 우선 적용합니다
-stateless합니다
*stateless는 트래픽 상태를 저장하지 않는다는 의미로, inbound/outbound 모두 정해줘야함을 의미합니다. 예를들어, inbound
규칙에만 80포트를 허용했다면 고객에게 요청은 받아도 응답은 가지 않습니다
Security group(방화벽)
-인스턴스 단위로 적용합니다
-인바운드/아웃바운드 규칙을 정합니다
-statueful하기 때문에, outbound규칙을 정하지 않아도 inbound만으로 고객 요청에 대한 응답을 할수있습니다
ACL과 방화벽을 넣으면 아래와 같습니다
그럼 ACL생성및 방화벽 생성 방식을 알아보겠습니다.
*private subnet ip는 12.0.1.0/16이 아닌 12.0.1.0/24 입니다
1. ACL 생성
-vpc 검색 > 보안 > 네트워크 ACL 클릭
-vpc 생성시 자동으로 생성된 ACL을 public으로 사용합니다
-private용으로 한개 더 생성합니다
*vpc를 기본이 아닌 생성했던 vpc로 설정해줘야합니다
*private정책에서 소스는 vpc ip4 cidr값으로 설정해줘야합니다
2.ACL 부착
-각 서브넷에 연결합니다. private acl -> private subnet, public acl -> public subnet
3. Security group 생성
-public 방화벽은 public-sg, private 방화벽은 private-sg로 생성합니다
*public-sg outbound의 대상은 private-sg로 지정합니다
*private-sg inbound의 대상은 public-sg로 지정합니다
4. nat gateway 생성
-vpc 검색> 가상 프라이빗 클라우드 > Nat 게이트웨이로 접근
-패키지 업데이트등 private subnet에서 인터넷으로 연결이 필요한 경우를 대비해 설정합니다
-탄력적 ip도 할당해야합니다
단, nat gateway는 public subnet에 있어야합니다!
5. nat gateway 연결
-private route table에서 routing을 0.0.0.0/0 -> nat gateway가 되도록 추가해줍니다
6.결과
`````
이상으로 vpc, subnet 커스터마이징을 마치겠습니다
감사합니다
'개발' 카테고리의 다른 글
[AWS] Routing table 읽는 법 (0) | 2022.03.16 |
---|---|
[AWS] yum update이 안되요 (0) | 2022.03.13 |
[AWS] Public/Private subnet 연결-(1) (0) | 2022.03.11 |
http-only cookie in javascript (0) | 2021.06.10 |
next.js에서 csr (0) | 2021.03.16 |