Peering Connection
을 실습해봅시다.서로 다른 네트워크 대역을 가지는 VPC 2개
를 생성합니다.
VPC-1
: 퍼블릭 서브넷 1개 / 프라이빗 서브넷 1개VPC-2
: 프라이빗 서브넷 1개인터넷 게이트웨이를 VPC-1
에 붙여줍니다.
퍼블릭 서브넷과 연결되어 있는 라우팅 테이블을 편집합니다.
인터넷 게이트웨이로 라우팅 되도록 설정합니다.
VPC-1
: 퍼블릭 서브넷 1개 + 프라이빗 서브넷 1개VPC-2
: 프라이빗 서브넷 1개-> 퍼블릭 서브넷에 생성한 인스턴스는 프라이빗 서버에 접속하기 위한 용도입니다.
퍼블릭 인스턴스에 접근해서 프라이빗 인스턴스에 접근 가능한지 테스트합니다.
1) 먼저 퍼블릭 인스턴스에 접근합니다.
2) 프라이빗 인스턴스의 키 파일은 퍼블릭 인스턴스로 넘겨준 후
3) VPC-1
의 프라이빗 인스턴스로 ssh
접근을 시도해봅니다.
$ ssh -i test-hyeob.pem ec2-user@10.0.0.30
__| __|_ )
_| ( / Amazon Linux 2 AMI
___|\___|___|
https://aws.amazon.com/amazon-linux-2/
[ec2-user@ip-10-0-0-30 ~]$
만약 접근 과정에서 아래와 같은 에러 발생 시
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
@ WARNING: UNPROTECTED PRIVATE KEY FILE! @
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
Permissions 0664 for 'test-hyeob.pem' are too open.
It is required that your private key files are NOT accessible by others.
This private key will be ignored.
Load key "test-hyeob.pem": bad permissions
Permission denied (publickey,gssapi-keyex,gssapi-with-mic).
키 파일의 권한을 변경해줍니다.
$ chmod 600 <키 파일 이름>
4) VPC-2
의 프라이빗 인스턴스로는 접근되지 않습니다.
$ ssh -i test-hyeob.pem ec2-user@10.20.0.8
...
VPC
> 피어링 연결
로 접근합니다.
요청자에는 vpc-1
, 수락자에는 vpc-2
를 선택합니다.
피어링 연결을 생성한 후 요청을 수락합니다.
모든 서브넷의 라우팅 테이블에 서로의 VPC 네트워크 IP
, 피어링 연결
을 대상
으로 한 규칙을 추가합니다.
이제 VPC-1
의 프라이빗 인스턴스에서 VPC-2
의 프라이빗 인스턴스에 접근을 시도해봅시다.
서로 다른 대역의 VPC로 접근이 잘 되는 것을 확인할 수 있습니다.
$ ssh -i test-hyeob.pem ec2-user@10.20.0.8
The authenticity of host '10.20.0.8 (10.20.0.8)' can't be established.
ECDSA key fingerprint is
ECDSA key fingerprint is
Are you sure you want to continue connecting (yes/no)? yes
Warning: Permanently added '10.20.0.8' (ECDSA) to the list of known hosts.
__| __|_ )
_| ( / Amazon Linux 2 AMI
___|\___|___|
https://aws.amazon.com/amazon-linux-2/
[ec2-user@ip-10-20-0-8 ~]$