歡迎來到Linux教程網
Linux教程網
Linux教程網
Linux教程網
您现在的位置: Linux教程網 >> UnixLinux >  >> Linux管理 >> Linux維護

openssh的安裝及配置

  ssh是替代telnet,rsh,rcp等遠程命令的有效工具,為什麼這麼說?

  因為ssh是采用加密傳輸,不會造成密碼的明文傳送,增加了安全性;

  再有如果采用密鑰的驗證方式,即可以去掉輸入密碼的麻煩,又可以進一步增加系統的安全性。因為密鑰才是唯一的驗證方式,即使你破解了密碼,沒有密鑰文件也是登陸不了系統的。

  注意:使用密鑰可以省去輸入密碼的麻煩;但是密鑰千萬不要丟失,如果重裝系統,需要重新生成密鑰。

  使用ssh的加密隧道,可以實現一些增值功能,像sftp,scp,rsync,像mail,dns這些都可以使用ssh的隧道。

  ssh有兩種協議,ssh1和ssh2。這兩種是不兼容的。openssh同時支持ssh1和ssh2協議,又因為openssh是完全免費的,現在應用特別廣。

  相反ssh的開發者,對於ssh1,提供免費;ssh2卻需要商業許可證。

  如果安裝openssh,同時支持ssh1和ssh2;如果安裝其他的ssh軟件,需要查看文檔,都支持哪些協議。

  openssh的安裝:

  下載.tar.gz的安裝包,解壓後,./configure-->make-->make install.

  沒有需要特別說明的地方,查看安裝文檔。

  缺省安裝後,就可以使用ssh  username@hostname登陸,輸入正確密碼。ok。

  如果想采用無密碼、密鑰的登陸方式,還需要做些設置。

  ssh服務器端的配置文件為sshd_cofig,默認在/etc/ssh/目錄下。

  主要設置服務器都支持哪些選項,比如是否允許root登陸,是否使用密鑰等。

  ssh客戶端的配置文件為ssh_config,默認在/etc/ssh/目錄下,主要設置客戶端登陸時的一些缺省選項。~/.ssh/config,用戶主目錄下的.ssh目錄的config文件是針對此用戶的ssh客戶端配置。

  再有就是可以在命令行,給ssh客戶端指定一些選項。

  這三種配置的優先級為命令行參數>>~/.ssh/config>>/etc/ssh/ssh_config。

  下面介紹采用無密碼,密鑰的驗證方式思路。

  先要在客戶端操作:

  密鑰算法有兩種rsa和dsa。

  使用ssh-keygen -t dsa生成dsa密鑰。

  使用ssh-keygen 或者ssh-keygen -d生成ssh1或ssh2協議的rsa密鑰。

  生成的私鑰和公鑰都在~/.ssh/下,文件名叫id_dsa和id_dsa.pub,

  rsa對應的就叫id_rsa和id_rsa.pub

  需要做的就是把公鑰拷貝到 服務器端的相同用戶主目錄的.ssh目錄下,並且文件名叫authorized_keys,如果此文件已經存在,並且儲存了其他機器的密鑰,就需要把.pub文件內容添加進來。

  另外還需要把服務器端的密鑰驗證方式打開。

  說明:1.如果想在多台機器上無密碼登陸,需要分別給每台機器生成密鑰,把公鑰添加到服務器端相應用戶名下的authorized_keys文件中。

  2.密鑰文件丟失,或者系統重裝後,需要重新制作密鑰。

  3.windows機器ssh登陸到unix服務器,也可以做無密碼密鑰登陸。需要使用SecureCRT生成公鑰,然後拷貝到ssh服務器。

Copyright © Linux教程網 All Rights Reserved