AWS로 이사하기 - 5 - Bastion Host

-·2023년 6월 1일
0

AWS로 이사하기

목록 보기
5/7

내부인스턴스를 모든IP에서 직접접속되도록 내버려두면 보안상 너무 취약하다.

그래서 인증된 사용자만 접속할수있도록 하는 여러가지 방법이 있는데

키인증, session manager등등 여러가지 방법이 있지만

Bastion Host라는 걸 이용해서 구성해보려고 한다.

왜 bastion host를 선택했냐하면

우리가 계약한 MSP사에서는 무조건 bastion host를 구성해서 쓰는게 정책이라서 선택의 여지가 없다...

Bastion Host

내부와 외부사이에 Bastion Host라는 벽이 있다고 생각하면 이해하기 쉽다.

내부인스턴스를 접속하려면 Bastion Host를 무조건 중계해서 가도록 설정하는것이다.

AWS를 기준으로 만들어보면 내부서버가 있는 인스턴스는 private subnet에 둔다.

이렇게 되면 외부인터넷에서는 아예 접속할수있는 방법이 없다.

그상태에서 private subnet보안그룹에서 bastion host가 있는 public subnet만 열어둔다.

그럼 bastion host에서만 접속가능한 구조가 된다.

인스턴스 생성

그럼 시작해보자

EC2메뉴에서 인스턴스 -> 인스턴스 시작

다른건 그냥 인스턴스 만들듯이 알아서 설정하면 된다.

네트워크만 신경써서 만들면됨

  • VPC

    내가 사용할 VPC

  • 서브넷

    외부에서 접속할 게이트이기때문에 Public Subnet으로 잡아준다.

  • 퍼블릭IP자동할당

    역시 외부에서 접속할꺼기때문에 활성화해준다.

  • 방화벽(보안그룹)

    여기서 접속허용할 IP or 보안그룹을 지정해준다.

    난 따로 외부에서 접속하거나 하지않을거기 때문에 내 IP로 해주겠다.

나머지 OS나 용량은 알아서 맞춰서 하면된다.

이러고 인스턴스 시작을 눌러서 생성해주자.

이러면 끝이다. 너무 쉽죠잉?

그리고 인스턴스를 만들면 까먹지말고 초기셋팅을 잘해주자

timezone을 Asia/Seoul로 변경해주자

접속해보기

이제 만들었으면 확인을 해봐야겠지?

터미널로 하려면 SSH 커맨드로 접속할수있지만

나는 윈도우환경이기 때문에 접속프로그램을 사용할것이다.

여러가지 프로그램이 있기때문에 알아서 맘에 드는걸 쓰자

나는 MobaXterm을 이용할 것이다.

설치를 하고 딱 켜면

여기서 Session을 선택하자

SSH메뉴를 선택하고

  • Remote host

    AWS콘솔에 가서 인스턴스 정보를 보면 퍼블릭IP주소가있다.

    탄력적IP주소를 할당했다면 탄력적 IP주소를 복사해서 적으면된다.

  • Specify username

    유저이름 적어넣으면된다.

    ec2는 ec2-user로 생성된다.

    remote host에다가 ec2-user@IP 이런식으로 한번에 적어도됨

  • Use private key

    인스턴스를 만들면서 키페어를 새로생성했든 있던거를 선택했든 키페어 파일이 있을것이다.

    pem파일, 그거 선택해서 넣어준다.

OK를 하고 만들어서 접속해보면 들어가진다.

접속이 안되면 내가 보안그룹에서 IP설정을 잘못했거나 키페어가 안맞거나 한거니까 다시한번 확인해보자

마무리

난 bastion host라는 용어를 처음들어봐서 그런 제품이 있는줄알았는데

그냥 인스턴스를 만들어서 중계용으로 쓰면 그게 bastion host였다.

의미를 알고나니 그렇게 어렵지가 않았음

profile
거북이는 오늘도 걷는다

0개의 댓글