호스트의 운영 체제가 다시 설치되고 공개 키가 다시 생성된 경우 새 키가 이전 키와 일치하지 않기 때문에 해당 호스트에 대한 SSH 연결이 당연히 실패합니다.
호스트 키가 변경되었음을 알고 업데이트하고 싶다고 ssh에 알리는 더 쉬운 방법이 있습니까? 문제가 되는 줄을 삭제하기 위해 텍스트 편집기나 sed와 같은 것을 사용하는 것은 약간 오류가 발생하기 쉬운 것 같습니다.
답변1
ssh-keygen -R hostname
파일에서 호스트 이름(또는 IP 주소)을 제거하는 데 사용됩니다 .ssh/known_hosts
. .ssh/known_hosts
다음에 연결할 때 새 호스트 키가 파일에 추가됩니다 .
답변2
TARGET_HOST=[hostname or IP]
# Remove the old key(s) from known_hosts
ssh-keygen -R $TARGET_HOST
# Add the new key(s) to known_hosts (and also hash the hostname/address)
ssh-keyscan -H $TARGET_HOST >> ~/.ssh/known_hosts
다음에 연결하면 연결됩니다아니요Are you sure you want to continue connecting (yes/no)?
키가 이미 known_hosts
파일 에 있기 때문에 묻는 메시지가 표시됩니다 .