当前位置:网站首页 > 编程语言 > 正文

sshd免密登录(ssh 免密登录)



用途:默认情况下,当A主机(1.1.1.1)远程通过ssh命令登陆到B主机(2.2.2.2)上,需要输入B主机的密码。免密登陆的效果为,A通过ssh命令登录到B时,不需要输入密码就可以登录,便于管理

配置方法:

1、A主机生成密钥对儿(公钥+私钥)

    #ssh-keygen -t rsa

    注意:生成的密钥默认保存至/root/.ssh/目录下。

2、A主机复制公钥到远程主机B上

    #ssh-copy-id -i /root/.ssh/id_rsa.pub root@2.2.2.2

    注意:拷贝公钥的时候需要验证B主机的密码

3、B收到A的公钥后,A就可以无需密码登录B

注意:B主机上的~/.ssh/authorized_keys文件,就记录着收到的公钥文件

在多台服务器的集群中,通常要求机器两两之间都可以互相免密登陆对方,如果用上面的配置方法效率较低。我们假设这里有a,b,c,d,e,f,g七台服务器之间要实现互免。

方法一:

在a,b,c,d,e,f,g每一台服务器上:

  # ssh-keygen -t rsa              #所有机器上生成密钥对

  # ssh-copy-id root@g          #把每台机器生成的公钥都复制到g上

在g服务器上:

  # scp /root/.ssh/authorized_keys root@[a|b|c|d|e|f]:/root/.ssh/   #将g上所获得的所有公钥复制到每一台服务器上

方法二(手动)

在a,b,c,d,e,f,g每一台服务器上:

  # ssh-keygen -t rsa             #所有机器上生成密钥对

在g服务器上

  #touch /root/.ssh/ authorized_keys #手动创建存储公钥的文件

将a,b,c,d,e,f,g每一台服务器上/root/.ssh/id_rsa.pub 公钥文件内容追加到g服务器的/root/.ssh/ authorized_keys文件中,每一行是一条公钥

  将g上的/root/.ssh/ authorized_keys文件复制到每一台服务器上

方法三(最简单):所有的机器都用同一套密钥

在a服务器上

# ssh-keygen -t rsa -P "" -f /root/.ssh/id_rsa

# ssh-copy-id root@127.0.0.1

把.ssh目录下的所有文件都拷贝到各个机器

# scp /root/.ssh/* root@[b|c|d|e|f]:/root/.ssh  

注意问题:如遇到复制了公钥还不能免密登陆的情况,通常和/root,/root/.ssh等文件的属主不是root导致的,或者查看ssh登陆日志/var/log/secure来分析不能免密登陆原因。

到此这篇sshd免密登录(ssh 免密登录)的文章就介绍到这了,更多相关内容请继续浏览下面的相关推荐文章,希望大家都能在编程的领域有一番成就!

版权声明


相关文章:

  • 圈一圈算一算怎么圈图(圈一圈算一算怎么圈图一年级下册加法)2026-01-17 22:36:08
  • 为什么耳机老是断开连接(为什么耳机老是断开连接又连上)2026-01-17 22:36:08
  • 拆包器英文(拆包器怎么用)2026-01-17 22:36:08
  • keil破解(keil破解后显示红色)2026-01-17 22:36:08
  • 重绘和回流是什么,如何避免(重绘和回流是什么如何避免)2026-01-17 22:36:08
  • jfla是什么意思(flj是啥意思)2026-01-17 22:36:08
  • m301H创维短接(创维e900s短接引脚接哪)2026-01-17 22:36:08
  • list转为字符串并换行(list转换成字符串)2026-01-17 22:36:08
  • 学籍认证码(学籍认证码有效期怎么查)2026-01-17 22:36:08
  • 打印控件未安装是什么意思(打印机控件未安装怎么办)2026-01-17 22:36:08
  • 全屏图片