SSH远程连接问题解决

远程主机密钥更改警告处理方法

这个警告提示你,远程主机的密钥发生了更改,可能是因为主机重装了操作系统或者更新了SSH配置。这种情况下,需要手动更新本地存储的远程主机密钥。

以下是具体步骤:

1. 删除旧的主机密钥

首先,按照提示删除旧的主机密钥。使用ssh-keygen命令:

ssh-keygen -f "/home/ls/.ssh/known_hosts" -R "192.168.1.90"

这个命令将删除known_hosts文件中关于192.168.1.90的旧密钥条目。

2. 尝试重新连接

删除旧密钥后,尝试重新连接远程主机:

ssh user@192.168.1.90

当你重新连接时,SSH会提示你接受新的主机密钥。确认接受后,新密钥会自动添加到known_hosts文件中。

3. 确认新的主机密钥

在你确认接受新的主机密钥时,SSH会显示远程主机的指纹,类似如下内容:

The authenticity of host '192.168.1.90 (192.168.1.90)' can't be established.
ECDSA key fingerprint is SHA256:2zQw0qrypwoZUtPp8GeSoRI//ktWsJDei5LCjEPP61w.
Are you sure you want to continue connecting (yes/no)? yes

输入yes以确认接受新密钥。

4. 手动添加新密钥(可选)

如果你无法自动添加新密钥,可以手动将其添加到known_hosts文件中。获取新密钥的指纹,然后将其添加到/home/ls/.ssh/known_hosts文件:

192.168.1.90 ecdsa-sha2-nistp256 AAAAE2VjZHNhLXNoYTItbmlzdHAyNTYAAAAIbmlzdHAyNTYAAABBBG1n5g/HyFsl7XN5m39hlbQ/MXqx+biOXIFCG0G5RTnGp5zZ9p/OOhxJm/RWfgYyCfKhErGIX/lCJXHyaW8u04=
5. 确认连接

再次尝试连接,确认新的主机密钥已经生效:

ssh user@192.168.1.90

总结

这个警告通常是由于远程主机密钥变更引起的,可以通过删除旧密钥并重新连接来解决。如果频繁出现这种情况,建议检查网络环境和主机配置,确保安全性。

### 配置 SSH 的 RSA, DSA 和 ECDSA 公钥类型 #### 使用 RSA 密钥对配置 SSH 登录 SSH 默认支持多种公钥加密算法,其中包括 RSA。为了生成并使用 RSA 类型的密钥对登录远程服务器: 1. 通过 `ssh-keygen` 工具来创建一对新的 RSA 秘钥文件,默认情况下会存储于用户的 `.ssh` 文件夹下。 ```bash ssh-keygen -t rsa -b 4096 -C "your_email@example.com" ``` 这条命令指定了 `-t rsa` 参数用于指定要生成的是 RSA 类型的秘钥;而 `-b 4096` 则设定了所使用的位长度为 4096 位[^1]。 2. 将本地计算机上的公钥复制到目标主机上以便后续免密码验证连接。 ```bash ssh-copy-id user@remote_host ``` 此操作将会把刚刚生成好的 id_rsa.pub 中的内容追加至远端机器相应账户下的 authorized_keys 文件里去。 #### 使用 DSA 密钥对配置 SSH 登录 尽管现在更推荐采用其他类型的密钥(比如 Ed25519 或者更高版本),但仍然可以按照如下方式设置 DSA 形式的 SSH 认证机制: 1. 创建一组 DSA 格式的密钥对。 ```bash ssh-keygen -t dsa ``` 这里仅需简单地更改参数值为 `-t dsa` 即可完成相同的操作流程。 需要注意的是,在现代 OpenSSH 版本中已经不再默认启用 DSA 支持了,因此可能需要额外调整服务端配置才能正常使用这种形式的身份认证方法。 #### 使用 ECDSA 密钥对配置 SSH 登录 对于 ECDSA 方面,则可以通过下面的方法来进行相应的设定过程: 1. 执行同样的 ssh-keygen 指令但是这次选用不同的选项组合以适应椭圆曲线的要求。 ```bash ssh-keygen -t ecdsa -b 521 ``` 上述指令里的 `-b 521` 表明选择了 NIST P-521 曲线作为基础构建材料之一[^2]。 同样地,之后也需要执行相同的步骤将新建立起来的公共部分传输给待访问的目标节点,并确保对方能够识别该种模式下的安全握手请求。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值