参考:
- SSH中known_hosts文件作用和常见问题及解决方法
https://blog.csdn.net/luduoyuan/article/details/130070120
- 在 Mac 上更改 DNS 设置
https://support.apple.com/zh-cn/guide/mac-help/mh14127/mac
mac中有时候你输入的域名,但会跳转到与期望ip不同的网页,这个时候有可能是你的DNS服务器被污染了。
x.1 检查hosts
我们首先检查本地hosts文件是否被修改了,它位于/etc/hosts
中,输入如下命令:
# 查看
cat /etc/hosts
# 修改
vim /etc/hosts
x.2 检查dns
有时候可能因为外设的dns被污染导致,例如你的网口转换器可能也有一个网卡。按照官网教程找到DNS设置https://support.apple.com/zh-cn/guide/mac-help/mh14127/mac
x.3 known_hosts
known_hosts文件是SSH客户端中的一个重要配置文件。当首次与一个SSH服务器建立连接时,客户端会记录下该服务器返回的的公钥,并保存在known_hosts文件中,以后每次连接该服务器时,客户端都会验证该服务器返回的公钥是否与known_hosts文件中保存的一致。如果不一致,则会发出警告,提示可能存在DNS劫持、中间人攻击等安全问题。因此,known_hosts文件可以保证SSH连接的安全性,防止恶意攻击。
Linux和McOS系统中所在路径为 ~/.ssh/known_hosts
,Windows系统中所在路径为 %USERPROFILE%\.ssh\known_host
。
里面的文件只会记录你的SSH与哪个ip的端口做了链接。有时候SSH链接不上,可以把known_hosts删除。