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

一、A免密登陆到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免密登陆的更多相关文章

  1. macos ssh host配置及免密登陆

    windows下面有xshell 这样的可视化ssh管理工具 macos 下面使用终端做下简单配置,也非常方便,具体过程如下 生成秘钥 cd ~/.sshssh-keygen -t rsa 生成了私钥 ...

  2. SSH之免密登陆

    又来了,上头让小轩我在服务器中写一个Shell脚本,主要用来在机器B中定时备份机器A中的一些文件.那么,小轩是怎么想的呢? 在小轩的知识库里,现在有scp和ssh两个玩具.别的还真没有其他什么东西了. ...

  3. ssh免密登陆配置

    目录 ssh免密登陆 在A工作站上输入 B服务器上输入 登陆 ssh初次登陆询问 1.单次取消 2.ansible中增加链接参数 3.修改ansible配置参数[推荐] 4.修改服务器上的ssh_co ...

  4. xshell 远程登陆CentOS7 免密登陆

    首先说一下大体的思路: 1. 以密码登陆CentOS系统 2. 配置ssh 3. xshell 生成秘钥 4. 进行免密登陆 软件.设备: xshell(下载地址(免费版),也可以自行百度下载) Ce ...

  5. centOS7开启ssh免密登陆

    一.登陆服务器生成ssh-key 二.把ssh-key复制到被登陆机器上 三.设置权限 root# .ssh 文件夹权限 root# .ssh/authorized_keys 文件权限 四.测试是否正 ...

  6. Linux免密登陆设置了免密登陆为啥还需要输入密码

    一.设置了免密码登陆但是还是需要输入密码: 权限保证:1.authorized-keys 的权限为 600 2.home.账户所在的目录如hadoop..ssh这三个文件的权限都必须设置为700,缺少 ...

  7. 阿里云ssh免密登陆突然无效

    [root@node03 ~]# ssh-copy-id node02 root@node02's password: sh: .ssh/authorized_keys: Permission den ...

  8. ssh安全优化免密登陆

    ssh协议 为什么使用ssh协议? 在进行传输时,会对数据进行加密,保证会话安全:telnet协议不是加密传输,在传输过程中如果被抓包,就会造成信息泄露,telnet默认不支持root远程. # 常用 ...

  9. ssh的免密登陆

    想必大家都有使用ssh登陆的过程了,那么,怎么设置ssh免密登陆呢?下面有一些我的总结: 环境:服务器主.从 主服务器:192.168.1.1 从服务器:192.168.1.2 实现主服务器ssh登录 ...

随机推荐

  1. pwnable.kr-random-Writeup

    MarkdownPad Document *:first-child { margin-top: 0 !important; } body>*:last-child { margin-botto ...

  2. 基于bs4库的HTML内容查找方法

    一.信息提取实例 提取HTML中所有的URL链接 思路:1)搜索到所有的<a>标签 2)解析<a>标签格式,提取href后的链接内容 >>> import r ...

  3. Sunday算法浅谈

    一.Sunday算法简介 Sunday算法在我看来比起Kmp和bm都更加容易理解,代码实现也更加简洁.Sunday算法由Daniel M.Sunday在1990年提出,它的思想跟BM算法很相似只不过S ...

  4. 喵星之旅-狂奔的兔子-centos7安装MySQL 5.5

    安装环境:https://www.cnblogs.com/kittybunny/p/12296078.html 一.下载安装文件 下载地址 https://downloads.mysql.com/ar ...

  5. UDP协议 sendto 和 recvfrom 浅析与示例

    UDP(user datagram protocol)用户数据报协议,属于传输层. UDP是面向非连接的协议,它不与对方建立连接,而是直接把数据报发给对方.UDP无需建立类如三次握手的连接,使得通信效 ...

  6. 自定义xmlhttprequest

    /** * xhr_proxy.js * 通过劫持原生XMLHttpRequest实现对页面ajax请求的监听 * @author binaryfire */ const READY_STATE_CH ...

  7. 吴裕雄 python 机器学习——模型选择损失函数模型

    from sklearn.metrics import zero_one_loss,log_loss def test_zero_one_loss(): y_true=[1,1,1,1,1,0,0,0 ...

  8. [1/100]Python安装

    Python官方版本下载地址: https://www.python.org/downloads/release (上图为3.8.2网络安装版) 默认安装: pip Python安装模块 tkinte ...

  9. 同步I/O和异步I/O

    同步I/O包括:阻塞,非阻塞,多路复用 阻塞模型:给你送的外卖到了,给你打电话,你不去取,外卖小哥一直在那等你,直到你来,形成阻塞,当然应该给外卖小哥点赞,哈哈哈哈!! 非阻塞模型:取外卖的主人非常饿 ...

  10. C++学会STL

    1.1 泛型程序设计简介 泛型程序设计,简单地说就是使用模板的程序设计法.将一些常用的数据结构(比如链表,数组,二叉树)和算法(比如排序,查找)写成模板,以后则不论数据结构里放的是什么对象,算法针对什 ...