如果我做:
ssh 192.168.1.8 //my wlan0 connection
我得到:
ssh: connect to host 192.168.1.8 port 22: Connection refused
但是,如果我插入 LAN,我可以 ssh 到 192.168.1.7(有线 IP)。之后,即使拔掉 LAN 插头,我也可以 ssh 到 192.168.1.8(wlan0 端口),没有任何问题。
会是什么?
绘画:
答案1
这听起来像是 ssh 没有在所有接口上监听或者被管理阻止(例如 iptables 规则)。
首先确保sshd
正在监听所有接口。转到您尝试连接的服务器并运行:
sudo lsof -n -i -P | grep sshd
这是打开文件的 ls。这些标志是-n
=> 不必费心查找 IP 名称(这使得 lsof 返回更快),-i
=> 列出所有 Internet 网络文件,并且-P
=> 不必费心查找端口名称。然后我们只使用 查找 ssh 守护进程grep
。
你应该得到类似的东西:
sshd 1472 root 3u IPv4 4972775 0t0 TCP *:22 (LISTEN)
sshd 1472 root 4u IPv6 4972777 0t0 TCP *:22 (LISTEN)
这里 sshd 正在 TPC 端口 22 上侦听所有 IP 地址 ( *:22
)。
接下来检查 iptables 规则:
sudo iptables -L -n
这是列出 ( -L
) 规则,并且再次不要查找名称 ( -n
)。
其中之一很可能是问题所在。