Cloud Infra Architecture (AWS)/AWS SAP-C02

AWS Linux pem key 없이 접속하기

seongduck 2024. 1. 19. 00:30

1) AWS Linux os를 선택 후에 인스턴스를 생성해준다.

 

2) 1회 우선 인스턴스에 접속하기

pem key가 있는 경로로 이동하여 서버에 접속한다. (본인은 pem key를 pemkey라는 폴더에 넣어놨다.)

$ cd /pemkey

 

pemkey의 권한을 읽기로 바꿔준다. (본인의 pemkey이름은 test-terraform.pem)

$ chmod 400 "test-terraform.pem"

 

그리고 접속을 진행한다.

$ ssh -i "test-terraform.pem" ec2-user@본인 ec2 public ip

 

 

3) pem key 없이 접속하도록 바꾸기

우선 ec2-user의 비밀번호를 설정하자.

$ sudo passwd ec2-user // root로 비밀번호 설정

 

sshd_config 파일 수정 (재부팅 후 초기화됨)

$ sudo vi /etc/ssh/sshd_config

/pass //vi 편집기에서 특정 단어 찾기
PasswordAuthentication no -> yes

 

/etc/cloud/cloud.cfg

cd /etc/cloud/cloud.cfg

ssh_pwauth: false = true 변경

 

변경사항 재부팅

$ sudo systemctl restart sshd

 

4) 접속 테스트

$ ssh ec2-user@본인 public ec2 ip
$ 아까 설정한 비밀번호 //root

 

 

혹은 인스턴스 생성시 사용자 데이터에 다음을 입력

#!/bin/bash
echo 'ec2-user:원하는비밀번호' | chpasswd
sed -i 's/PasswordAuthentication no/PasswordAuthentication yes/' /etc/ssh/sshd_config
systemctl restart sshd

 

cd /etc/cloud/cloud.cfg

ssh_pwauth: false = true 변경

 

총 코드

#!/bin/bash
echo 'ec2-user:원하는비밀번호' | chpasswd
sed -i 's/PasswordAuthentication no/PasswordAuthentication yes/' /etc/ssh/sshd_config
cd /etc/cloud
sudo sed -i 's/ssh_pwauth:   false/ssh_pwauth:   true/' cloud.cfg
systemctl restart sshd