ssh 互信设置

本贴最后更新于 2193 天前,其中的信息可能已经时过境迁

第一步、首先在要互相建立 ssh 互信的所有主机中当前用户下(互信是针对用户和 ip)执行如下命令

1、配置 hosts

2、生产密钥对

echo "ssh 互信配置开始"

ssh 互信配置开始

mkdir -p ~/.ssh
chmod 700 ~/.ssh

cd ~/.ssh

.ssh ssh-keygen -t rsa

.ssh ls -lt

总用量 16

-rw------- 1 ppzlinux ppzlinux 1675 2 月 17 21:56 id_rsa

-rw-r--r-- 1 ppzlinux ppzlinux 394 2 月 17 21:56 id_rsa.pub

-rw-r--r-- 1 ppzlinux ppzlinux 1 2 月 16 15:22 known_hosts

-rw------- 1 ppzlinux ppzlinux 789 2 月 16 14:48 authorized_keys

第二部、把所有主机的当前用户下的公钥文件 id_rsa.pub 里面的内容都复制到 authorized_keys,然后把这个文件复制到所有主机的~/.ssh 目录即可。

1、做所有主机执行如下

Cat /home/ppzlinux/.ssh/id_rsa.pub /home/ppzlinux/.ssh/authorized_keys

2、把上述每台主机执行如下

cp /home/ppzlinux/.ssh/authorized_keys /home/ppzlinux/.ssh/authorized_keys 主机名

3、如下

cat authorized_keys 主机名 1 authorized_keys 主机名 2 authorized_keys 主机名 3>authorized_keys

4、

把 3 步的 authorized_keys 文件覆盖到每台主机的/home/ppzlinux/.ssh/authorized_keys

5、每台主机上执行

chmod 600 ~/.ssh/authorized_keys

第三步、测试

1、在每台主机做 ssh 访问(包括本机自己),比如 pdsh 批量复制文件部署时,很多时候本机也要部署,因此自己也要对自己做互信才行。

ssh 远程 ip 或远程主机名(一定要先做 hosts 配置),第一此要输 yes/no,退出(exit),第二次如果能直接登陆,说明互信配置成功

2、如果第二次还要提示 yes/no,说明没配置成功

3、没互信成功情况下的问题检查,上述步骤没有缺少的前提下,检查每台机器的 authorized_keys 内容是否一样,可以比较 md5 值是否一样,

还有 known_hosts 文件之前是否已经存在,这个文件记录每次访问其他主机的信息,如果发现不一样会报错会互信成功,解决办法是清空

4、完毕。

问题:

如果主机的 ip 改过之后,要记得:mv /home/ppzlinux/.ssh/known_hosts /home/ppzlinux/.ssh/known_hosts.bak

然后重新用 ssh 登陆一次即可无密码登陆了。

总结:对方有你的公钥你就可以无密码访问它,即把 id_rsa.pub 里的内容加入对方的 authorized_keys 文件里。

注意:

$ vi /etc/ssh/sshd_config

找到以下内容,并去掉注释符”#“

RSAAuthentication yes

PubkeyAuthentication yes

AuthorizedKeysFile .ssh/authorized_keys

service sshd restart

scp ~/.ssh/id_rsa.pub root@192.168.179.133:/root/.ssh/id_rsa.pub_ubuntu

然后

[root@ppzCentos6 .ssh]# cat id_rsa.pub>authorized_keys

[root@ppzCentos6 .ssh]# cat id_rsa.pub_ubuntu>>authorized_keys

直接复制粘贴有时不行哦,最好使用如下方式:

ssh-copy-id root@192.168.179.129

即把当前所在机器的当前用户的公钥复制追加到远程主机指定用户的 authorized_keys 的末尾。

  • SSH
    42 引用 • 51 回帖

相关帖子

欢迎来到这里!

我们正在构建一个小众社区,大家在这里相互信任,以平等 • 自由 • 奔放的价值观进行分享交流。最终,希望大家能够找到与自己志同道合的伙伴,共同成长。

注册 关于
请输入回帖内容 ...

