多台CentOS服务器下实现SSH免密码登录

ROOT用户下实现SSH免密码登录

第一步:进入目录/root/.ssh

$ cd  /root/.ssh/

执行以下命令,会在当前目录下生成公钥(id_rsa.pub)/私钥(id_rsa)对

第二步:$ ssh-keygen -t rsa  -P ''

其中 -p是可选参数,-P表示密码,-P '' 就表示空密码,也可以不用-P参数,这样就要三车回车,用-P就一次回车。

如图:

第三步:

$ cp   id_rsa.pub   10.0.76.4keys  # 该文件将拷贝到想无密钥登陆的节点的凭证。

$ cp   id_rsa.pub   authorized_keys

$ chmod  600   authorized_keys

第四步:接着拷贝命令如下:

$ scp   10.0.76.4keys  root@10.0.76.23:/root/.ssh/

$ scp   10.0.76.4keys  root@10.0.76.24:/root/.ssh/

第二部分

分别切换到以下23,24两台服务器执行以下操作,4服务就可以无密钥登陆23,24服务器。

首先:执行前面的第一,二,三步。

然后,执行以下步骤:

$ cat 10.0.76.4keys  >>  authorized_keys

$ chmod  600  authorized_keys

反向无密钥登陆

同上。

测试:

ssh    ip

ssh    主机名

非ROOT用户下实现SSH免密码登录

1、创建公钥、公钥 
ssh-keygen -t rsa 
无视它出来的任何提示,欢快的一路回车到底吧。 
2、把公钥 id_rsa.pub 复制到远程机器的 /home/username/.ssh目录 并命名为 authorized_keys 
方法1: 一步到位:scp ~/.ssh/id_rsa.pub username@hostname:~/.ssh/authorized_keys

方法2: 复制 scp ~/.ssh/id_rsa.pub username@hostname:~ 
登陆 ssh username@hostname 
追加 cat id_rsa.pub >> .ssh/authorized_keys 
各种手段,随你开心,反正复制过去就成~多台远程主机就多次复制~ 如果你本机登陆用户和远程登陆用户一致的话,就可以直接 ssh hostname直接登陆,下面就不用看了。

3、解决本地登陆用户与远程登陆用户不一致 
好吧,这事很纠结,虽然不用输入密码了,但是还得 ssh username@hostname 来登陆,很不爽,你懂的。 其实解决也很简单(but是同事告诉我的,老脸一红),修改本地登陆用户的 ~/.ssh/config 文件,如果木有的话就自个儿建一个吧,内容如下: 
Host hostname 
user username 
Host hostname2 
user username2 
这样,本地和远程登陆用户名不一致也可以 ssh hostname 登陆了。 
收工。

上一篇:VMware安装Ubuntu18.04无法全屏


下一篇:微信被曝高危0day漏洞,建议立即更新