首先,ssh軟體包由兩部分組成,一部分是伺服器端軟體包,另一部分是客戶軟體包。針對unix、linux系統,這兩個軟體包是分開打包在兩個不同的檔案中的。在windows 9x/nt/2000中,也分為兩部分,不同之處在於,伺服器軟體包只能執行在windows nt及 windows 2000 server以上的版本中,而客戶端ssh可以執行在所有的windows系統中。此外,ssh還分為ssh1及ssh2兩個版本,ssh1是乙個完全免費的軟體包,而ssh2在商業使用時則要付費。由其命名也可知ssh1是第一版,它的功能沒有ssh2強大,但是,由於它是免費的,所以廣泛地使用在很多**中。ssh2中加入了很多功能,並且相容ssh1伺服器,可以對ssh1的客戶端提供很好的服務支援。所以,如果你的系統中安裝了ssh2,那就沒有必要再安裝ssh1軟體包了。
unix/linux下ssh2安裝步驟
2.解壓及安裝:
# tar -zxvf ssh2-2.4.0.tar.gz
# cd ssh2-2.4.0
# ./configure
# make
#make install
windows nt上安裝ssh
windows環境下的安裝十分簡單,本文不再多介紹。
關於金鑰的準備工作
a.伺服器端產生使用者的自己的加密金鑰及對外公開使用的公鑰。在unix環境下,產生金鑰的方法如下:
要求使用者輸入乙個長的認證字串,這個字串的功能同password相當,但是,它更長,一般是在20個字元以內。再次輸入相同的字串以確認輸入的正確,之後,系統產生一對金鑰及公鑰。將公鑰複製到本地,以便客戶端對伺服器傳送的資訊進行解密用。當然,如果你不複製,在第一次登入時,伺服器會將它的公鑰自動推給客戶機,以便客戶機能對伺服器提供的資訊進行解密識別。
b.客戶端產生使用者的加密金鑰及公鑰。客戶端產生自己的金鑰及公鑰的方法與伺服器端相同。而windows環境下的一些支援ssh的客戶端軟體都採用自己生成的方法,具體情況各不相同,但是可以肯定的是所有的支援ssh的客戶端都可以而且必須產生。以sshwin2.4為例說明如下:
開啟選單:edit→settings→globe settings→user keys→generate new keypairs,按照提示會自動產生新的金鑰及公鑰對。
最後,將客戶機產生的公鑰複製到服務端的主機上使用者的目錄中(在unix下應為/home/usrname/.ssh2目錄中)。不同的版本的ssh對公鑰及金鑰的檔名有特定的要求,具體情況請閱讀軟體包中的安裝說明。
啟動ssh伺服器
在unix/linux環境下,伺服器程式放置在/usr/local/sbin目錄下,啟動方法如下:
# sshd
# ps x
可以看到sshd已經啟動了。如果不希望每次重啟動系統,都要手工執行啟動sshd,則可以自己寫乙個指令碼,放置在init.d目錄下,讓系統啟動後,自動執行sshd服務的啟動工作。或者直接在rc.local中加入一行/usr/local/sbin/sshd也可。 windows nt/2000/下啟動ssh2 server,執行程式組中的start ssh2 server即可。
使用ssh
客戶端在unix/linux系統中就是ssh,存放在/usr/local/bin目錄下。其中有ssh1、ssh2、scp等客戶端工具,使用ssh登入遠端主機方法如下:
host.ip.of.remote
如同使用telnet一樣,不同之處是要求使用者輸入認證字串,如果認證字串通過了認證,則使用者直接登入成功;如果不成功,則是要求使用者輸入系統口令。口令認證成功後,使用者也可以成功登入系統。從使用上看,與telnet沒有什麼不同之處。而且有了ssh客戶端軟體,如果你要上傳檔案,不必向以前一樣再開乙個ftp視窗,再次認證,然後上傳檔案。使用ssh客戶端自帶的scp工具,就可以直接將檔案上傳到遠端伺服器上。使用方法如下:
host1:dir/filename host2:/home/abc/filename
由於種種原因,一些支援ssh的gui客戶端不一定會很好地支援以上各個伺服器,大家可以自行組合以上工具,找到適合自己的工具。一般來說,在 unix下的客戶端對各種伺服器的支援是最好的。通常在選擇伺服器及客戶端軟體時,最好選擇同一軟體商的產品,這樣不會出現不相容的問題。
Linux作業系統下如何新增服務
首先拷貝乙個下面的模板備用,下面解釋一下 bin sh 是說明該指令碼呼叫的shell的型別 chkconfig 2345 80 05 其中2345是指明服務的執行等級,80表明是系統啟動時要啟動第80號服務 服務號可以重複 05表明是系統關閉要停止的服務號。descr ption service ...
Linux下如何檢視作業系統的位數
linux下如何明確地檢視作業系統的位數 如何知曉作業系統是32位還是64位?這裡介紹一種簡單的方式 plain root localhost mysql 5.1.57 getconf long bit 64通過上面操作,我們可以很方便看到是64位。我的版本資訊如下 plain root local...
Linux作業系統下DriverDisk的製作方法
如果常常在ibm hp等這些伺服器上安裝linux,多多少少都會遇到需要手工載入scsi raid卡驅動情況,而我們遇到這種情況時,都會向硬體廠 商或者linux廠商需求驅動,因為幾乎所有的硬體廠商只提供redhat suse上的驅動,假如安裝的紅旗linux遇到這種情況,那麼就只能向紅旗 尋求驅動...