当前位置: 首页 > news >正文

Linux SSH免密登录:从“刷卡进门”到“刷脸通行”的完整指南

适用环境:OpenSSH 9.x + Linux (Ubuntu 22.04 / Rocky Linux 9 验证)

难度系数:⭐⭐☆☆☆(只要你会敲命令就能懂)

阅读收益:告别password:输入焦虑,实现自动化运维第一步


一、为什么我们要搞「免密」?—— 先讲个故事

想象一下:

  • 普通 SSH:每次进门都要掏钥匙 ➜ 输密码 ➜ 手抖输错 ➜ 再输一遍 😩

  • 免密 SSH:第一次录入指纹,之后直接刷脸进门 ➜ 丝滑顺畅 🚀

真实痛点场景:

  • 你有 10 台服务器,每天要登 20 次

  • 写了自动化脚本,却卡在密码输入这一步

  • CI/CD 流水线需要无交互登录

👉结论:不会免密,不算真·运维


二、核心原理(不讲废话版)

SSH 免密 ≠ 没有认证

而是把“密码认证”​ 换成了“密钥认证”

方式

安全性

自动化友好度

密码登录

⭐⭐

密钥登录

⭐⭐⭐⭐⭐

本质流程:

本机(私钥 id_rsa) ——→ 服务器(公钥 id_rsa.pub)

👉 私钥 = 你家钥匙

👉 公钥 = 门锁里存的指纹

只有钥匙匹配,门才会开。


三、实战开始:一步步来,绝不跳步 🛠️

1️⃣ 环境假设(照着改就行)

角色

IP / 主机名

客户端

client.local

服务端

server.local

用户

ops


2️⃣ 生成密钥对(推荐 ed25519)

ssh-keygen -t ed25519 -C "ops@client"

📌为什么要 ed25519?

  • 比 RSA 更快

  • 更安全

  • OpenSSH 官方推荐 ✅

交互过程示例:

Enter file in which to save the key (/home/ops/.ssh/id_ed25519): Enter passphrase (empty for no passphrase): Enter same passphrase again:

建议:

  • 回车默认路径

  • 生产环境建议设置passphrase(相当于给钥匙再加一把锁)

生成结果:

~/.ssh/ ├── id_ed25519 # 🔑 私钥(打死不能给别人) └── id_ed25519.pub # 📢 公钥(随便发)

3️⃣ 把公钥拷贝到服务器(三种姿势)

✅ 姿势一:ssh-copy-id(最推荐)
ssh-copy-id ops@server.local

它会自动:

  • 创建~/.ssh

  • 写入authorized_keys

  • 修正权限(新手福音)


✅ 姿势二:手动(适合批量/脚本)
cat ~/.ssh/id_ed25519.pub | ssh ops@server.local \ "mkdir -p ~/.ssh && cat >> ~/.ssh/authorized_keys"

✅ 姿势三:Ansible 批量(高阶彩蛋)

yaml

- authorized_key: user: ops state: present key: "{{ lookup('file', '~/.ssh/id_ed25519.pub') }}"

4️⃣ 登录测试

ssh ops@server.local

🎉 如果直接进系统,恭喜你:免密成功!


四、常见翻车现场 & 排错指南 🚨

90% 的问题都出在这里!

现象

原因

解决方案

Permission denied

目录权限不对

chmod 700 ~/.ssh

Still asking password

SSH 配置未开启

见下方

连接慢

DNS 反向解析

UseDNS no

服务端关键配置/etc/ssh/sshd_config

ini

PubkeyAuthentication yes AuthorizedKeysFile .ssh/authorized_keys PasswordAuthentication no # ✅ 强烈建议最后再关

重启服务:

sudo systemctl restart sshd

五、进阶玩法(装 X 用 😎)

🔐 1. SSH Agent(避免反复输 passphrase)

eval $(ssh-agent) ssh-add ~/.ssh/id_ed25519

🧱 2. 禁止 root 远程登录

ini

PermitRootLogin no

🛡️ 3. 配合 Fail2ban(防暴力破解)

sudo dnf install fail2ban -y

