CentOS啓用ssh密鑰登陸

 在某些時候,使用密碼做爲登陸服務器的認證方式是不太安全的,爲避免密碼被暴力破解,許多時候能夠採用ssh密鑰登陸服務器,這裏以CentOS爲例。linux

第一步shell

  生成祕鑰對windows

方法1、在服務器上利用ssh-keygen生成,進入到 /root/.ssh/ 輸入:安全

ssh-keygen -t rsa服務器

一路enter跳過(固然你也能夠本身定義,不過不必),會在/root/.ssh下生成公鑰(id_rsa.pub)私鑰(id_rsa) (公鑰是用於服務器端,私鑰是用於客戶端) 而後將私鑰下載至電腦上(登陸時會用到)。ssh

使用Xshell工具下載私鑰工具

一、使用xshell來操做服務很是方便,傳文件也比較方便。加密

二、就是使用rz,sz首先,服務器要安裝了rz,sz rest

三、yum install lrzsz  安裝最後會選擇y,在回車安裝完成io

四、運行rz,會將windows的文件傳到linux服務器 

五、運行sz filename,會將文件下載到windows本地 

方法2、利用遠程工具(如Xshell)生成

這裏以Xshell爲例,點擊」工具-新建用戶密鑰生成嚮導」所有默認,下一步,提示輸入密鑰加密的密碼,這裏能夠爲空,下一步,將公鑰保存爲文件,命名爲id_rsa.pub,上傳到服務器/root/.ssh下。

 

第二步、修改/etc/ssh/sshd_config以下部分

一、RSAAuthentication yes 開啓RSA驗證

二、PubkeyAuthentication yes 是否使用公鑰驗證

三、AuthorizedKeysFile   .ssh/authorized_keys 公鑰的保存位置

四、PasswordAuthentication no 禁止使用密碼驗證登陸

這裏最好是禁止使用密碼驗證登陸,不然用密鑰就沒多大意義了。更改後保存。

 

第三步、進入到密鑰保存的目錄:

cd/root/.ssh     新建密鑰驗證文件」authorized_keys」,並將公鑰輸出重定向覆蓋密鑰驗證文件

touch authorized_keys 

cat id_rsa.pub >> authorized_keys  這裏建議使用追加而不是覆蓋

修改authorized_keys文件權限爲600

chmod  600 /root/.ssh/authorized_keys

第四步、重啓ssh服務

一、#CentOS 7以前的版本請執行: 

service sshd restart

二、#CentOS 7請執行: 

systemctl restart sshd.service

接下來就可以經過密鑰登陸服務器了

在打開鏈接的時候會提示導入用戶密鑰,選擇以前保存的私鑰文件」id_rsa」便可。

相關文章
相關標籤/搜索