禁止ssh输出警告信息

当您第一次通过 SSH 连接到远程服务器时,SSH 客户端会检查服务器的主机密钥是否已经在本地.ssh/known_hosts文件中。如果没有,SSH 客户端会显示一个警告,询问您是否信任这个新主机,并将该主机的密钥添加到known_hosts文件。这是为了防止中间人攻击,并确保您知道是第一次连接到该服务器。警告消息通常是这样的:

Warning: Permanently added 'host' (ECDSA) to the list of known hosts.

如果你希望禁用这个警告,可以通过修改 SSH 客户端的配置来实现:

临时禁用警告

可以在 SSH 命令中添加-o StrictHostKeyChecking=no选项来临时禁用这个警告。

ssh -o StrictHostKeyChecking=no user@host

此命令将不会显示警告,也不会在known_hosts文件中记录主机密钥。这种做法并不安全,因为它禁用了主机密钥验证,应该只在你确信网络和服务器安全、且仅作一次性用途时使用。

永久禁用警告

为了永久地更改这个行为,你可以在全局 SSH 配置文件(/etc/ssh/ssh_config)或用户的个人 SSH 配置文件(~/.ssh/config)中添加以下的配置:

Host *
    StrictHostKeyChecking no
    UserKnownHostsFile /dev/null

在此配置中:

  • StrictHostKeyChecking no 会让 SSH 客户端在首次连接到新主机时不显示任何警告。
  • UserKnownHostsFile /dev/null 会将known_hosts文件重定向到一个空设备文件,这样 SSH 客户端就不会尝试读取它或将新密钥写入到它。

请注意,对known_hosts的忽视会使得你的连接容易受到潜在的中间人攻击,因为 SSH 客户端不验证远程主机的身份,只有在知道你所连接的服务器是安全的情况下才应该使用这个选项。

为了更安全地处理这个警告,你可以手工管理known_hosts文件,或者使用自动化工具,如ssh-keyscan,在事先知道远程主机是安全的情况下将其主机密钥收集并安全地添加到known_hosts中。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值