我连接到Linux机器(centos 6.4)使用腻子。 除了事实上我可以设置腻子只使用一种types的协议,我怎么能find当前的SSH连接版本(SSH1或SSH2)?
一旦你在你身边说:
ssh -v localhost
它会告诉你服务器的确切版本。
Putty在Session,Logging中select“SSH数据包和原始数据”单选button。 在您select的位置select日志文件作为putty.log。 build立连接。 你应该看到:
Event Log: Server version: SSH-2.0-OpenSSH_5.3 Event Log: Using SSH protocol version 2
有关SSH-2.0的含义,请参阅下文。
其他方法您也可以尝试使用telnet客户端,但指向端口22:
telnet test1 22
当你连接你会看到:
尝试192.168.144.145 …连接到test1。 转义字符是'^]'。 SSH-2.0-OpenSSH_5.3
最后一行是要查找的行:
SSH-2.0-OpenSSH_5.3
如果它说的是SSH-2.0
那么这很好,你连接的ssh服务器只支持SSH协议版本2.它不支持来自SSH V1协议客户端的连接。
如果你看到:
SSH-1.99-OpenSSH_5.3
那意味着服务器端仍然支持SSL协议版本1.在sshd_config
文件中有这样的东西:
Protocol 1,2
第一议定书是脆弱的,不应使用。
所以要弄清楚。 如果在telnet到远程服务器的22端口时看到SSH-2,则只能使用ssh协议版本2,因为服务器不支持协议1。
根据上面的cstamas答案,-v标志将显示一行:
debug1: Remote protocol version 1.99, remote software version OpenSSH_5.3
要么:
debug1: Remote protocol version 2.0, remote software version OpenSSH_5.3
你想看到version 2.0
。
我知道这是一个古老的问题,但自从我遇到了,我可以拒绝张贴另一种方式。
由于cstamasbuild议您可以使用ssh -v localhost
,只需在详细模式下将ssh添加到自己的127.0.0.1中,这将显示进度的debugging消息。 是的,通过这个过程,你可以看到通信的顶部,你可以得到你正在运行的SSH版本。
但是如果你阅读了ssh man
页,你会发现ssh上的-V
选项更有用。 取出ssh手册页 :
-V' Display the version number and exit. -v' Verbose mode. Causes ssh to print debugging messages about its progress. This is helpful in debugging connection, authentication, and configuration problems. Multiple -v options increase the verbosity. The maximum is 3.
所以我认为简单地做一下ssh -V
并且得到类似的东西会更好一些:
ssh -V OpenSSH_6.6.1p1, OpenSSL 1.0.1e-fips 11 Feb 2013
希望这可以帮助。