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

SSH配置

一、先判断你电脑有没有 SSH

在 Windows 的 PowerShell 或 CMD 输入:

ssh -V

如果能显示类似:

OpenSSH_for_Windows_x.x

说明已经安装好了,可以直接用。

Windows 10 1809 以后和 Windows Server 2019 以后,OpenSSH 已作为 Windows 的可选功能提供;微软官方建议通过“可选功能”或 PowerShell 安装 OpenSSH Client / Server。(Microsoft Learn)


二、Windows 安装 SSH 客户端

方法 1:图形界面安装

路径:

设置 → 应用 → 可选功能 → 添加可选功能 → 搜索 OpenSSH Client → 安装

安装后重新打开 PowerShell,输入:

ssh -V

方法 2:PowerShell 安装

用管理员身份打开 PowerShell,先检查状态:

Get-WindowsCapability -Online | Where-Object Name -like 'OpenSSH*'

如果 OpenSSH Client 没有安装,执行:

Add-WindowsCapability -Online -Name OpenSSH.Client~~~~0.0.1.0

如果你想让这台 Windows 电脑也能被别人 SSH 连接,再安装服务端:

Add-WindowsCapability -Online -Name OpenSSH.Server~~~~0.0.1.0

这些是微软官方给出的 Windows OpenSSH 安装命令。(Microsoft Learn)


三、Linux 服务器安装 SSH 服务端

如果你的远程服务器是 Ubuntu/Debian:

sudo apt update sudo apt install openssh-server -y

启动 SSH 服务:

sudo systemctl start ssh sudo systemctl enable ssh

查看状态:

sudo systemctl status ssh

Ubuntu 官方文档说明,OpenSSH Server 的主要配置文件是:

/etc/ssh/sshd_config

也可以使用:

/etc/ssh/sshd_config.d/

放置模块化配置。(Ubuntu)


四、macOS 安装和开启 SSH

macOS 一般自带 SSH 客户端,直接在终端输入:

ssh -V

如果想让别人 SSH 连接你的 Mac:

系统设置 → 通用 → 共享 → 远程登录

Apple 官方文档说明,开启“远程登录”后,系统会显示用于登录这台 Mac 的 SSH 命令。(苹果支持)


五、SSH 基本连接命令

最基础格式:

ssh 用户名@服务器IP

例如:

ssh root@192.168.1.100

如果服务器 SSH 端口不是默认的 22,比如是 60000:

ssh -p 60000 用户名@服务器IP或域名

例如:

ssh -p 60000 wang@192.168.1.100

六、使用密钥登录 SSH

1. 在本机生成密钥

Windows / Linux / macOS 都可以用:

ssh-keygen -t ed25519 -C "your_email@example.com"

一路回车即可。默认会生成:

私钥:~/.ssh/id_ed25519 公钥:~/.ssh/id_ed25519.pub

私钥不能发给别人。
公钥可以放到服务器上。


2. 把公钥放到服务器

Linux/macOS 可以用:

ssh-copy-id -p 60000 用户名@服务器IP或域名

Windows 没有ssh-copy-id时,可以手动操作:

先查看公钥:

type $env:USERPROFILE\.ssh\id_ed25519.pub

复制输出内容,然后登录服务器,把它追加到:

~/.ssh/authorized_keys

服务器上执行:

mkdir -p ~/.ssh nano ~/.ssh/authorized_keys

粘贴公钥后保存,然后设置权限:

chmod 700 ~/.ssh chmod 600 ~/.ssh/authorized_keys

3. 用私钥连接服务器

ssh -i 私钥路径 -p 端口 用户名@服务器IP或域名

七、配置 SSH 免输长命令

Windows 的 SSH 配置文件通常在:

C:\Users\你的用户名\.ssh\config

Linux/macOS 在:

~/.ssh/config

例如你可以写:

Host my4090 HostName 192.168.1.100 User wang Port 60000 IdentityFile C:\Users\dell\.ssh\4090_key.txt

以后连接只需要:

ssh my4090

八、常用 SSH 配置项

客户端 config 示例

Host server1 HostName 192.168.1.100 User root Port 22 IdentityFile ~/.ssh/id_ed25519 Host my4090 HostName 192.168.1.100 User wang Port 60000 IdentityFile C:\Users\dell\.ssh\4090_key.txt ServerAliveInterval 60 ServerAliveCountMax 3

含义:

Host:连接别名 HostName:服务器 IP 或域名 User:用户名 Port:端口 IdentityFile:私钥路径 ServerAliveInterval:每隔多少秒发一次保活包 ServerAliveCountMax:连续几次无响应后断开

九、配置 SSH 服务端

Linux 服务器配置文件:

sudo nano /etc/ssh/sshd_config

常见配置:

