- Django - 인스턴스 생성
- Bastion Host 생성
- Bastion Host를 통해서 Django-server에 ssh 접속
Django를 설치할 EC2는 private subnet에 생성하게 되면 외부에서 내부로 접속이 불가능하다.
따라서 private subnet에 있는 자원(EC2 등)을 원격 접속할 때 Bastion Host를 사용한다. Public subnet에 Bastion Host를 생성해서 1차적으로 Bastion Host로 원격 접속 후 2차 원격 접속(ssh)을 통해 Private subnet에 있는 자원에 접속하게 된다.
Django - 인스턴스 생성
추가 태그 추가 클릭 후 AZ와 Subnet도 입력
ubuntu 22.04 이미지 사용
새 키 페어 생성
Key 잃어버리면 EC2 접근 할 수 없기 때문에 보관이 매우 중요!!!
Django를 설치할 EC2는 private subnet에 생성
SSH, HTTP, HTTPS, 테스트에 사용할 8000번 포트 허용하고 [인스턴스 시작] 클릭
Bastion Host 생성
추가 태그 추가 클릭 후 AZ와 Subnet도 입력
기본 이미지인 ‘Amazon Linux 2 AMI (HVM) - Kernel 5.10, SSD Volume Type’ 사용
이전에 생성한 키 페어 사용
외부에서 접속이 가능하도록 Public subnet에 생성
Public IP 자동 할당 활성화
보안 그룹 생성 > 보안 그룹 이름 입력
Bastion Host는 원격접속만 수행할 것이기 때문에 SSH 그룹 규칙에서 SSH만 허용, 추후 필요시 추가생 성 가능
[인스턴스 시작] 클릭
Bastion Host를 통해서 Django-server에 ssh 접속
Putty를 사용해 원격접속할 때 .ppk파일이 필요
우리는 Key를 .pem 파일로 받았기 때문에 파일 변환 필요
Puttygen 실행 후 상단에 Conversions 선택 후 [import key] 선택
아까 받은 .pem파일 불러온 후 [Save private key] 클릭해 .ppk 생성
Putty IP입력 창에 [ Bastion Host의 퍼블릭 DNS주소 ] 입력
왼쪽 카테고리에서 SSH의 [ + ] 버튼 선택 후 [ Auth ] 선택
[ Browse... ] 를 선택해 변환한 .ppk파일 로드
왼쪽 카테고리에서 [ Data ] 클릭 후 Auto-login username에 [ ec2-user ] 입력 후 하단의 [ Open ] 선택.- ec2는 기본 계정으로 ec2-user라는 계정을 사용
root로 접근하면 ec2-user로 로그인 하라는 메시지 출력된다.
이 작업을 통해 계정명을 자동으로 입력해줘 세션 연결만 하면 자동 로그인 됨
모두 완료하면 왼쪽 카테고리 가장 위 Session으로 돌아와서 Saved Sessions에 이름을 적고 오른쪽 Save를 하면 다음 접속할때 Load로 불러와서 간단하게 다시 접속이 가능하다.
[Open] 클릭
Bastion Host에 원격접속이 성공한 화면.
.ssh 디렉토리에 아까 생성한 .pem 파일을 Filezilla를 이용해 업로드
.pem파일을 메모장으로 열어서 내용을 그대로 복사 붙여넣기 해도 상관없다
ssh -i [Public-key] [user]@[Private-ip] 명령어를 통해 Private Subnet에 있는 EC2로 원격접속 진행 하면 잘 접속되는 것을 확인.
[user]
사용한 이미지에 따라서 달라짐
Amazon Linux 2 AMI의 경우 : ec2-user
Centos 7 의 경우 : centos
ubuntu의 경우 : ubuntu
$ ssh -i ysy-key ubuntu@172.16.1.50
root 계정 패스워드 설정하고 root로 계정 전환까지 완료한 모습
다음 포스트는 Django-server에 아파치-장고를 설치하고 연동까지 해보자
'[개인 웹사이트 만들기]' 카테고리의 다른 글
AWS+Django 기반 웹사이트 제작 6 (Route 53, ALB 생성) (0) | 2024.05.23 |
---|---|
AWS+Django 기반 웹사이트 제작 5 (SSL-TLS 인증서 등록) (0) | 2024.05.22 |
AWS+Django 기반 웹사이트 제작 4 (Apache-Django 설치 및 연동) (0) | 2024.03.19 |
AWS+Django 기반 웹사이트 제작 2 (IGW&NGW 생성, Routing table 설정) (0) | 2024.03.14 |
AWS+Django 기반 웹사이트 제작 1 (도메인 구매 & VPC, Subnet 생성) (0) | 2024.03.12 |