[Linux] ssh 접속시 host key checking 비활성화하기
ssh 접속시 host의 key를 확인하지 않고 접속하는 방법을 알아보자.
환경
- Linux
- SSH(OpenSSH)
Host Key Checking
- ssh를 이용해 원격에 있는 서버에 접근할 때 해당 서버에 대한 인증을 위해 로컬에 저장해둔 키와 서버의 키를 비교하는 작업을 진행한다.
- 이런 작업을 통해 중간자 공격 같은 부분을 예방할 수 있다.
SSH 접속시 Host Key Checking 비활성화
- 해당 옵션을 사용해도 만약 저장된 서버의 키가 없다면
~/.ssh/known_hosts
에 추가합니다. - 저장된 키가 서버의 키와 다르더라도 접속을 진행합니다.
1. ssh 명령어 사용 시 비활성화
StrictHostKeyChecking=no
옵션을 이용
ssh -o StrictHostKeyChecking=no [DOMAIN_OR_IP]
2. ssh config 파일을 수정
~/.ssh/config
- 아래처럼 특정 호스트에 대해 옵션을 추가할 수 있다.
Host twpower-private-server
HostName [IP ADDRESS]
StrictHostKeyChecking no
Port 22
User [USERNAME]
IdentityFile [IDENTITY KEY FILE]
/etc/ssh/ssh_config
- 아래처럼
StrictHostKeyChecking no
를 추가하며*
가 있기 때문에 접속하는 모든 호스트에 대해 Key 확인을 하지 않습니다. /etc/ssh/ssh_config
파일은 해당 시스템에 있는 모든 유저에게 적용되는 옵션을 담고 있습니다.
Host *
StrictHostKeyChecking no