六、安全警示(非常重要 ⚠️)

🔴以下内容请你逐字阅读

  1. 私钥 = 身份

    • 泄露 = 别人可以冒充你登录服务器

    • 绝对不要:

      • 提交到 GitHub

      • 发给同事

      • 放在网盘

  2. 生产环境建议

    • 禁用密码登录

    • 使用非默认端口

    • 定期轮换密钥

  3. 法律红线

    ⚠️ 本文所有操作仅限合法授权环境

    ❌ 严禁用于未授权服务器访问

    ❌ 严禁绕过公司/平台安全策略

    由此产生的一切法律责任,由操作者自行承担

http://www.jsqmd.com/news/870677/

相关文章:

  • 2026 西安名表回收哪里更专业?专业门店与避坑指南 - 李宏哲1
  • 如何3分钟上手B站视频下载神器:BilibiliDown跨平台下载完全指南
  • Windows内核提权漏洞分析与防御实践指南
  • 终极指南:在Windows上完美使用苹果触控板的完整配置方案
  • PaperXie 期刊论文写作全解析|从选题到成稿,一键适配普通 / 核心 / SCI 期刊
  • 2026年5月最新通化集安黄金回收白银回收铂金回收权威排行榜TOP5:纯金+金条+银条+钯金 门店地址联系方式推荐 - 金诚回收
  • Anthropic Zero Layer:大模型推理栈的原子化归一
  • 黄金回收白银回收铂金回收彩金回收店铺推荐蒲圻县2026最新五家靠谱回收门店TOP5排行榜及联系方式推荐 - 前途无量YY
  • Unity中PNG贴图内存暴增真相:ASTC压缩原理与工业级落地
  • TinyRS-R1:轻量级遥感视觉语言模型的技术解析与应用
  • 自己造地牢、玩关卡,这款.NET9开源的游戏,能创作,又好玩
  • 黄金回收白银回收铂金回收彩金回收店铺推荐浦江县2026最新五家靠谱回收门店TOP5排行榜及联系方式推荐 - 前途无量YY
  • 从选题到初稿零焦虑!Paperxie 期刊论文写作功能,科研新手的发刊破局神器
  • 三星固件下载终极指南:跨平台开源工具Bifrost完全解析
  • 2026年5月最新通化柳河黄金回收白银回收铂金回收权威排行榜TOP5:纯金+金条+银条+钯金 门店地址联系方式推荐 - 金诚回收
  • 从Hugging Face模型到可部署服务:我的fast-whisper中文识别项目踩坑与优化实录
  • 极验三代w参数生成原理与逆向解析
  • 零代码工具适合哪些行业和场景?
  • 【SRC漏洞挖掘系列】第07期:越权访问(IDOR)—— 隔壁老王的故事
  • 黄金回收白银回收铂金回收彩金回收店铺推荐普定县2026最新五家靠谱回收门店TOP5排行榜及联系方式推荐 - 前途无量YY
  • 星闪BS25开发板NL001上手体验:从硬件解析到无线通信实战
  • taotoken平台新手指南如何用python调用多模型api
  • 别再傻傻改代码了!用Verilog的`ifdef条件编译,一个模块搞定8路和16路数据采集
  • 黄金回收白银回收铂金回收彩金回收店铺推荐普格县2026最新五家靠谱回收门店TOP5排行榜及联系方式推荐 - 前途无量YY
  • 【Lindy流程自动化落地实战】:20年专家亲授3大避坑指南与ROI提升47%的底层逻辑
  • UABEA:三步解锁Unity游戏资源编辑的终极解决方案
  • 从任务栏消失到界面混乱:如何用ExplorerPatcher拯救你的Windows 11体验
  • 为什么你的Midjourney出图总显灰?4个被官方文档刻意弱化的对比度杠杆,今天一次性拆解
  • 别再只会调细分了!手把手教你用THB6128驱动模块的电流衰减模式,让57步进电机高低速都稳如老狗
  • 保姆级教程:用Docker-Compose把CTFTraining的Web题一键部署到你的CTFd靶场