您好,登錄后才能下訂單哦!
本篇文章給大家分享的是有關Linux系統中設置SSH免密登錄的解決方案是什么,小編覺得挺實用的,因此分享給大家學習,希望大家閱讀完這篇文章后可以有所收獲,話不多說,跟著小編一起來看看吧。
SSH 是一種計算機之間加密登錄的協議,它相對于telnet和rsh的明文傳輸
提供了加密、校驗和壓縮,使得我們可以很安全的遠程操作,而不用擔心信息泄露(當然不是絕對的,加密總有可能被破解,只是比起明文來說那是強了不少)。
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 。
編輯 /etc/sysconfig/network 文件,使用命令: vim /etc/sysconfig/network ,設置格式:HOSTNAME=[主機名] 。 將A服務器的主機名設置為 server1 。
將B服務器的主機名設置為 server2 。
編輯 /etc/hosts 文件,使用命令:vim /etc/hosts ,在兩臺服務器的 hosts 文件中分別增加如下配置:
192.168.12.11 server1 192.168.12.12 server2
編輯兩臺服務器的 /etc/ssh/sshd_config 文件,使用命令:vim /etc/ssh/sshd_config 。 去掉以下3行的 “#” 注釋:
RSAAuthentication yes PubkeyAuthentication yes AuthorizedKeysFile .ssh/authorized_keys
重啟 sshd 服務,使用命令:/sbin/service sshd restart 。
使用命令:
useradd guest1 //創建新用戶 passwd guest1 //設置新用戶登錄密碼
同樣地,在 server2 中創建一個 guest2 賬戶 。
從 root 用戶切換到要免密碼登錄的賬戶,使用命令:su guest1 。 執行命令:ssh-keygen -t rsa
無需指定口令密碼,直接回車,命令執行完畢后會在 guest1 用戶的家目錄中(/home/guest1/.ssh)生成兩個文件:
id_rsa: 私鑰 id_rsa.pub:公鑰
按照同樣的步驟,在 server2 中為 guest2 賬戶生成好秘鑰文件。
使用命令:
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 文件內容如下:
使用命令:
chmod 700 /home/guest1/.ssh chmod 600 /home/guest1/.ssh/authorized_keys
執行完以上設置之后 server1 就能夠免密碼登錄本機了,使用命令:ssh guest1@server1 。
注意:當 known_hosts 文件中缺少主機名稱信息時會提示如下信息,輸入 yes 即可將主機名稱寫入 known_hosts 文件并登陸成功。
至此,主機 server1 的 SSH 免密碼登錄就算配置完成了,接下來配置 server2 。
執行以下命令將生成的 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賬戶了。
Linux的版本有:Deepin、UbuntuKylin、Manjaro、LinuxMint、Ubuntu等版本。其中Deepin是國內發展最好的Linux發行版之一;UbuntuKylin是基于Ubuntu的衍生發行版;Manjaro是基于Arch的Linux發行版;LinuxMint默認的Cinnamon桌面類似Windows XP簡單易用;Ubuntu則是以桌面應用為主的Linux操作系統。
以上就是Linux系統中設置SSH免密登錄的解決方案是什么,小編相信有部分知識點可能是我們日常工作會見到或用到的。希望你能通過這篇文章學到更多知識。更多詳情敬請關注億速云行業資訊頻道。
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。