1.生成公鑰(Pubic Key)與私鑰(Private Key):
python
Xshell自帶有用戶密鑰生成嚮導,以下圖所示:點擊菜單欄的工具->新建用戶密鑰生成嚮導
linux
雖然SSH2協議中RSA和DSA算法均可以使用,可是爲了保險起見,咱們通常都選擇RSA密鑰類型,這樣不論你使用的SSH協議是SSH1仍是SSH2均可以使用;密鑰長度1024位即算法
正在生成密鑰,直接下一步便可shell
密鑰名稱能夠隨便填寫,不過通常咱們最好是默認名稱_年月日,這樣方便往後管理;通常不須要填寫密鑰密碼,填寫的話就是密鑰加密碼雙重驗證,更安全。vim
公鑰格式默認的SSH-OpenSSH便可,這裏點擊保存爲文件,選擇一個路徑安全
文件名默認便可
服務器
此時會彈出用戶密鑰的一個窗口,Xshell已經自動導入了剛纔我生成的私鑰,公鑰已經被我保存在了桌面上(你剛纔選擇的文件路徑)。ssh
若是沒有彈出上面的窗口,能夠選擇菜單欄的工具->用戶密鑰管理者,打開用戶密鑰這個窗口。ide
選中剛纔生成的私鑰,點擊右側的導出按鈕,若是換電腦或者重裝系統了,從新導入私鑰便可。
工具
若是你以前填寫了密鑰管理密碼,這裏會提示你輸入密碼。
2.添加公鑰(Pubic Key)到遠程Linux服務器;
用xftp上傳id_rsa_1024_20140305.pub到用戶home目錄下的.ssh下(若是沒有則建立此目錄),並命名爲:authorized_keys,再修改權限爲600.
mkdir -p /root/.ssh mv /root/id_rsa_1024_20140305.pub /root/.ssh/authorized_keys chmod 600 /root/.ssh/authorized_keys
修改sshd_config配置文件
vim /etc/ssh/sshd_config
PubkeyAuthentication yes #啓用公告密鑰配對認證方式 AuthorizedKeysFile .ssh/authorized_keys #設定PublicKey文件路徑 RSAAuthentication yes #容許RSA密鑰 PasswordAuthentication no #禁止密碼驗證登陸,若是啓用的話,RSA認證登陸就沒有意義了
從新加載sshd服務: /etc/init.d/sshd restart
3.客戶端載入私鑰(Private Key)登陸:
注:
私鑰,在Xshell裏也叫用戶密鑰
公鑰,在Xshell裏也叫主機密鑰
「所選的用戶密鑰未在遠程主機上註冊。請再試一次。」在登錄是xshell報錯,檢查服務器的selinux及iptables是否開啓。