日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 综合教程 >内容正文

综合教程

Linux下SSH免密码登录配置详解

發布時間:2023/12/1 综合教程 28 生活家
生活随笔 收集整理的這篇文章主要介紹了 Linux下SSH免密码登录配置详解 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

服務器

假設有 A、 B 兩臺 Linux 服務器,我們希望能夠從其中一臺服務器通過 SSH 免密碼登錄到另一臺服務器。

兩臺服務器的信息如下:

主機名
IP地址
免密碼登錄用戶名

server1
192.168.12.11
guest1

server2
192.168.12.12
guest2

環境設置(root權限)

1.關閉防火墻和SELinux

Redhat使用了SELinux來增強安全,關閉的辦法為:

a. 永久有效
修改 /etc/selinux/config 文件中的 SELINUX=enforcing 修改為 SELINUX=disabled ,然后重啟。

b. 臨時生效
setenforce 0
關閉防火墻的方法為:

a. 永久有效
開啟:chkconfig iptables on
關閉:chkconfig iptables off

b. 臨時生效
開啟:service iptables start
關閉:service iptables stop
需要對兩臺服務器分別進行設置,關閉防火墻和 SELinux 。

2.設置主機名

編輯 /etc/sysconfig/network 文件,使用命令: vim /etc/sysconfig/network ,設置格式:HOSTNAME=[主機名] 。
將A服務器的主機名設置為 server1 。

將B服務器的主機名設置為 server2 。

3.配置hosts

編輯 /etc/hosts 文件,使用命令:vim /etc/hosts ,在兩臺服務器的 hosts 文件中分別增加如下配置:

192.168.12.11 server1
192.168.12.12 server2 

4.配置sshd

編輯兩臺服務器的 /etc/ssh/sshd_config 文件,使用命令:vim /etc/ssh/sshd_config 。

去掉以下3行的 “#” 注釋:

RSAAuthentication yes
PubkeyAuthentication yes
AuthorizedKeysFile   .ssh/authorized_keys

重啟 sshd 服務,使用命令:/sbin/service sshd restart 。

秘鑰設置

1.創建免密碼登錄賬戶

使用命令:

useradd guest1 //創建新用戶
passwd guest1 //設置新用戶登錄密碼 

同樣地,在 server2 中創建一個 guest2 賬戶 。

2.生成秘鑰

從 root 用戶切換到要免密碼登錄的賬戶,使用命令:su guest1 。

執行命令:ssh-keygen -t rsa

無需指定口令密碼,直接回車,命令執行完畢后會在 guest1 用戶的家目錄中(/home/guest1/.ssh)生成兩個文件:

id_rsa: 私鑰
id_rsa.pub:公鑰

按照同樣的步驟,在 server2 中為 guest2 賬戶生成好秘鑰文件。

3.將公鑰導入到認證文件

使用命令:

cat /home/guest1/.ssh/id_rsa.pub >> /home/guest1/.ssh/authorized_keys
ssh guest2@server2 cat /home/guest2/.ssh/id_rsa.pub >> authorized_keys

使用命令 cat authorized_keys 查看 authorized_keys 文件內容如下:

4.設置文件訪問權限

使用命令:

chmod 700 /home/guest1/.ssh
chmod 600 /home/guest1/.ssh/authorized_keys

執行完以上設置之后 server1 就能夠免密碼登錄本機了,使用命令:ssh guest1@server1 。

注意:當 known_hosts 文件中缺少主機名稱信息時會提示如下信息,輸入 yes 即可將主機名稱寫入 known_hosts 文件并登陸成功。

至此,主機 server1 的 SSH 免密碼登錄就算配置完成了,接下來配置 server2 。

5.將認證文件復制到其他主機

執行以下命令將生成的 authorized_keys、known_hosts兩個文件從 server1 復制到 server2 。

# scp [要傳輸的本地文件] [遠程主機用戶名]@遠程主機ip或主機名:[文件要傳輸到的目標位置]
scp /home/guest1/.ssh/authorized_keys guest2@server2:/home/guest2/.ssh/authorized_keys
scp /home/guest1/.ssh/known_hosts guest2@server2:/home/guest2/.ssh/known_hosts

待復制完成以后,先使用以下命令設置文件訪問權限。

chmod 700 /home/guest2/.ssh
chmod 600 /home/guest2/.ssh/authorized_keys

然后,執行 ssh guest1@server1 命令就能夠使用server2的guest2賬戶免密碼登錄server1的guest1賬戶了。

至此,兩臺服務器的SSH 免密碼登錄就全部設置完成,如果出錯,請仔細檢查以上各個步驟。

以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支持億速云。

總結

以上是生活随笔為你收集整理的Linux下SSH免密码登录配置详解的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。