Linux配置SSH免用戶免密碼登陸


1. 目的

簡化SSH登陸過程, 實現從機器A登陸機器B只需要運行ssh hostname即可, 即不需要輸入用戶名和密碼。

2. 配置host

配置host的作用是ssh登陸機器時用hostname代替IP, 在機器很多的集群環境中hostname比IP容易記的多, 編輯 /etc/hosts文件, 配置需要登陸的機器IP和hostname, 我這里配置機器129.211.93.219的hostname為 spider01


vim /etc/hosts

如果能ping通配置的hostname則配置成功。

2. 配置免密

使用ssh-keygen生成密鑰,將公鑰文件上傳至目標機器即可實現免密登陸,使用命令生成密鑰:


ssh-keygen -t rsa -C 'comment'

  • -t rsa: 指定使用 rsa加密;

  • -C: 添加備注, 備注會加到公鑰文件最后,方便區分;

運行命令會有交互輸入,全部使用默認值直接回車就行,默認會在家目錄的.ssh/文件夾下生成四個文件:

  • authorized_keys: 存放遠程免密登錄的公鑰,主要通過這個文件記錄遠程機器的公鑰。

  • id_rsa: 生成的私鑰文件

  • id_rsa.pub: 生成的公鑰文件

  • known_hosts: 已知的主機公鑰清單

然后通過ssh-copy-id命令復制本機公鑰到目標機器上,運行命令:


ssh-copy-id -i ~/.ssh/id_rsa.pub user_name@hostname

運行成功后即可使用ssh user_name@hostname 免密碼登陸。

3. 配置免用戶

編輯.ssh/目錄下config 文件, 沒有則新建一個,


vim ~/.ssh/config

添加目標機器配置:

添加成功后,即可使用ssh hostname直接登陸。


免責聲明!

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



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