Windows上SSH服務(wù)器的配置以及客戶端的連接如何在Windows上建立ssh服務(wù)器 作者:許騰 日期:2010/9/16 1. ssh簡介以及本例的應(yīng)用場景① ssh的簡介 SSH是一個用來替代TELNET、FTP以及R命令的工具包,主要是想解決口令在網(wǎng)上明文傳輸?shù)膯栴}。為了系統(tǒng)安全和用戶自身的權(quán)益,推廣SSH是必要的。 SSH是英文Secure Shell的簡寫形式。通過使用SSH,你可以把所有傳輸?shù)臄?shù)據(jù)進(jìn)行加密,這樣"中間人"這種攻擊方式就不可能實(shí)現(xiàn)了,而且也能夠防止DNS欺騙和IP欺騙。 ② 本例的應(yīng)用場景
用戶在client(Linux)上通過ssh遠(yuǎn)程執(zhí)行server(Windows)上的命令,比如c:\test.bat 注:Linux版自帶ssh Server且默認(rèn)啟動,具體設(shè)置方法請參見google。
2. ssh服務(wù)器的安裝(Windows)ssh服務(wù)器軟件有許多中,我們這里使用的是免費(fèi)的freeSSHd。 ① 首先從官方站點(diǎn)下載軟件并安裝(http://www./) ② 安裝完成后進(jìn)入配置界面(Server Status),確認(rèn)SSH server正在運(yùn)行狀態(tài)
③ 進(jìn)入Users界面,設(shè)定一個訪問的用戶賬戶(比如xut)
這里我們建立一個叫xut的用戶,認(rèn)證有3種方式可以選擇。從以后通過ssh運(yùn)行命令的方便(無需輸入密碼)考慮,我們選擇Public key認(rèn)證方式。選擇Password方式的話,每次訪問需要輸入密碼,此種方式較為繁瑣而且安全性不高。然后開放其Shell權(quán)限。
④ 進(jìn)入認(rèn)證界面,確認(rèn)Public key認(rèn)證方式屬于激活狀態(tài)(選擇Allowed或Required)
此時ssh服務(wù)器端的基本設(shè)置已經(jīng)OK,可進(jìn)一步進(jìn)行更加詳細(xì)的設(shè)置(比如訪問限定等),此處不再介紹。 注意:服務(wù)器端如果有防護(hù)墻時應(yīng)該開發(fā)TCP 22號端口最為ssh連接使用。
3. ssh客戶端的設(shè)置(Linux)由于我們的客戶端采用的是Linux,所以不用安裝客戶端軟件,系統(tǒng)自帶的就有。
我們需要在Linux上創(chuàng)建一個共有和私有的密鑰對,私有密鑰放到客戶端(Linux)上,共有密鑰放到服務(wù)器端(Windows)上。在Linux上通過ssh-keygen命令來創(chuàng)建。 [root@localhost ~]# ssh-keygen -t rsa 其中,/root/.ssh/id_rsa為私有密鑰,/root/.ssh/id_rsa.pub為共有的密鑰。 此時,需要把共有密鑰放到服務(wù)器端(Windows)進(jìn)行保存,以便于服務(wù)器端進(jìn)行安全檢查。 我們通過認(rèn)證界面找到存放共有密鑰的地址(Public key folder)。 如上圖所示,然后在c:\Program Files\freeSSHd目錄下創(chuàng)建以登錄用戶名為名字的文本文件,此處舉例為xut文件。并將/root/.ssh/id_rsa.pub文件中的內(nèi)容拷貝到c:\Program Files\freeSSHd\xut文件中。 至此,客戶端和服務(wù)器端的密鑰設(shè)置已經(jīng)完成,可以通過如下命令進(jìn)行遠(yuǎn)程的命令執(zhí)行。 ssh xut@172.28.xx.xxx "c:\test.bat" 這條命令將執(zhí)行服務(wù)器端的C盤下的test.bat文件,并把結(jié)果返回,整個操作不需輸入密碼。
4. ssh客戶端的設(shè)置(Windows)由于Windows不附帶ssh的客戶端和服務(wù)器端,我們這里找一個免費(fèi)的客戶端軟件PuTTY。 PuttY主頁:http://www.chiark./~sgtatham/putty/ 各種客戶端的比較:http://en./wiki/Comparison_of_SSH_clients 在Putty主頁,我們下載putty.zip(含除了PuTTYtel以外的所有文件),然后解壓會發(fā)現(xiàn)一個叫plink.exe的文件,這就是我們的ssh客戶端命令行軟件。 我們首先要成一個共有和私有的密鑰對,使用putty.zip中附帶的PUTTYGEN.exe生成。 啟動PUTTYGEN.exe后可以見到下圖界面,點(diǎn)擊[Generate]即可生成所需密鑰對。 注意:由于是采用隨機(jī)算法生成,需要不停地在對話框上移動鼠標(biāo)進(jìn)度條才會增加,否則將保持不變。
密鑰生成完畢后,可以把私有密鑰進(jìn)行保存,為了登錄簡單起見不對私鑰進(jìn)行加密,提示沒有passphrase選擇忽略即可。假設(shè)我們這里把私鑰保存為pri_key.ppk。 我們把公鑰放在freeSSHd端(ssh服務(wù)器端)進(jìn)行保存,具體保存方法參見【ssh客戶端的設(shè)置(Linux)】。 在Windows客戶端,執(zhí)行如下命令進(jìn)行ssh連接,并不需要輸入密碼即可通過密鑰進(jìn)行自動認(rèn)證。 plink -i pri_key.ppk xut@172.28.xx.xxx c:\test.bat (此時將執(zhí)行服務(wù)器端的c:\test.bat腳本。) 注:第一次連接時將出現(xiàn)“The server's host key is not cached in the registry… ”提示,我們選擇確定就可以了,以后就不會再出現(xiàn)了。 |
|