【SSH 免密登录全流程】Windows Linux 通用方案

前言

  • 本文同时介绍了完整的从生成密钥、上传密钥、到配置ssh别名的全流程。

1 Windows端

1-1 生成ssh密钥(如果有了请跳过)
  • win+R打开cmd
cmd 复制代码
dir %USERPROFILE%\.ssh
  • 如果只有known_hosts或者连 .ssh 目录都没有,那么需要先生成密钥。

cmd 复制代码
ssh-keygen -t ed25519
  • 一路全部回车(免密码使用)
  • 最后.ssh目录下会生成:
    • id_ed25519
    • id_ed25519.pub
  • 不同算法生成的密钥文件名不同,常见的是 ed25519rsa

1-2 上传密钥
  • 一行指令直接上传ssh密钥
  • 根据实际密钥选择:
  • Ed25519
cmd 复制代码
type %USERPROFILE%\.ssh\id_ed25519.pub | ssh root@192.168.3.5 "mkdir -p ~/.ssh && cat >> ~/.ssh/authorized_keys"
  • RSA
cmd 复制代码
type %USERPROFILE%\.ssh\id_rsa.pub | ssh root@192.168.3.5 "mkdir -p ~/.ssh && cat >> ~/.ssh/authorized_keys"
  • 输入一次 root 密码。
  • 然后测试
cmd 复制代码
ssh root@192.168.3.5
  • 如果直接登录成功,说明免密配置完成。

1-3 配置 SSH 别名
  • win+R打开cmd
cmd 复制代码
notepad %USERPROFILE%\.ssh\config
  • 如果文件不存在就点(是否创建新文件?)
  • 内容如下:
txt 复制代码
Host rk
    HostName 192.168.3.5
    User root
    IdentityFile ~/.ssh/id_ed25519
  • 测试配置是否生效:
cmd 复制代码
ssh -G rk
  • 后续连接直接:
cmd 复制代码
ssh rk
  • 或者:
cmd 复制代码
scp test.txt rk:/root/
rsync -avz build/ rk:/root/build/

Linux端

2-1 生成ssh密钥(如果有了请跳过)
  • 如果特殊旧设备才使用 RSA,一般建议统一 ed25519。
bash 复制代码
ssh-keygen -t ed25519
  • 一路回车即可(默认路径):
    • 私钥:~/.ssh/id_ed25519
    • 公钥:~/.ssh/id_ed25519.pub
2-2 上传密钥
  • 把公钥发到服务器,然后输入一次密码即可
bash 复制代码
ssh-copy-id root@192.168.3.5
  • 有些开发板系统权限配置比较奇怪,建议上传后执行:
bash 复制代码
chmod 700 ~/.ssh
chmod 600 ~/.ssh/authorized_keys
  • 也可以手动发送:
    • 如果之前生成的是 RSA 密钥,请将 id_ed25519.pub 替换为 id_rsa.pub
bash 复制代码
cat ~/.ssh/id_ed25519.pub | \
ssh root@192.168.3.5 \
"mkdir -p ~/.ssh && \
cat >> ~/.ssh/authorized_keys && \
chmod 700 ~/.ssh && \
chmod 600 ~/.ssh/authorized_keys"

2-3 配置 SSH 别名
  • 编辑:
bash 复制代码
nano ~/.ssh/config
  • 添加:
bash 复制代码
Host rk
    HostName 192.168.3.5
    User root
  • 设置权限:
bash 复制代码
chmod 700 ~/.ssh
chmod 600 ~/.ssh/config
  • 测试:
bash 复制代码
ssh rk

小结

  • 本文同时介绍了完整的从生成密钥、上传密钥、到配置ssh别名的全流程。
  • 如有错误,欢迎指出!
  • 感谢观看!
相关推荐
HLC++14 分钟前
Linux的进程间通信
android·linux·服务器
王维同学4 小时前
[原创][Windows C++]LSA 认证、安全与通知包的注册表枚举
c++·windows·安全
YCOSA20254 小时前
雨晨 Windows 11 IOT 企业版 LTSC 24H2 轻装 2合1 26100.8968
windows·物联网
groundhappy4 小时前
idalib安装和codex ida-mcp配置
linux·开发语言·python
汤姆yu4 小时前
CodeGeeX 4完整安装与实操使用全指南
人工智能·windows·ai·智能体·视频模型
通信小小昕5 小时前
Ubuntu 26.04 中文输入法安装
linux·运维·ubuntu
张小姐的猫6 小时前
【Linux】网络编程 —— HTTP协议(上)
linux·运维·服务器·网络·http·单例模式·策略模式
栩栩云生6 小时前
AI 写代码犯的错,早被写进了错题集
linux·安全·ai编程
吐了啊取名字太难7 小时前
美颜系统AI修图本地跑并支持Mac、win、安卓、iOS不卡顿
android·人工智能·windows·数码相机·mac·ai编程
imc.117 小时前
linux基础IO
linux·运维·服务器