[에러해결]remote host identification has changed. it could be man-in-the-middle attack or the host key has just been changed.
상황
ec2 인스턴스를 변경할 일이 있어서 새롭게 인스턴스를 만들고, db관련 설정을 다시 해주고 있었다.
이때 기존 인스턴스와 연결되었던 RDS를 DBeaver(local)에서 SSH 터널을 통해 연결하려고 했을 때
remote host identification has changed. it could be man-in-the-middle attack or the host key has just been changed.
라고 떴다.
에러를 읽어보면 SSH 키가 변경되었기 때문에 발생했다.
DBeaver에서 SSH 터널링을 사용하여 RDS에 연결할 때, 로컬 PC에 저장된 EC2 인스턴스의 기존 SSH 키 정보와 변경된 EC2 인스턴스의 새로운 SSH 키 정보가 일치하지 않아 보안 경고가 발생하는 것이다.
Man-in-the-Middle 공격이 아니라 단순히 EC2 인스턴스를 바꿔서 생긴일이다.
해결 방법
-
파일 탐색기를 열고 C:\Users\사용자명.ssh 경로로 이동한다.
-
known_hosts 파일을 메모장으로 연다.
-
파일 내용을 확인하여 이전에 연결했던 EC2 인스턴스의 퍼블릭 ip를 컨트롤 f로 찾는다.
(나 같은경우 찾고자 하는 퍼블릭 ip와 관련된 SSH 키가 3개가 있었다.) -
관련 줄을 모두 삭제하고 저장한다.
(DBeaver에서 다시 연결할 때 해당 ip의 SSH 키가 로컬에 있는지 없는지 확인하고 없으면 새로 생성된다.) -
그리고 다시 DBeaver에서 연결하면 된다.
Leave a comment