原因:
是因为远程主机的SSH密钥发生了变化,因为远程主机环境发生变化或重新生成了SSH密钥。为了安全起见,OpenSSH 在检测到密钥变化时会发出警告,并阻止连接。
解决方法:
- 清除旧的远程主机密钥: 使用如下命令:
ssh-keygen -R 192.168.1.100
- 再次尝试连接:
清除旧密钥后,再次进行
scp
操作或ssh
连接。这时,系统会提示你是否接受新的主机密钥。 - 验证新密钥: 确认新的主机密钥并接受,确保不会忽略MITM的风险。以下是命令步骤:
scp -r root@192.168.1.100:/root/txt /root
如果系统提示如下信息,输入yes
以继续:
The authenticity of host '192.168.1.100 (192.168.1.100)' can't be established.
ECDSA key fingerprint is SHA256:iOjgg/rVxAiUnBZI7eJTEeBQcWWF9iyyDtr+WnuKty0.
Are you sure you want to continue connecting (yes/no)? yes