如何在SecureCRT上使用公钥登陆Linux服务器
我以前一直使用口令通過ssh協議登陸Linux服務器,最近公司要求使用公鑰登陸。說是安全,好吧。那我們整一下。那到底使用公鑰登陸服務器有什么好處呢?其實我理解是這樣的:
當我們創建了公鑰和私鑰(這是一對,登陸時要使用私鑰解密公鑰)后,把公鑰給任何服務器,登陸Linux服務器時,只要我們的私鑰不變,登陸任何服務器都是不需要密碼的。而是使用公鑰私鑰進行身份驗證。安全的多!這里也隱含了一個小細節,就是不要把你的私鑰給丟了。否則,你想想,幾百臺服務器上好不容易把你的公鑰配置好,而你的私鑰丟失,怎么辦?私鑰是不能單獨生成的!
其實網上的文檔很多。各有千秋。估計是自己明白了,別人看起來比較費勁。這里我整理一下,以備自己查閱:
配置過程分為兩大部分,SecureCRT部分和Linux服務器部分。
SecureCRT部分配置
1、首先生成公鑰。
打開SecureCRT(我的版本為7.0,估計其他版本基本相同)程序,點擊菜單欄的“工具”-》“創建公鑰”。按照步驟執行。其中一步比較重要就是選擇公鑰的格式。建議選擇“OpenSSH”,否則在服務器端使用時需要轉換為OpenSSH各式。何必多次一舉呢。所以這里必須選擇“OpenSSH”。如果選錯了。重新生成一次就可以了。
然后選擇公鑰私鑰存放的地方。默認Identity是私鑰,Identity.pub是公鑰。
2、把Identity.pub文件上傳到你要登陸的Linux服務器上。方法有很多,比如ssh(先不要配置為公鑰登陸),ftp等。具體操作自己搞定。上傳時選擇ASCII方式。
3、在SecureCRT創建服務器連接。協議使用ssh。在“鑒權”方法中,取消勾選“密碼”。選擇“公鑰”,然后點擊右邊的屬性按鈕,在對話框中。
使用全局公鑰設置:表示所有連接都使用該公鑰連接服務器。
使用會話公鑰設置:可以分別為每個連接指定不同的公鑰。
下面的路徑就是指明私鑰的具體路徑。注意了,這里要指明私鑰的路徑。
保存連接就可以了。
Linux服務器端配置
1、sshd_conf配置
主要修改如下幾個內容:
PermitRootLogin no # 默認為注釋,先配置為禁止root用戶登陸,允許root登陸太危險了。好幾次差點犯錯誤。切記切記!
RSAAuthentication yes #默認為注釋, 啟用 RSA 認證
AuthorizedKeysFile .ssh/authorized_keys # 驗證公鑰的存放路徑
PubkeyAuthentication yes # 默認為注釋,啟用公鑰認證
PasswordAuthentication no # 禁止密碼認證,默認是打開的。
保持后,重新啟動ssh服務。在不同的linux服務器上,重啟的方法不同。
RedHat,CentOS: service sshd restart? ? ? //redhat 7 的方法已經改了。
openbsd,freebsd: /etc/rc.d/sshd restart
2、重點部分:配置公鑰存放哪的問題。
要把第一部分上傳上來的公鑰放到用戶home目錄的.ssh/ 目錄下。這里說明一下。如果你想使用test賬號登陸,就要把公鑰放到test賬戶的.ssh目錄下。你可以直接把Identity.pub改為authorized_keys. 當然也可還是用其他方法。
比如:cat Identity.pub >> authorized_keys
另外說明一下。.ssh目錄權限是700,authorized_keys文件權限為644.
重點補充,如果還有其他人也想用自己的公鑰登陸服務器,該如何操作呢? 正常操作應該為該用戶在服務器上創建一個賬號,重新執行本次(Linux服務器端配置,第2點)操作。當然,你也可以偷懶,把他的公鑰也放到test賬號的authorized_keys文件中。但兩個公鑰的內容之間使用換行符隔開。這樣的方法還是不可取的。
最后,使用SecureCRT登陸linux服務器。
這里要注意,即使你使用公鑰登陸服務器,當你連接的時候,還是要你輸入用戶名。為何呢?不是說公鑰驗證么?其實,服務器要知道用你的私鑰和哪個用戶的.ssh目錄下的authorized_keys文件內容進行解密。不可能用你的私鑰和所有的用戶authorized_keys文件進行匹配測試。
但是也有例外,如果你在linux系統上使用公鑰登陸Linux服務器,就不需要指明用戶。方法如下:
# ssh 172.16.24.222
為何呢?這時系統默認以為你登陸的遠程賬號就是你當前登陸的賬號。
如果你設置了公鑰口令,連接時比如輸入。為了安全,這個口令是必須要有的。在SecureCRT中,口令被翻譯為:通行短語。呵呵。
補充一下,在linux系統上,如何創建公鑰和私鑰呢?
方法很簡單,執行ssh-keygen命令,按照提示就可以完成。完成后,自動會在當前用戶的home目錄,創建.ssh文件夾。
服務器端配置和上面的方法相同。
總結
以上是生活随笔為你收集整理的如何在SecureCRT上使用公钥登陆Linux服务器的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: RESET MASTER 和RESET
- 下一篇: mysql 一个死锁的分析