AWS Management Console에서 ec2 인스턴스의 키 페어를 어떻게 변경합니까? 인스턴스를 중지하고 새 키 페어를 만들 수 있지만 인스턴스의 키 페어를 수정하는 링크가 표시되지 않습니다.
답변
이 답변은 더 이상 기존 서버에 대한 SSH 액세스 권한이없는 경우 (즉, 개인 키를 잃어버린 경우 )에 유용합니다 .
여전히 SSH 액세스 권한이있는 경우 아래 답변 중 하나를 사용하십시오.
https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ec2-key-pairs.html#replacing-lost-key-pair
Eric Hammond의 블로그 게시물 덕분에 내가 한 일이 있습니다.
- 실행중인 EC2 인스턴스 중지
/dev/xvda1
볼륨을 분리합니다 (볼륨 A라고 부릅니다)- 여기를 참조하십시오- 새로운 키 페어를 사용하여 새로운 t1.micro EC2 인스턴스를 시작하십시오. 동일한 서브넷 에서 생성해야합니다. 그렇지 않으면 인스턴스를 종료하고 다시 생성해야합니다. – 여기를 참조하십시오
/dev/xvdf
(또는/dev/sdf
) 와 같이 볼륨 A를 새 마이크로 인스턴스에 연결하십시오.-
새 마이크로 인스턴스에 SSH를 연결하고 볼륨 A를
/mnt/tmp
$ sudo 마운트 / dev / xvdf1 / mnt / tmp
-
복사
~/.ssh/authorized_keys
에/mnt/tmp/home/ubuntu/.ssh/authorized_keys
- 로그 아웃
- 마이크로 인스턴스 종료
- 볼륨 A에서 분리
- 다음과 같이 볼륨 A를 기본 인스턴스에 다시 연결하십시오.
/dev/xvda
- 메인 인스턴스 시작
- 새
.pem
파일을 사용하여 이전과 같이 로그인
그게 다야.
답변
인스턴스가 시작되면 메타 데이터 수준에서 인스턴스와 관련된 키 페어를 변경할 수있는 방법은 없지만 인스턴스에 연결하기 위해 사용하는 ssh 키를 변경할 수 있습니다.
대부분의 AMI에는 퍼블릭 ssh 키를 다운로드하여 .ssh / authorized_keys 파일에 설치하여 해당 프라이빗 ssh 키를 사용하여 해당 사용자로 ssh를 시작할 수있는 시작 프로세스가 있습니다.
인스턴스에 액세스하기 위해 사용하는 ssh 키를 변경하려면 인스턴스 자체에서 certified_keys 파일을 편집하고 새 ssh 공개 키로 변환해야합니다.
authorized_keys 파일은 로그인 한 사용자의 홈 디렉토리 아래에있는 .ssh 서브 디렉토리 아래에 있습니다. 실행중인 AMI에 따라 다음 중 하나 일 수 있습니다.
/home/ec2-user/.ssh/authorized_keys
/home/ubuntu/.ssh/authorized_keys
/root/.ssh/authorized_keys
authorized_keys 파일을 편집 한 후에는 항상 다른 것을 사용하십시오 터미널을 사용하여 파일을 편집하는 데 사용중인 세션에서 연결을 끊기 전에 인스턴스에 ssh 할 수 있는지 확인하십시오. 실수를하거나 인스턴스에서 완전히 빠져 나가고 싶지는 않습니다.
EC2의 ssh 키 페어에 대해 생각하고있는 동안 Amazon에서 키 페어를 생성하는 대신 자체 ssh 공개 키를 EC2에 업로드하는 것이 좋습니다.
여기에 내가 쓴 기사가 있습니다.
Amazon EC2에 개인 ssh 키 업로드
http://alestic.com/2010/10/ec2-ssh-keys
이것은 실행하는 새 인스턴스에만 적용됩니다.
답변
AWS pem을 다운로드 한 후이 명령을 실행하십시오.
ssh-keygen -f YOURKEY.pem -y
그런 다음에 출력을 덤프하십시오 authorized_keys
.
또는 pem 파일을 AWS 인스턴스에 복사하고 다음 명령을 실행하십시오.
chmod 600 YOURKEY.pem
그리고
ssh-keygen -f YOURKEY.pem -y >> ~/.ssh/authorized_keys
답변
AWS EC2 지원 지침 :
- PEM 로그인 변경
- EC2 콘솔로 이동
- 네트워크 및 보안에서 키 페어를 클릭하십시오. 키 페어 생성을 클릭하십시오.
- 새 키 페어에 이름을 지정하고 .pem 파일을 저장하십시오. 키 페어의 이름은 인스턴스에 연결하는 데 사용됩니다
- 인스턴스에 대한 SSH 연결을 만들고 열어 둡니다
- PuttyGen에서 “로드”를 클릭하여 .pem 파일을로드하십시오.
- SSH-2 RSA 단일 선택 단추를 선택된 상태로 유지하십시오. “개인 키 저장”을 클릭하십시오. 팝업 창이 나타나면 “예”를 클릭하십시오.
- “공개 키 저장”을 클릭하여 공개 키를 생성하십시오. 이것은 현재 인스턴스로 복사 할 공개 키입니다.
- 새 키 쌍 이름과 확장자가 .pub 인 공개 키를 저장하십시오.
- 메모장에서 공개 키 컨텐츠 열기
- “설명 :”imported-openssh-key “아래 및”—- END SSH2 PUBLIC KEY —- 이전
에 내용을 복사하십시오. – 내용을 한 줄로 복사해야합니다. 모든 새 줄을 삭제하십시오. - 연결된 인스턴스에서 도구 vi를 사용하여 authorized_keys 파일을 엽니 다. 다음 명령을 실행하십시오. vi .ssh / authorized_keys 파일에 원래 공개 키도 표시되어야합니다.
- 파일에서 커서를 첫 번째 공개 키 컨텐츠의 끝으로 이동하십시오. 삽입을 위해 “i”를 입력하십시오.
- 새 줄에 “ssh-rsa”를 입력하고 공개 키의 내용, 공백 및 .pem 파일의 이름 (.pem 제외)을 붙여 넣기 전에 공백을 추가하십시오. 참고- 이전 줄과 같은 형식
- Esc 키를 누른 다음 : wq!를 입력하십시오.
업데이트 된 authorized_keys 파일이 저장됩니다
이제 새로운 키 파이를 사용하여 인스턴스에 새로운 SSH 세션을 열어보십시오
새 키 페어를 사용하여 인스턴스에 SSH로 연결할 수 있음을 확인하면 .ssh / authorized_key를 vi하고 이전 키를 삭제할 수 있습니다.
Shaggie의 답변에 대한 답변 :
인스턴스에 연결할 수없는 경우 (예 : 키가 손상됨) AWS 콘솔을 사용하여 볼륨을 분리하는 것 ( http://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ebs-detaching-volume.html 볼륨의 키를 변경하고 이전 인스턴스에 다시 연결하는 것보다)을 실행 한 후 작업 인스턴스에 다시 연결하십시오.
답변
Elastic Beanstalk에서 관리 할 때 활성 EC2 키 페어를 변경할 수 있습니다. Elastic Beanstalk> 구성> 보안 아래 EC2 키 페어 드롭 다운 에서 새 키를 선택하십시오 . 확실하면 묻는이 메시지가 표시됩니다.
EC2KeyName : 옵션 EC2KeyName 설정에 대한 변경 사항은 즉시 적용되지 않습니다. 기존의 각 EC2 인스턴스가 교체되고 새 설정이 적용됩니다.
내가 할 때 내 인스턴스는 이미 종료되었습니다. 그런 다음 시작, 종료 및 다시 시작되었습니다. 분명히 “바꾸기”는 새 인스턴스를 종료하고 생성하는 것을 의미합니다. 부팅 볼륨을 수정 한 경우 먼저 AMI를 생성 한 다음 사용자 지정 AMI ID 와 동일한 Elastic Beanstalk> 구성> 인스턴스 형태로 AMI를 지정하십시오 . 또한 EC2 인스턴스 교체에 대해 경고합니다.
EC2 키 페어와 커스텀 AMI ID를 수정 한 후 둘 다에 대한 경고가 표시되면 저장 을 클릭 하여 계속하십시오.
인스턴스를 다시 만들 때 IP 주소가 변경되므로 SSH를 통해 연결할 때 사용할 EC2 콘솔에서 새 IP 주소를 검색해야합니다.
답변
나는이 접근법을 겪었고 얼마 후, 그것을 작동시킬 수있었습니다. 실제 명령이 없기 때문에 힘들었지 만 알아 냈습니다. 그러나 훨씬 더 쉬운 접근 방식을 발견하고 곧바로 테스트했습니다.
- 인스턴스를 AMI로 저장합니다 (재부팅 여부에 관계없이 재부팅하는 것이 좋습니다). EBS가 지원되는 경우에만 작동합니다.
- 그런 다음이 AMI에서 인스턴스를 시작하고 새 키 파일을 할당하십시오.
- 탄력적 IP (해당되는 경우)를 새 인스턴스로 옮기면 완료됩니다.
답변
아래 단계를 수행하면 시간이 많이 절약되고 실행중인 인스턴스를 중지 할 필요가 없습니다.
- 새로운 키 페어를 사용하여 새로운 t1.micro EC2 인스턴스를 시작하십시오. 동일한 서브넷에서 생성해야합니다 에서 생성해야합니다. 그렇지 않으면 인스턴스를 종료하고 다시 생성해야합니다.
- 새로운 마이크로 인스턴스에 SSH를 연결하고 ~ / .ssh / authorized_keys의 내용을 복사 컴퓨터의 어딘가에 합니다.
- 이전 ssh 키를 사용하여 기본 인스턴스에 로그인 .
- 포인트 2에서 ~ / .ssh / authorized_keys로 파일 내용 복사 및 교체
- 이제 새 키로 만 다시 로그인 할 수 있습니다. 이전 키는 더 이상 작동하지 않습니다.
그게 다야. 즐기십시오 🙂