使用Telnet這個(gè)用來訪問遠(yuǎn)程計(jì)算機(jī)的TCP/IP協(xié)議以控制你的網(wǎng)絡(luò)設(shè)備相當(dāng)于在離開某個(gè)建筑時(shí)大喊你的用戶名和口令。很快地,會(huì)有人進(jìn)行監(jiān)聽,并且他們會(huì)利用你安全意識(shí)的缺乏。
SSH是替代Telnet和其他遠(yuǎn)程控制臺(tái)管理應(yīng)用程序的行業(yè)標(biāo)準(zhǔn)。SSH命令是加密的并以幾種方式進(jìn)行保密。
在使用SSH的時(shí)候,一個(gè)數(shù)字證書將認(rèn)證客戶端(你的工作站)和服務(wù)器(你的網(wǎng)絡(luò)設(shè)備)之間的連接,并加密受保護(hù)的口令。SSH1使用RSA加密密鑰,SSH2使用數(shù)字簽名算法(DSA)密鑰保護(hù)連接和認(rèn)證。
加密算法包括Blowfish,數(shù)據(jù)加密標(biāo)準(zhǔn)(DES),以及三重DES(3DES)。SSH保護(hù)并且有助于防止欺騙,“中間人”攻擊,以及數(shù)據(jù)包監(jiān)聽。
實(shí)施SSH的第一步是驗(yàn)證你的設(shè)備支持SSH。請(qǐng)登錄你的路由器或交換機(jī),并確定你是否加載了一個(gè)支持SSH的IPSec IOS鏡像。
在我們的例子中,我們將使用Cisco IOS命令。運(yùn)行下面的命令:
Router> Show flash
該命令顯示已加載的IOS鏡像名稱。你可以用結(jié)果對(duì)比你的供應(yīng)商的支持特性列表。
在你驗(yàn)證了你的設(shè)備支持SSH之后,請(qǐng)確保設(shè)備擁有一個(gè)主機(jī)名和配置正確的主機(jī)域,就像下面的一樣:
Router> config terminal
Router (config)# hostname hostname
Router (config)# ip domain-name domainname
在這個(gè)時(shí)候,你就可以啟用路由器上的SSH服務(wù)器。要啟用SSH服務(wù)器,你首先必須利用下面的命令產(chǎn)生一對(duì)RSA密鑰:
Router (config)# crypto key generate rsa
在路由器上產(chǎn)生一對(duì)RSA密鑰就會(huì)自動(dòng)啟用SSH。如果你刪除這對(duì)RSA密鑰,就會(huì)自動(dòng)禁用該SSH服務(wù)器。
實(shí)施SSH的最后一步是啟用認(rèn)證,授權(quán)和審計(jì)(AAA)。在你配置AAA的時(shí)候,請(qǐng)指定用戶名和口令,會(huì)話超時(shí)時(shí)間,一個(gè)連接允許的嘗試次數(shù)。像下面這樣使用命令:
Router (config)# aaa new-model
Router (config)# username password
Router (config)# ip ssh time-out
Router (config)# ip ssh authentication-retries
要驗(yàn)證你已經(jīng)配置了SSH并且它正運(yùn)行在你的路由器上,執(zhí)行下面的命令:
Router# show ip ssh
在驗(yàn)證了配置之后,你就可以強(qiáng)制那些你在AAA配置過程中添加的用戶使用SSH,而不是Telnet。你也可以在虛擬終端(vty)連接中應(yīng)用SSH而實(shí)現(xiàn)同樣的目的。這里給出一個(gè)例子:
Router (config)# line vty 0 4
Router (config-line)# transport input SSH
在你關(guān)閉現(xiàn)存的Telnet會(huì)話之前,你需要一個(gè)SSH終端客戶端程序以測(cè)試你的配置。我極力推薦PuTTY;它是免費(fèi)的,而且它是一個(gè)優(yōu)秀的終端軟件。
最后的想法
當(dāng)你在你的路由器和交換機(jī)上啟用了SSH之后,保證你修改了所有現(xiàn)存的訪問控制列表以允許對(duì)這些設(shè)備的連接。你現(xiàn)在可以向你的上級(jí)報(bào)告你已經(jīng)堵上了一個(gè)巨大的安全漏洞:現(xiàn)在所有的網(wǎng)絡(luò)管理會(huì)話都被加密并且被保護(hù)著。