密钥登陆Linux服务器
Linux VPS/服務器的使用越來越多,Linux的安全問題也需要日漸加強。我們遠程線上的服務器,通常是通過密碼方式(ip+帳號+密碼,可能還多一個ssh端口)登錄,如果密碼不夠強壯,那么系統將是灰常不安全的。
下面介紹一種密鑰驗證登錄的方式:
使用密鑰驗證登錄
基于密鑰的安全驗證必須為用戶自己創建一對密鑰,并把共有的密鑰放在需要訪問的服務器上。當需要連接到遠程服務器上時,客戶端軟件就會向服務器發出請求,請求使用客戶端的密鑰進行安全驗證。服務器收到請求之后,先在該用戶的根目錄下尋找共有密鑰,然后把它和發送過來的密鑰進行比較。如果兩個密鑰一致,服務器就用公有的密鑰加密“質詢”,并把它發送給客戶端軟件(putty,xshell等)。客戶端收到質詢之后,就可以用本地的私人密鑰解密再把它發送給服務器,這種方式是相當安全的。
?
一.生成密鑰
1.登錄遠程Linux ?VPS/服務器,執行:ssh-keygen -t rsa?
Generating public/private rsa key pair.
Enter file in which to save the key (.ssh/id_rsa): ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? //直接回車
Enter passphrase (empty for no passphrase): ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?//輸入密鑰密碼(如果不設置,請直接回車。強烈建議輸入1個密碼- -)
Enter same passphrase again: ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?//重復密鑰密碼
2、將~/.ssh/id_rsa.pub復制到~/.ssh/authorized_keys,并修改權限。
cat ~/.ssh/id_rsa.pub >> ~/.ssh/authorized_keys
chmod 600 ~/.ssh/authorized_keys ? ?
3、修改/etc/ssh/sshd_config 文件,將RSAAuthentication 和 PubkeyAuthentication 后面的值都改成yes ,保存。
4、重啟sshd服務,Debian/Ubuntu執行/etc/init.d/ssh restart ;CentOS執行:/etc/init.d/sshd restart。
二、客戶端測試使用密鑰登錄
1、XShell登錄
①把服務器的~/.ssh/id_rsa文件下載到本地。
②
?
?
?
2、SecureCRT登錄
①把服務器的~/.ssh/id_rsa文件下載到本地。
②
?
3、Linux客戶端登錄測試
①、把服務器的~/.ssh/id_rsa文件弄到linux客戶端上,并重命名為rsa_for_55. (~/rsa_for_55)。
②、在Linux客戶端執行:chmod 600?~/rsa_for_55?
? ? ? 再執行:ssh yang@192.168.1.55 -i ?~/rsa_for_55?
? ? ? ?第一次鏈接可能會提示確認,輸入yes即可,再按提示輸入密鑰密碼,沒有問題就會出現用戶提示符。
三、停用密碼驗證登錄方式(前面都ok了,就把密碼驗證給取消吧)
1、修改/etc/ssh/sshd_config 文件
將PasswordAuthentication yes 修改成 PasswordAuthentication no
2、重啟sshd服務
Debian/Ubuntu執行/etc/init.d/ssh restart ;CentOS執行:/etc/init.d/sshd restart。
?
--------------------
這樣,需要同時依靠密鑰和密碼,才能登錄服務器,安全又上升一個等級,有木有。。。
轉載于:https://www.cnblogs.com/assassin1994/p/4661878.html
總結
以上是生活随笔為你收集整理的密钥登陆Linux服务器的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: [SoapUI] 在Test Step
- 下一篇: 一步一步做一个linux文件传输软件(一