9.linux系统管理-ssh免密配置

原理

1、ssh 客户端向 ssh 服务器端发送连接请求

2、ssh 服务器端发送一个随机的信息

3、ssh 客户端使用本地的私钥对服务器端发送过来的信息进行加密

4、ssh 客户端向服务器端发送加密过后的信息

5、ssh 服务器端使用公钥对该信息进行解密

6、若解密之后的信息和之前发送的信息匹配,则信任客户端,否则不信任。

单向登陆

例如,服务器1免密码登陆服务器2。

1、在服务器1上执行命令ssh-keygen -t rsa,一路回车,会在/home/系统用户名/.ssh下,生成id_rsa.pub、id_rsa两个文件。cat id_rsa.pub查看一下公钥,然后复制。

2、在服务器2上touch 一个文件,文件名为authorized_keys。vim authorized_keys把复制的东西粘贴到这个文件里面。

(当然要确保服务器2的登陆账号目录下有.ssh目录)

3、将服务器2上执行命令chmod 600 authorized_keys修改权限。

4、重启sshd服务。

5、测试免密登录。

多向登陆

例如,服务器1、服务器2、服务器3之间相互免密登陆。

1、在这三台服务器上都执行命令ssh-keygen -t rsa,复制公钥。

2、然后在每台服务器上执行如上操作

3、修改每台服务器上.ssh和authorized_keys的权限(如上)

4、sshd服务添加和重启(如上)。

5、测试免密登录。

Master机器上:

powershell 复制代码
# ssh-keygen -t rsa
# cat /root/.ssh/id\_rsa.pub >> /root/.ssh/authorized\_keys
# ssh-copy-id -i /root/.ssh/id\_rsa.pub root\@slave1
# ssh-copy-id -i /root/.ssh/id\_rsa.pub root\@slave2

Slave机器上(每台操作一样):配置完成ssh测试

shell 复制代码
# ssh-keygen -t rsa
# cat /root/.ssh/id_rsa.pub >> /root/.ssh/authorized_keys
# ssh-copy-id -i /root/.ssh/id_rsa.pub root@master
相关推荐
水饺编程18 分钟前
第2章:Linux 基础,exit 命令
linux·c语言·汇编
木子欢儿26 分钟前
Debian 13 + vsftpd 搭建FTP服务
linux·服务器·前端·网络·debian
shiyan6881 小时前
PadNote:把平板笔记接入 AI 与电脑 Agent
github
wflynn1 小时前
GitHub 日榜趋势速报 | 2026-10-26
开源·github
GeW2 小时前
新质生产力落地实践:企业级Linux迁移与数据库国产化
linux
雯宝2 小时前
usb_serial_generic_register
linux
逛逛GitHub2 小时前
在电脑和手机上玩 Switch 游戏?这 5 个GitHub 项目值得看看。
github
疯狂的Meng2 小时前
我把第一周的 Linux 命令整理成了自己的手册(附 7 个我踩的坑)
linux
wt95272 小时前
VMware 虚拟机静态 IP 配置
linux
小羊没烦恼!2 小时前
分布式事务 | 使用DTM 的Saga 模式
java·linux·运维·数据库·wpf