当我ping我的服务器时,它会响应:
user@localhost:~$ ping my.server
PING my.server (111.111.111.11) 56(84) bytes of data.
64 bytes from my.server (111.111.111.11): icmp_req=1 ttl=42 time=38.4 ms
64 bytes from my.server (111.111.111.11): icmp_req=2 ttl=42 time=50.0 ms
64 bytes from my.server (111.111.111.11): icmp_req=3 ttl=42 time=58.6 ms
^C
--- my.server ping statistics ---
3 packets transmitted, 3 received, 0% packet loss, time 2003ms
rtt min/avg/max/mdev = 38.419/49.037/58.637/8.287 ms
但是当我尝试ssh(我经常做的事情,以及过去几个小时在同一个连接上做的事情)时,它会挂起:
user@localhost:~$ ssh my.server
http://speedtest.net表示我的连接下载速度为1.5 Mbps,上传速度为0.4 Mbps。
是否有ssh挂起的原因?
答案中提供的建议的结果
来自@ nsfyn55
user@localhost:~$ telnetmy.server 22
Trying 111.111.111.11...
Connected to my.server
Escape character is '^]'.
SSH-2.0-OpenSSH_4.3
Connection closed by foreign host.
user@localhost:~$ nc -v -w 1 111.111.111.111 -z 22
nc: timeout cannot be negative
答案 0 :(得分:20)
ping(ICMP协议)和ssh是两种不同的协议。
可能是ssh服务未运行或未安装
防火墙限制(本地服务器如iptables甚至sshd配置锁定)或(外部防火墙保护流量到网络托管111.111.111.111)
首先检查ssh端口是否已启动
nc -v -w 1 111.111.111.111 -z 22
如果成功,那么ssh应该通信,否则它将永远不会工作,直到解除限制或启动ssh
答案 1 :(得分:6)
找出两条信息
$> telnet <hostname or ip> <port>
假设守护程序已启动并正在运行并正在侦听该端口,则应该建立一个telnet会话。可能的原因:
答案 2 :(得分:-3)
在服务器上,尝试:
netstat -an
并查看是否已打开tcp port 22
(在Windows中使用findstr
或在Unix中使用grep
。