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
相关推荐
前端Hardy3 分钟前
GitHub 243K+Star!这个项目给 AI 装上了完整工程体系
github
祖力557 分钟前
Linux应用软件编程:目录IO与framebuffer
linux·运维·算法·framebuffer·目录io
词却29 分钟前
Linux基础:常用基本命令与软件包管理
linux
2401_890603401 小时前
Linux 进程控制
linux·运维·服务器
啦啦啦啦啦zzzz2 小时前
时间轮定时器
linux·服务器·网络·c++·定时器
神威难绷泪2 小时前
Linux应用软件编程:目录IO framebuffer
linux
byte轻骑兵2 小时前
【BlueZ 】BLE 与经典蓝牙的差异:BlueZ 中双模式的源码区分设计
linux·bluez·电脑蓝牙·嵌入式蓝牙
那年窗外下的雪.3 小时前
AIDC 学习日志|第 14 天|MAC Flapping 与 EVPN 多归属分层排障
网络·git·学习·macos·github·spine
小雪崩3 小时前
嵌入式学习 day30:minilog
linux·c语言·学习
嵌入式小能手3 小时前
飞凌嵌入式ElfBoard-Shell脚本编写基础-传参-$0
linux