Linux查看ssh版本的方法
ssh是系統(tǒng)的安全外殼協(xié)議,已發(fā)展了好幾個(gè)版本,那么你知道你使用的ssh是哪個(gè)版本嗎?下面小編就教你查看Linux系統(tǒng)中ssh版本的方法,感興趣的朋友不妨來(lái)了解下。
安全Shell(SSH)通過(guò)加密的安全通信通道來(lái)遠(yuǎn)程登錄或者遠(yuǎn)程執(zhí)行命令。SSH被設(shè)計(jì)來(lái)替代不安全的明文協(xié)議,如telnet、rsh和rlogin。SSH提供了大量需要的特性,如認(rèn)證、加密、數(shù)據(jù)完整性、授權(quán)和轉(zhuǎn)發(fā)/通道。
SSH1 vs. SSH2
SSH協(xié)議規(guī)范存在一些小版本的差異,但是有兩個(gè)主要的大版本:SSH1 (版本號(hào) 1.XX) 和 SSH2 (版本號(hào) 2.00)。
事實(shí)上,SSH1和SSH2是兩個(gè)完全不同互不兼容的協(xié)議。SSH2明顯地提升了SSH1中的很多方面。首先,SSH是宏設(shè)計(jì),幾個(gè)不同的功能(如:認(rèn)證、傳輸、連接)被打包進(jìn)一個(gè)單一的協(xié)議,SSH2帶來(lái)了比SSH1更強(qiáng)大的安全特性,如基于MAC的完整性檢查,靈活的會(huì)話密鑰更新、充分協(xié)商的加密算法、公鑰證書(shū)等等。
SSH2由IETF標(biāo)準(zhǔn)化,且它的實(shí)現(xiàn)在業(yè)界被廣泛部署和接受。由于SSH2對(duì)于SSH1的流行和加密優(yōu)勢(shì),許多產(chǎn)品對(duì)SSH1放棄了支持。在寫(xiě)這篇文章的時(shí)候,OpenSSH仍舊支持SSH1和SSH2,然而在所有的現(xiàn)代Linux發(fā)行版中,OpenSSH服務(wù)器默認(rèn)禁用了SSH1。
檢查支持的SSH協(xié)議版本
方法一
如果你想檢查本地OpenSSH服務(wù)器支持的SSH協(xié)議版本,你可以參考/etc/ssh/sshd_config這個(gè)文件。用文本編輯器打開(kāi)/etc/ssh/sshd_config,并且查看“Protocol”字段。
如果如下顯示,就代表服務(wù)器只支持SSH2。
Protocol 2
如果如下顯示,就代表服務(wù)器同時(shí)支持SSH1和SSH2。
Protocol 1,2
方法二
如果因?yàn)镺penSSH服務(wù)其運(yùn)行在遠(yuǎn)端服務(wù)器上而你不能訪問(wèn)/etc/ssh/sshd_config。你可以使用叫ssh的SSH客戶端來(lái)檢查支持的協(xié)議。具體說(shuō)來(lái),就是強(qiáng)制ssh使用特定的SSH協(xié)議,接著我么查看SSH服務(wù)器的響應(yīng)。
下面的命令強(qiáng)制ssh使用SSH1:
$ ssh -1 user@remote_server
下面的命令強(qiáng)制ssh使用SSH2:
$ ssh -2 user@remote_server
如果遠(yuǎn)程SSH服務(wù)器只支持SSH2,那么第一個(gè)帶“-1”的選項(xiàng)就會(huì)出現(xiàn)像下面的錯(cuò)誤信息:
Protocol major versions differ: 1 vs. 2
如果SSH服務(wù)器同時(shí)支持SSH1和SSH2,那么兩個(gè)命令都有效。
方法三
另一個(gè)檢查版本的方法是運(yùn)行SSH掃描工具,叫做scanssh。這個(gè)命令行工具在你想要檢查一組IP地址或者整個(gè)本地網(wǎng)絡(luò)來(lái)升級(jí)SSH1兼容的SSH服務(wù)器時(shí)很有用。
下面是基本的SSH版本掃描語(yǔ)法。
$ sudo scanssh -s ssh -n [ports] [IP addresses or CIDR prefix]
“-n”選項(xiàng)可以指定掃描的SSH端口。你可以用都好分隔來(lái)掃描多個(gè)端口,不帶這個(gè)選項(xiàng),scanssh會(huì)默認(rèn)掃描22端口。
使用下面的命令來(lái)發(fā)現(xiàn)192.168.1.0/24本地網(wǎng)絡(luò)中的SSH服務(wù)器,并檢查SSH協(xié)議v版本:
$ sudo scan -s ssh 192.168.1.0/24
如果scanssh為特定IP地址報(bào)告“SSH-1.XX-XXXX”,這暗示著相關(guān)的SSH服務(wù)器支持的最低版本是SSH1.如果遠(yuǎn)程服務(wù)器只支持SSH2,scanssh會(huì)顯示“SSH-2.0-XXXX”。
上面就是Linux查看ssh版本的方法介紹了,因?yàn)椴煌陌姹局С值恼Z(yǔ)法略有不同,有些命令會(huì)無(wú)法使用,導(dǎo)致命令失效。