推荐标签 标签

  • Elasticsearch

    Elasticsearch 是一个基于 Lucene 的搜索服务器。它提供了一个分布式多用户能力的全文搜索引擎,基于 RESTful 接口。Elasticsearch 是用 Java 开发的,并作为 Apache 许可条款下的开放源码发布,是当前流行的企业级搜索引擎。设计用于云计算中,能够达到实时搜索,稳定,可靠,快速,安装使用方便。

    116 引用 • 99 回帖 • 247 关注
  • JSON

    JSON (JavaScript Object Notation)是一种轻量级的数据交换格式。易于人类阅读和编写。同时也易于机器解析和生成。

    52 引用 • 190 回帖
  • Flutter

    Flutter 是谷歌的移动 UI 框架,可以快速在 iOS 和 Android 上构建高质量的原生用户界面。 Flutter 可以与现有的代码一起工作,它正在被越来越多的开发者和组织使用,并且 Flutter 是完全免费、开源的。

    39 引用 • 92 回帖 • 8 关注
  • SEO

    发布对别人有帮助的原创内容是最好的 SEO 方式。

    35 引用 • 200 回帖 • 26 关注
  • 导航

    各种网址链接、内容导航。

    37 引用 • 168 回帖
  • Sphinx

    Sphinx 是一个基于 SQL 的全文检索引擎,可以结合 MySQL、PostgreSQL 做全文搜索,它可以提供比数据库本身更专业的搜索功能,使得应用程序更容易实现专业化的全文检索。

    1 引用 • 193 关注
  • 小薇

    小薇是一个用 Java 写的 QQ 聊天机器人 Web 服务,可以用于社群互动。

    由于 Smart QQ 从 2019 年 1 月 1 日起停止服务,所以该项目也已经停止维护了!

    34 引用 • 467 回帖 • 713 关注
  • 架构

    我们平时所说的“架构”主要是指软件架构,这是有关软件整体结构与组件的抽象描述,用于指导软件系统各个方面的设计。另外还有“业务架构”、“网络架构”、“硬件架构”等细分领域。

    142 引用 • 442 回帖
  • Chrome

    Chrome 又称 Google 浏览器,是一个由谷歌公司开发的网页浏览器。该浏览器是基于其他开源软件所编写,包括 WebKit,目标是提升稳定性、速度和安全性,并创造出简单且有效率的使用者界面。

    62 引用 • 289 回帖
  • Quicker

    Quicker 您的指尖工具箱!操作更少,收获更多!

    28 引用 • 101 回帖
  • OpenResty

    OpenResty 是一个基于 NGINX 与 Lua 的高性能 Web 平台,其内部集成了大量精良的 Lua 库、第三方模块以及大多数的依赖项。用于方便地搭建能够处理超高并发、扩展性极高的动态 Web 应用、Web 服务和动态网关。

    17 引用 • 45 关注
  • FreeMarker

    FreeMarker 是一款好用且功能强大的 Java 模版引擎。

    23 引用 • 20 回帖 • 444 关注
  • 人工智能

    人工智能(Artificial Intelligence)是研究、开发用于模拟、延伸和扩展人的智能的理论、方法、技术及应用系统的一门技术科学。

    114 引用 • 170 回帖
  • 笔记

    好记性不如烂笔头。

    308 引用 • 787 回帖
  • Google

    Google(Google Inc.,NASDAQ:GOOG)是一家美国上市公司(公有股份公司),于 1998 年 9 月 7 日以私有股份公司的形式创立,设计并管理一个互联网搜索引擎。Google 公司的总部称作“Googleplex”,它位于加利福尼亚山景城。Google 目前被公认为是全球规模最大的搜索引擎,它提供了简单易用的免费服务。不作恶(Don't be evil)是谷歌公司的一项非正式的公司口号。

    49 引用 • 192 回帖 • 1 关注
  • 音乐

    你听到信仰的声音了么?

    60 引用 • 510 回帖 • 1 关注
  • 微信

    腾讯公司 2011 年 1 月 21 日推出的一款手机通讯软件。用户可以通过摇一摇、搜索号码、扫描二维码等添加好友和关注公众平台,同时可以将自己看到的精彩内容分享到微信朋友圈。

    130 引用 • 793 回帖 • 1 关注
  • 宕机

    宕机,多指一些网站、游戏、网络应用等服务器一种区别于正常运行的状态,也叫“Down 机”、“当机”或“死机”。宕机状态不仅仅是指服务器“挂掉了”、“死机了”状态,也包括服务器假死、停用、关闭等一些原因而导致出现的不能够正常运行的状态。

    13 引用 • 82 回帖 • 51 关注
  • GitLab

    GitLab 是利用 Ruby 一个开源的版本管理系统,实现一个自托管的 Git 项目仓库,可通过 Web 界面操作公开或私有项目。

    46 引用 • 72 回帖 • 1 关注
  • 小说

    小说是以刻画人物形象为中心,通过完整的故事情节和环境描写来反映社会生活的文学体裁。

    28 引用 • 108 回帖 • 1 关注
  • Git

    Git 是 Linux Torvalds 为了帮助管理 Linux 内核开发而开发的一个开放源码的版本控制软件。

    206 引用 • 358 回帖 • 1 关注
  • Q&A

    提问之前请先看《提问的智慧》,好的问题比好的答案更有价值。

    7274 引用 • 33162 回帖 • 203 关注
  • 安全

    安全永远都不是一个小问题。

    195 引用 • 813 回帖
  • C++

    C++ 是在 C 语言的基础上开发的一种通用编程语言,应用广泛。C++ 支持多种编程范式,面向对象编程、泛型编程和过程化编程。

    106 引用 • 152 回帖 • 2 关注
  • 开源

    Open Source, Open Mind, Open Sight, Open Future!

    405 引用 • 3557 回帖
  • InfluxDB

    InfluxDB 是一个开源的没有外部依赖的时间序列数据库。适用于记录度量,事件及实时分析。

    2 引用 • 58 关注
  • 支付宝

    支付宝是全球领先的独立第三方支付平台,致力于为广大用户提供安全快速的电子支付/网上支付/安全支付/手机支付体验,及转账收款/水电煤缴费/信用卡还款/AA 收款等生活服务应用。

    29 引用 • 347 回帖