利用shell秘鑰登錄服務器


------------恢復內容開始------------

一、點擊Xshell菜單欄的工具,選擇新建用戶密鑰生成向導,進行密鑰對生成操作。

注意選擇長度為2048位秘鑰;

二、修改sshd的配置文件,啟用密鑰認證登錄,同時關閉密碼認證,並重啟服務

三、進入家目錄的.ssh目錄下,將生成的公鑰拷貝到authorized_keys文件中,並賦予600權限

1、公鑰的位置

2、將公鑰拷貝到authorized_keys文件

另外特別注意:

上傳公鑰至服務器之后要修改 

A - 將我們生成的webuse.pub公鑰文件上傳到/webuse/.ssh文件夾下面(如果沒有我們需要創建),然后我們需要將webuse.pub重命名為authorized_keys (千萬寫敲錯)並且用chmod 600 authorized_keys設置權限。

B - 找到/etc/ssh/sshd_config ,把RSAAuthentication和PubkeyAuthentication兩行前面的#注釋去掉。(這是重點)

C - 重啟SSHD服務

關閉遠程linux防火牆,千萬不要漏掉這一部分;(哥們沒有設置,照樣成功!)
永久關閉selinux
 #vi /etc/selinux/config        #修改selinux的配置文件
更改“SELINUX=enforcing”為 SELINUX=disabled  保存退出。
[root@localhost ~]# /usr/sbin/sestatus -v        #查看selinux的狀態命令
SELinux status:                disabled
關閉防火牆
[root@localhost ~]# iptables -F                                #清空防火牆配置
[root@localhost ~]# /etc/init.d/iptables save          #清空防火牆配置后,記得保存
iptables:將防火牆規則保存到 /etc/sysconfig/iptables:    [確定]

四、進行登錄

注:

錯誤提示:

xshell登錄時,提示“所選的用戶密鑰未在遠程主機上注冊 ”

跟蹤

登陸目標機器,查看sshd的日志信息。日志信息目錄為,/var/log/secure
你會發現如下字樣的日志信息。
Jul 22 14:20:33 v138020.go sshd[4917]: Authentication refused: bad ownership or modes for directory /home/webuser

原因

sshd為了安全,對屬主的目錄和文件權限有所要求。如果權限不對,則ssh的免密碼登陸不生效。
用戶目錄權限為 755 或者 700,就是不能是77x。
.ssh目錄權限一般為755或者700。
rsa_id.pub 及authorized_keys權限一般為644
rsa_id權限必須為600

解決方法

檢測目錄權限,把不符合要求的按要求設置權限即可。

我的網站目錄也在當前用戶家目錄下  單獨設置權限即可

版權聲明:本文為CSDN博主「幸福丶如此」的原創文章,遵循 CC 4.0 BY-SA 版權協議,轉載請附上原文出處鏈接及本聲明。

原文鏈接:https://blog.csdn.net/m0_37886429/article/details/78422914

------------恢復內容結束------------

一、點擊Xshell菜單欄的工具,選擇新建用戶密鑰生成向導,進行密鑰對生成操作。

注意選擇長度為2048位秘鑰;

二、修改sshd的配置文件,啟用密鑰認證登錄,同時關閉密碼認證,並重啟服務

三、進入家目錄的.ssh目錄下,將生成的公鑰拷貝到authorized_keys文件中,並賦予600權限

1、公鑰的位置

2、將公鑰拷貝到authorized_keys文件

另外特別注意:

上傳公鑰至服務器之后要修改 

A - 將我們生成的webuse.pub公鑰文件上傳到/webuse/.ssh文件夾下面(如果沒有我們需要創建),然后我們需要將webuse.pub重命名為authorized_keys (千萬寫敲錯)並且用chmod 600 authorized_keys設置權限。

B - 找到/etc/ssh/sshd_config ,把RSAAuthentication和PubkeyAuthentication兩行前面的#注釋去掉。(這是重點)

C - 重啟SSHD服務

關閉遠程linux防火牆,千萬不要漏掉這一部分;(哥們沒有設置,照樣成功!)
永久關閉selinux
 #vi /etc/selinux/config        #修改selinux的配置文件
更改“SELINUX=enforcing”為 SELINUX=disabled  保存退出。
[root@localhost ~]# /usr/sbin/sestatus -v        #查看selinux的狀態命令
SELinux status:                disabled
關閉防火牆
[root@localhost ~]# iptables -F                                #清空防火牆配置
[root@localhost ~]# /etc/init.d/iptables save          #清空防火牆配置后,記得保存
iptables:將防火牆規則保存到 /etc/sysconfig/iptables:    [確定]

四、進行登錄

注:

錯誤提示:

xshell登錄時,提示“所選的用戶密鑰未在遠程主機上注冊 ”

跟蹤

登陸目標機器,查看sshd的日志信息。日志信息目錄為,/var/log/secure
你會發現如下字樣的日志信息。
Jul 22 14:20:33 v138020.go sshd[4917]: Authentication refused: bad ownership or modes for directory /home/webuser

原因

sshd為了安全,對屬主的目錄和文件權限有所要求。如果權限不對,則ssh的免密碼登陸不生效。
用戶目錄權限為 755 或者 700,就是不能是77x。
.ssh目錄權限一般為755或者700。
rsa_id.pub 及authorized_keys權限一般為644
rsa_id權限必須為600

解決方法

檢測目錄權限,把不符合要求的按要求設置權限即可。

我的網站目錄也在當前用戶家目錄下  單獨設置權限即可

版權聲明:本文為CSDN博主「幸福丶如此」及wuling129的原創文章,遵循 CC 4.0 BY-SA 版權協議,轉載請附上原文出處鏈接及本聲明。

原文鏈接:https://blog.csdn.net/m0_37886429/article/details/78422914及https://www.cnblogs.com/wuling129/p/4665001.html


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM