我正在尝试从我的笔记本电脑通过 SSH 连接到服务器:
$ ssh -F /dev/null [email protected] -i ~/.ssh/id_rsa -p 31000 -vv
我收到错误:
ssh:连接到主机 domain.com 端口 31000:操作超时
如果我检查 Little Snitch,就会发现 SSH 传出连接从未建立过。
如果我尝试我的暂存服务器:
$ ssh -F /dev/null [email protected] -i ~/.ssh/id_rsa -p 31000 -vv
一切正常,我可以在 Little Snitch 中看到传出连接。
因此,我相信它要么被 SSH 或我的本地 hosts 文件阻止,要么通过某种本地 DNS 问题阻止
- 我可以
ping
,dig
并且traceroute
domain.com 也行 - 我可以
nmap
通过sudo nmap -Pn -p31000 domain.com
- 我已经清除
~/.ssh/known_hosts
~/.ssh/config
两者都不相关/etc/ssh/ssh_config
- 我的本地没有任何
ssh_config
可以阻止传出连接的东西 - 我检查过了
/etc/hosts
,没有提到domain.com
还有什么可能阻碍我的传出连接?
答案1
好的,这与目标服务器上的 CloudFlare 有关。我没有注意到返回的 IPdig
实际上是 CloudFlare 代理服务器的 IP,而不是原始 DO 服务器的 IP。所以这是一个 DNS 问题。
我仍然不确定为什么传出连接没有在 Little Snitch 中显示,我想这与它只有在成功连接后才可见有关。