三亩地 三亩地SAN MU DI · CODE DIARY
ARTICLE DETAIL

日记详情

真实记录编程学习的某一天,欢迎挑你感兴趣的翻一翻。

SSH免密登录完整实战教程(原理+一键配置+免密故障排查)

SSH免密登录完整实战教程(原理+一键配置+免密故障排查)

一、SSH免密登录原理

通过非对称密钥实现免密登录:本机生成私钥+公钥,私钥本地保密,公钥上传至目标服务器。远程连接时,本机私钥和服务器公钥自动配对,配对成功无需输入密码直接登录,广泛用于集群通信、定时任务同步、自动化运维。


二、完整一键配置步骤(全网通用,三步搞定)

1. 客户端生成密钥对(一路回车,无需设置密码)

ssh-keygen

执行后默认在当前用户家目录生成隐藏目录:~/.ssh/,包含id_rsa(私钥)、id_rsa.pub(公钥)

2. 推送公钥到目标服务端

ssh-copy-id root@192.168.10.100

输入一次目标服务器密码,自动将公钥写入服务端~/.ssh/authorized_keys文件

3. 直接免密登录测试

ssh root@192.168.10.100

无需输入密码,直接进入远程终端,配置完成。


三、手动配置免密(ssh-copy-id失效时备用方案)

# 1. 查看本地公钥 cat ~/.ssh/id_rsa.pub # 2. 复制全部公钥内容,追加到远程服务器授权文件 vim ~/.ssh/authorized_keys # 3. 授权关键权限(权限不对免密直接失效) chmod 700 ~/.ssh chmod 600 ~/.ssh/authorized_keys

四、免密登录常见失效原因(90%故障根源)

  • .ssh目录和密钥文件权限过大:目录必须700,密钥文件必须600

  • 服务器防火墙拦截22端口

  • SELinux安全机制拦截密钥校验

  • 目标服务器用户名不一致


五、拓展:远程免密执行命令、免密文件传输

# 免密远程执行命令 ssh 192.168.10.100 df -h # 免密scp传输文件 scp test.txt 192.168.10.100:/opt/

六、面试高频考点

免密登录依靠公私钥配对,私钥不可泄露;免密单向生效,A免密登录B,B不能自动免密登录A,双向免密需要反向再配置一次。

← 返回列表