동일한 LAN에 있는 여러 서버가 ssh
DHCP를 사용하는 경우 해당 서버의 IP 주소가 변경될 수 있습니다. 새 주소(예: 이전에 해당 LAN에 있었던 적이 없는 주소)가 있을 때마다 다음 메시지가 나타납니다.
The authenticity of host '192.168.1.x (192.168.1.x)' can't be established.
ECDSA key fingerprint is xx:xx:xx:xx:xx:xx:xx:xx:xx:xx:xx:xx:xx:xx:xx:xx.
Are you sure you want to continue connecting (yes/no)?
라고 말하면 yes
그 지문은영구적인이 주소와 연결되어 있습니다. 그러나 다른 ssh
서버가 192.168.1.x인 경우에는 다른 지문을 갖게 되며 강력한 경고가 나타납니다.
서버와 클라이언트 모두 최신 업데이트가 포함된 Ubuntu 14.04를 실행하고 있습니다. 서버에 물리적으로 접근할 수 있고 주소가 변경되더라도 서버의 신뢰성을 알기 때문에 서버를 신뢰합니다.
1) 동일한 서버가 주기적으로 키 지문을 변경하는 것이 가능합니까?
2) 지문검사를 억제하는 방법이 있나요?오직로컬 주소의 경우 범위는 192.168.1.1-254?
답변1
~/.ssh/config:
host 192.168.1.*
CheckHostIP no
StrictHostKeyChecking no
답변2
1) 동일한 서버가 주기적으로 키 지문을 변경하는 것이 가능합니까?
예, 이론적으로는 서버 관리자가 언제든지 서버 키를 변경할 수 있습니다. 그러나 이는 이미 구축된 신뢰를 훼손할 수 있으며 실무상 정당한 사유 없이 이루어져서는 안 됩니다.
서버를 재구축하는 경우(ssh 서버 키를 유지하지 않는 새 하드웨어 또는 궤도에서 핵무기 시나리오를 사용하는 경우) 이런 일이 발생할 수 있습니다. 이는 동일한 호스트 이름을 사용하는 서로 다른 키를 가진 여러 서버가 있는 경우에도 발생할 수 있습니다(예: 로드 밸런서 뒤에 있음).
또한 SSH 서버에는 여러 가지 유형의 호스트 키(rsa, dsa, ecdsa, ed25519...)가 있는 경우가 많으므로 협상된 키 교환에 따라 한 클라이언트를 다른 클라이언트와 비교할 때 의 키 지문이 다를 수 있습니다. 그러나 클라이언트나 서버 구성이 모두 변경되지 않으면 지정된 클라이언트는 항상 서버에서 동일한 키를 얻어야 합니다.
2) 로컬 주소(192.168.1.1-254 범위)에 대해서만 지문 검사를 억제하는 방법이 있습니까?
예. ~에서ssh_config 매뉴얼 페이지, 옵션 CheckHostIP
및 StrictHostKeyChecking
이 동작에 영향을 미칩니다. "192.168.1"로 시작하고 뒤에 1~3개의 문자가 오는 모든 호스트 이름에 대해 이러한 검사를 억제하려면 다음을 사용하십시오.
Host 192.168.1.?,192.168.1.??,192.168.1.???
CheckHostIP no
StrictHostKeyChecking no
참고하시기 바랍니다,무늬절에서는 Host
전체 정규 표현식이나 쉘 글로브가 지원되지 않지만문자열 일치단일 문자 ?
와 탐욕스러운 *
와일드카드만 포함합니다. 따라서 누군가 성공적으로 등록하면 1.com
패턴이 원격 서버와도 일치하게 됩니다 192.168.1.com
.
탐욕스러운 glob을 사용하면 구성 절이 더 단순해지지 Host 192.168.1.*
만 더 넓은 범위의 혼합 영숫자 이름을 일치시킬 수도 있습니다 192.168.1.evil.qwerty.org
.가능성실수로 (호스트 키 확인 없이) 해당 서버에 연결할 가능성은 매우 낮습니다. 그러나 이는 단지 문자열 glob일 뿐이며 서브넷 주소로 반드시 확인되는 것은 아니라는 점은 주목할 가치가 있습니다. 일종의 서브넷 주소와 같습니다.