Linux 机器信任关系

核心:基于 SSH 密钥认证 ,实现两台 / 多台 Linux 主机无需密码互相登录、执行远程命令,也就是常说的主机互信

A机器被B机器信任,即A登陆B不需要密码,使用id_rsa及id_rsa.pub即可

在A机器执行:

bash 复制代码
1、cd ~/.ssh

2、ssh-keygen -d

3、ssh-add id_rsa

系统如果提示:Identity added: id_rsa (id_rsa) 就表明加载成功了

下面有几个异常情况处理:

--如果系统提示:could not open a connection to your authentication agent

则需要执行一下命令:

ssh-agent bash

再执行 ssh-add id_rsa

bash 复制代码
4、scp id_rsa.pub user@B:~

5、cat id_rsa.pub >> ~/.ssh/authorized_keys

注意:

.ssh 目录文件必须为 700 或 744

authorized_keys 文件权限为600

需要被信任系统用户 如work的目录 /home/work 必须为非777

常见问题 & 排错(高频坑)

1. 能 ping 通、密码能登,但免密失败

90% 是权限问题,按顺序检查:

bash 复制代码
# 目录权限必须 700
ls -ld ~/.ssh
# 文件必须 600
ls -l ~/.ssh/authorized_keys

2. 提示 Permission denied, please try again

  • 公钥未正确写入 authorized_keys
  • 目标主机 /etc/ssh/sshd_config 未开启密钥认证

3. 检查 SSH 服务端配置

编辑 /etc/ssh/sshd_config,确保以下配置开启(注释去掉):

bash 复制代码
PubkeyAuthentication yes
AuthorizedKeysFile      .ssh/authorized_keys

修改后重启 sshd:

bash 复制代码
# CentOS/RHEL
systemctl restart sshd
# Ubuntu/Debian
systemctl restart ssh

4. 主机名 / IP 变化、known_hosts 冲突

首次登录会记录主机指纹到 ~/.ssh/known_hosts,IP / 主机名变更会报错:

bash 复制代码
# 清空旧指纹
rm -f ~/.ssh/known_hosts

5. 禁用密码登录(安全加固,集群常用)

所有机器互信完成后,关闭密码登录,只允许密钥:

bash 复制代码
# sshd_config
PasswordAuthentication no

重启 sshd 生效。

关键文件总结

文件 作用 建议权限
~/.ssh/ SSH 配置目录 700
id_rsa 本地私钥(核心机密) 600
id_rsa.pub 本地公钥(可公开) 644
authorized_keys 存放远端所有信任主机公钥 600
known_hosts 记录已连接主机指纹 644
相关推荐
蓝速科技2 小时前
医院导诊 AI 数字人一体机场景适配与落地指南丨蓝速科技
运维·数据库·人工智能·科技·自然语言处理·技术分享
H_oRIZoN_3 小时前
Linux入门DAY41(51 单片机 串口与通信协议)
linux·运维·单片机
小马同学-4 小时前
OpenStack 使用实战:Web 界面与 CLI 命令行实验
运维·云计算·openstack
GeW4 小时前
RHCE备考别瞎学!按这个计划走,30天提高通过率,快速拿证
linux
Escalating_xu5 小时前
【System V 信号量】从 P/V 原语到 Builder 封装:写出可控、可清理的进程互斥组件
java·linux·开发语言·jvm
傲世仙尊5 小时前
System V 进程间通信详解:共享内存、消息队列与信号量(CSDN博客)
linux·开发语言·c++
码农小韩5 小时前
Linux应用开发(六)——进程间通信
linux·linux驱动·嵌入式软件开发·嵌入式操作系统·linux应用
网安老伯5 小时前
都2026年了,还在问网络安全怎么入门?看完这一篇你就懂了
运维·计算机网络·web安全·网络安全·wireshark·密码学·网络攻击模型
小祺先生6 小时前
mt7921 debian系统 如何安装驱动
运维·网络·debian
笨笨饿6 小时前
#138_解决Codex要五次回复的问题
linux·stm32·单片机·嵌入式硬件·mcu·物联网·嵌入式实时数据库