安全的設置服務器 登陸,之前用用戶名和密碼登陸服務器 這樣不安全 ,用SSH公鑰(public key)驗證 這個辦法能很好的解決 登陸服務器 和安全登陸服務器 的特點:
目標: Client 免輸密碼ssh登錄Server SSH支持多種登錄驗證方式,我們默認使用的是鍵盤交互方式(keyboard-interactive),也就是手工輸入密碼的那種。這里我們要改成公鑰(publickey)驗證方式,並且設置passphrase為空,以達到免輸密碼登錄的目的。 1. Client端: cd ~/.ssh #產生公鑰文件(id_dsa.pub)和私鑰文件(id_dsa), 類型DSA, 長度1024 bits #注意詢問passphrase的時候直接回車 ssh-keygen -t dsa -b 1024 #將公鑰復制到遠程主機去 scp id_dsa.pub Server:~/.ssh/id_dsa.pub.Client //例如:scp id_dsa.pub 用戶名@ip地址:目標路徑 scp -P 端口號 id_dsa.pub 用戶名@ip地址:目標路徑 2. Server端: cd ~/.ssh #將Client的公鑰放入Server的信任列表 cat id_dsa.pub.Client >> authorized_keys #更新權限,很重要 chmod 0600 *從此以后Client SSH登錄Server就不要手工輸入密碼了。 詳細設置參數 可參考 http://manpages.ubuntu.com/manpages/gutsy/zh_CN/man1/scp.1.html scp是linux下的遠程拷貝 命令: (1)將本地文件拷貝到遠程:scp 文件名 用戶名@計算機IP或者計算機名稱:遠程路徑
使用scp命令需要服務端linux提供ssh服務(linux默認是沒有安裝ssh服務的) 1.是否安裝ssh:可連接相應的ssh服務查看,sshhost;如出現:ssh: connect to host *** port22:Connection refused,說明尚未安裝ssh服務。 2.安裝ssh服務:sudo apt-get install openssh-server自動安裝ssh服務。 3.啟動:sudo /etc/init.d/sshstart 4.停止:sudo /etc/init.d/sshstop 5.配置:ssh默認的端口是22,可以修改配置文件更改端口,然后重啟ssh服務即可。(注:配置文件/etc/ssh/sshd_config) 說明: 該命令將在用戶的主目錄/.ssh目錄下面產生一對密鑰 一般采用的ssh的rsa密鑰: id_rsa 私鑰 id_rsa.pub 公鑰 下述命令產生不同類型的密鑰 ssh-keygen -t dsa ssh-keygen -t rsa ssh-keygen -t rsa1
|