window下xshell 開啟金鑰認證 禁用伺服器密碼登入
由於大家比較樸實,將實驗室伺服器密碼設定成了程式設計師都知道的。但最近有些實驗室連續最近出現了非法入侵現象(由於伺服器連的是內網,估計是校內小朋友乾的,太傷心了)。只能採用開啟金鑰認證,禁用密碼登入。
相信大家RSA非對稱加密的原理大家都瞭解,這裡就不贅述了。
這裡主要是window下xshell設定方法:
首先填入你需要連線伺服器的基本資訊。
下一步:
之後的對話方塊,點選下一步,下一步,下一步
選擇RSA加密。
生成祕鑰對,私鑰和公鑰。
這裡輸入私鑰的名字和開啟私鑰的密碼。
點選儲存公鑰檔案(作用可以看看下圖中的說明),本文儲存的檔名為id_rsa_1024.txt。
將id_rsa_1024.txt拷貝(如使用xftp,rz等)到需要祕鑰認證的伺服器。
登入伺服器:
(如果沒有.ssh資料夾)$ mkdir ~/.ssh
$ chmod 700 .ssh
$ cat id_rsa_1024.txt >> ~/.ssh/authorized_keys(id_rsa_1024.txt 是你public key的檔名)
$ rm ~/id_rsa_1024.txt
$ chmod 600 ~/.ssh/*
如果以上步驟不能實現不輸密碼登陸的話,需要檢查sshd服務的Pubkey認證功能是否預設開啟
/etc/ssh/sshd_config:
PubkeyAuthentication yes
最後一步:關閉靜態密碼
建議不使用靜態密碼,以後都我們都使用key登入,修改如下內容可以關閉使用密碼認證:
關閉Pam的傳統密碼認證.
PasswordAuthentication選項更改為 no
使用public登入:
選擇剛才你跟公鑰配對的私鑰,輸入你設定的開啟私鑰的祕密。點選ok即可登入。
其他:使用Export匯出你的私鑰給其他人使用。
其他人只有使用Import匯入即可。
ps:關於兩臺伺服器之間如何使用祕鑰登入,這裡給一個nopasswd指令碼。
[plain]- #!/bin/sh
- scp~/.ssh/id_dsa.pub[email protected]$2:~/
- ssh[email protected]$2"touch~/.ssh/authorized_keys;cat~/id_dsa.pub>>~/.ssh/authorized_keys;chmod644~/.ssh/authorized_keys;exit"
執行方式 sh nopasswd USER REMOTE_HOST 注:USER 為另一臺伺服器使用者名稱 REMOTE_HOST為另一臺伺服器ip地址。
執行此指令碼前,請確認:
本機上已有 id_dsa.pub ,若無。 使用命令 ssh-keygen -t dsa 獲得。
遠端機上登入使用者家目錄下,已經有 .ssh 資料夾,若無建立之。
轉載於:https://my.oschina.net/liting/blog/551275