EC2에 접근할 키파일을 분실했습니다. (예, 키를 저장하는 머신의 디스크 이슈)
방법1. 사용자 데이터를 통한 공개키 등록
- 새로 사용할 키페어(개인키, 공개키) 생성
- 사용자 데이터를 활용해 공캐키를 ~/.ssh/authorized_keys 에 등록
*사용자 데이터: 인스턴스를 시작할 때 실행할 명령 또는 명령 스크립트를 지정
- 실습링크: https://github.com/go4real/linux_campus/blob/main/Part3/Ch05_05/add_ssh_key.md
방법2. 인스턴스 Snapshot 생성 및 Snapshot 기반으로 새로운 인스턴스 생성 - 새로 사용할 키페어
(개인키, 공개키) 생성
- 기존 인스턴스의 머신 이미지를 생성
- 생성된 이미지를 활용해서 새로운 인스턴스를 생성
- 인스턴스 생성 시에 사용할 개인키를 지정
기타 방법.
- EC2 Instance Connect, AWS System Manager의 기능 활용, EC2 시리얼 콘솔 이용
-> 권한 부여, 사전 조건 등 존재하지만 좀 더 우아한 해법(재시작 X)을 제공
-> 기존 공개키를 재사용은 불가능
(RSA 암호화는 개인키로 공개키를 생성할 순 있으나 그 반대는 현재 컴퓨팅 파워로는 연산 불가능)
[실습] 새로운 ssh 접속 키 등록하기(방법 1)
0. 데모용 인스턴스 생성
+ EC2 생성 : ssh_demo
1. 새로운 키페어 생성 및 다운로드
+ EC2 > 네트워크 및 보안 > 키 페어
+ 예, new-ec2-key
cp ~/Downloads/new-ec2-key.pem ~/linux_campus && cd ~/linux_campus
2. 인스턴스 중지
3. 등록할 퍼블릭 키 생성
chmod 400 ~/linux_campus/new-ec2-key.pem
ssh-keygen -y -f ~/linux_campus/new-ec2-key.pem
4. 인스턴스 중지 및 사용자 데이터 편집
+ 작업 > 인스턴스 설정 > 사용자 데이터 편집
+ PublicKeypair 부분은 3번의 ssh-keygen 실행 결과 전체를 입력
Content-Type: multipart/mixed; boundary="//"
MIME-Version: 1.0
--//
Content-Type: text/cloud-config; charset="us-ascii"
MIME-Version: 1.0
Content-Transfer-Encoding: 7bit
Content-Disposition: attachment; filename="cloud-config.txt"
#cloud-config
cloud_final_modules:
- [users-groups, once]
users:
- name: ubuntu
ssh_authorized_keys:
- PublicKeypair
5. 인스턴스 시작
6. 새로운 개인키로 서버 접근 및 cloud-init 실행 확인
ssh -i ~/linux_campus/new-ec2-key.pem ubuntu@IP_ADDRESS
journalctl -b 0 -u cloud-init
7. 인스턴스 중지
8. 사용자 데이터 삭제
9. 인스턴스 시작
'리눅스 > Part3. Ch05. 사용자 관리' 카테고리의 다른 글
04. (실습) SSH 접속에 Multi-Factor Authentication 적용 (0) | 2022.12.14 |
---|---|
03. (실습) 서비스 어카운트 생성 및 사용 (0) | 2022.12.14 |
02. 새로운 사용자 추가 (0) | 2022.07.21 |
01. 사용자 관리의 이해 (0) | 2022.07.21 |