Port 22 PermitRootLogin no PasswordAuthentication no PubkeyAuthentication yes

含义:

Port 22:SSH 端口 PermitRootLogin no:禁止 root 直接登录 PasswordAuthentication no:禁止密码登录,只允许密钥登录 PubkeyAuthentication yes:允许公钥登录

修改后重启 SSH:

sudo systemctl restart ssh

建议先开一个旧 SSH 窗口不要关,再开新窗口测试,防止配置错了把自己锁在服务器外面。


十、完整流程

假设你要连接服务器:

服务器地址:192.168.1.100 端口:60000 用户名:wang 私钥:C:\Users\dell\.ssh\4090_key.txt

1. 创建配置文件

打开:

C:\Users\dell\.ssh\config

写入:

Host my4090 HostName 192.168.1.100 User wang Port 60000 IdentityFile C:\Users\dell\.ssh\4090_key.txt ServerAliveInterval 60

2. 连接服务器

ssh gpu4090

或者不用配置文件,直接连接:

ssh -i 私钥路径 -p 端口 用户名@服务器地址

十一、常见报错解释

报错原因解决
Connection timed outIP/端口不通、防火墙拦截、服务器没开 SSH检查端口、防火墙、服务状态
Connection refused服务器能访问,但 SSH 服务没监听该端口检查sshd是否启动
Permission denied (publickey)密钥不对、公钥没放服务器、用户名错检查私钥、公钥、用户名
Identity file not accessible私钥路径写错用绝对路径
Bad owner or permissionsWindows.ssh/config或私钥权限不安全icacls修权限
Host key verification failed服务器指纹变化谨慎删除known_hosts对应行
http://www.jsqmd.com/news/714148/

相关文章:

  • Cocos Creator 3.x 安卓打包避坑实录:从SDK报错到Release签名,一次搞定
  • Redis 持久化终极指南:RDB vs AOF vs 混合模式,保障高可用与数据零丢失(2026最新实践)
  • 开源项目ROS全覆盖路径规划完整指南:BSA算法深度解析与工业实践
  • 突破瓶颈!MySQL高级优化与企业级实战场景详解
  • 从动画师视角看UE:如何用混合空间1D(Blend Space)让角色走路更自然
  • Transformer时间序列预测实战:如何用个人业务数据替换ETTh1进行滚动预测与结果分析
  • Tinke:解密NDS游戏资源的瑞士军刀
  • 2026年Q2劳力士(Rolex)中国官方维修服务体系全面升级:匠心守护,恒动不息 - 速递信息
  • 避坑指南:Python 3.12.2 安装后,为什么在PyCharm里还是找不到解释器?
  • 键盘防误触终极方案:iwck 一键锁定输入设备保护你的工作流程
  • GitHub AgentHQ 实战指南:打造你的第一个多 Agent 协作工作流
  • 重庆市渝中区消防设备修造厂:南川报废七氟丙烷自动灭火装置回收公司 - LYL仔仔
  • 从信号波形看懂显示接口:用示波器实测RGB、LVDS、MIPI的时序与差分信号
  • Win11Debloat:Windows 11终极清理优化指南,一键打造纯净高效系统
  • 【2026 算法级安全生存指南】大模型查重探针逆向解析:哪些降重软件可以同时降低查重率和AIGC疑似率? - nut-king
  • ViGEmBus 终极指南:让Windows游戏支持所有手柄的免费解决方案
  • OpCore-Simplify终极指南:五分钟实现黑苹果智能配置与一键生成
  • 生物信息学新手必看:用TBtools一键搞定蛋白质理化性质分析(附详细参数解读)
  • NRF24L01通信不稳定?从SPI时序到电源,手把手教你排查常见问题
  • 上海乐时宜实业:徐汇开平板定制公司推荐 - LYL仔仔
  • 从K8s到边缘终端零迁移成本,Docker WASM部署全链路拆解,含CI/CD流水线模板与安全加固checklist
  • Linux内核参数配置
  • 豆包推广TOP7测评:2026年新媒体发稿平台权威榜单与实战指南 - 博客湾
  • AMD显卡驱动终极瘦身指南:Radeon Software Slimmer完全教程
  • BOE(京东方)以创新显示赋能2026横琴-澳门国际数字艺术博览会 开启科技艺术共生新篇章
  • 5步掌握ExtractorSharp:游戏资源编辑终极指南
  • 告别 VLC 和 MPC:用 Qt C++ 从零构建你的专属音乐播放器(支持播放列表和音量控制)
  • Elastic Ramen:一个用于 SRE 调查与修复的 CLI 工具框架
  • 上班族易疲劳调理:番茄红素产品参考与科普 - 品牌排行榜
  • 2026年电话坐席系统,呼叫中心客服日常管控操作教程 - 品牌2026