序:最近手上服務器比較多,尤爲是linux,因此服務器之間登陸時常常的問題,可是每次都須要輸入密碼,比較麻煩,尤爲是服務器之間傳輸文件時,因此準備把服務器的訪問方式改成key的方式,且不須要密碼。linux
環境:
vim
測試結果:服務器A-------SSH------>服務器B,無需密碼服務器
實現過程:ssh
1、服務器A配置ide
步驟一,生成publickey:測試
ssh-keygen -b 1024 -t rsa 加密
#這裏的-b 1024 是密鑰加密的長度,最好設大點,有消息稱美國有***解決 ssh的密鑰進行破解。
直接回車spa
設置密碼,若是但願ssh之間不須要輸入密碼,則密碼設置爲空便可!rest
重複設置密碼get
key文件會保存在/root/.ssh目錄下( 默認位置,能夠自行設置位置),這時候.ssh目下會多出幾個文件
id_rsa 私鑰,id_rsa.pub 公鑰文件
步驟二,修改sshd_config配置文件
RSAAuthentication yes
PubkeyAuthentication yes
AuthorizedKeysFile %h/.ssh/authorized_keys
PasswordAuthentication yes
步驟3、重啓ssd服務
service ssh restart
2、服務器B(Liunx): 192.168.1.2
步驟一、將須要ssh到本機的publickey放入指定文件夾,配置文件默認爲:%h/.ssh/authorized_keys
步驟2、添加publickey
vim /root/.ssh/authorized_keys,把A服務器上查看的KEY文件內容,複製到B服務器的authorized_keys中。或者在A上使用命令:ssh-copy-id root@192.168.1.2
步驟3、修改配置文件
修改sshd 的主配置文件,關閉密碼認證登錄,使用key登錄,固然,也能夠同時使用密碼和key兩種方式,主要要看我的愛好了。不過,最好是把密碼的方式打開,由於通常是遠程管理服務器,若是ssh出了問題,就很差辦了。
vim /etc/ssh/sshd_config
找到 PasswordAuthentication yes
改爲 PasswordAuthentication no
步驟4、重啓服務
service sshd restart
3、 測試:
在A服務器上執行:ssh 192.168.1.2 無需密碼,就能夠ssh上去。若是須要A<---->B機器來回ssh,不須要密碼,只須要在A服務器上導入B服務器的publickey就能夠了。以此類推,能夠以A服務器爲管理服務器,登陸到其餘服務器上,作到一臺服務器暢通無阻的登錄。
3、Windows登陸linux服務器,一樣道理:
1.用色secureCRT生成puplic.key,拷貝內容到authorized_keys中
private.key本身保存
2.鏈接linux服務器
secureCRT 全局選項,認證選折對應的puplickey,
設置密碼
重複設置密碼
C:\Documents and Settings\test\Application Data\VanDyke\Identity.pub 系統默認生成位置
鏈接後輸入用戶名和密碼便可,方式更簡單。