我怎么知道内部的networking允许我使用SSH?

我在大学,试图login到ssh服务器ssh工作以外的大学networking,但我无法login。 如何知道ssh是否启用?

但是我知道服务器configuration不正确。 所以为了消除一些不确定性。 我想知道是否有命令来检查大学是否阻止了ssh。

一个简单的testing就是telnet $ssh-host $ssh-port 。 如果它工作的话,您应该几乎立即看到类似下面的内容:

$ telnet sshserver.example.com ssh尝试1.2.3.4 …连接到sshserver.example.com。 转义字符是'^]'。 SSH-2.0-OpenSSH_5.1p1 Debian-5

如果需要一段时间,或者你突然失败,那么它不是在远程服务器上运行,或者你的端口是错误的,或者是在你正在运行的shell和远程sshd之间的某处被阻塞。

更新根据您的答案:问题可能不是你的大学networking。 最有可能(希望)你有一些东西坐在你的家庭桌面和你的ISP(即你的路由器或无线接入点等)。 该设备不知道你想允许来自互联网的入站SSH连接。 您希望:1添加TCP转发规则,将入站TCP端口路由到预定义的目标(端口22上的桌面IP地址)。 我强烈build议你select一个大的数字(大于1024但小于65535)作为端口。 您的规则看起来像“从入站端口3299转发到desk_top_ip端口22”2当您不在家使用笔记本电脑时,您将不得不ssh到您的公共IP地址(不同于您的桌面IP地址)。 您可以通过访问http://whatismyipaddress.com/等网站,轻松find您的公共IP。 这可能不会经常改变。 3当您不在家使用笔记本电脑时,您将不得不ssh到上面指定的TCP端口(不是默认的ssh端口22)。 所以你的ssh命令,如果你使用命令行,看起来像ssh my_user_name@my_public_ip_at_home -p 3288

请享用