SSH 접속시 ECDSA 혹은 RSA 공유키 충돌 문제 해결

Moonlog·2020년 12월 15일
0

AWS

목록 보기
2/3
post-thumbnail

WARNING: REMOTE HOST IDENTIFICATION HAS CHANGED! 경고 해결하기!

사용하던 EC2인스턴스를 종료하고, 새로운 인스턴스를 생성했다.
그리고 ssh를 이용하여 인스턴스에 접속하려는데, 다음과 같은 오류가 발생하며 접속이 되지 않았다.

ssh -i "keyName.pem" ubuntu@[public IP Address]
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
@    WARNING: REMOTE HOST IDENTIFICATION HAS CHANGED!     @
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
IT IS POSSIBLE THAT SOMEONE IS DOING SOMETHING NASTY!
Someone could be eavesdropping on you right now (man-in-the-middle attack)!
It is also possible that a host key has just been changed.
The fingerprint for the ECDSA key sent by the remote host is
SHA256:iQJcYQS2rY3as6O5JeTdvahWE5fI8IJj/keGVEL8cm0.
Please contact your system administrator.
Add correct host key in /path/to/.ssh/known_hosts to get rid of this message.
Offending ECDSA key in /path/to/.ssh/known_hosts:7
  remove with:
  ssh-keygen -f "/path/to/.ssh/known_hosts" -R "54.180.181.67"
ECDSA host key for 54.180.181.67 has changed and you have requested strict checking.
Host key verification failed.

이유는 54.180.181.67 이라는 IP 로 기존에 접속한 적이 있는 서버와 ECDSA 혹은 RSA 공유키를 교환한 상태에서, 54.180.181.67 이라는 서버가 바뀌었기 때문이다.

위의 경고 메시지는 Man in the Middle Attack 이라는 일명 '중간자 공격'에 대해 경고한다. 즉, 기존에 서버가 알고있던 정보를 찾아서 따라갔더니 기존과는 전혀 다른 서버로 접속되었다는 것이다.

한 마디로 스푸핑 같은 해킹으로 의심되기 때문에 위와 같은 경고를 나타내는 것인데, 이 경우는 운영자인 내가 고의적으로 변경한 것이기에 상관없다.

이를 해결하기 위해서, /path/to/.ssh/known_hosts 파일에 들어가서 해당 IP로 저장된 키 값이 저장된 라인을 삭제한 후 재접속을 시도하면 된다.

- ssh key를 삭제하는 명령어
ssh-keygen -R [ IP or DomainName ]
위의 명령어를 실행하면 해당 ip와 mapping된 key가 삭제된다.
이제 다시 접속하면 key를 다시 저장하게 된다.

Ps. 위의 오류코드에서 remove with: 다음 명령을 복사해서 실행하면 간단하다.


* 참고

profile
Start 20.12.10 ~ ing

0개의 댓글