mcpField
S
ssh-remote

ssh-remote

github.com/oakoss云与 DevOps20171 次安装10 周前更新
代码仓库

关于 ssh-remote

ssh-remote 是用于通过 SSH 管理远程系统和传输文件的参考技能,汇集连接、隧道、密钥管理及安全配置指南,面向开发者和运维人员。

主要功能

  1. 01SSH 连接与配置模式
  2. 02rsync、scp 和 sftp 传输指南
  3. 03本地、远程及 SOCKS 隧道
  4. 04跳板机与连接复用
  5. 05密钥管理与安全加固清单

适用场景

  1. 01连接并管理远程服务器
  2. 02传输文件或同步目录
  3. 03通过 SSH 隧道转发端口
  4. 04规划安全的 SSH 密钥与主机设置

安装

复制下面的命令,在终端中运行。

$npx skills add https://github.com/oakoss/agent-skills --skill ssh-remote

安装后在 Claude Code 中输入/ssh-remote确认已加载。

包含的文件

除 SKILL.md 外,安装时一起下载的参考资料和脚本。

references/
connections.md
file-transfer.md
key-management.md
tunneling.md

详细介绍

SSH 远程访问

概述

SSH(Secure Shell)可在不可信网络上提供加密的远程访问、文件传输和隧道功能。OpenSSH 是 Linux、macOS 和 Windows(通过内置客户端)上的标准实现。客户端配置位于 ~/.ssh/config,支持按主机设置、身份管理和连接复用。

适用场景: 远程服务管理、安全文件传输、端口转发、跳板主机穿透、自动化部署、SOCKS 代理。

不适用场景: 通过 WAN 进行高吞吐量的大批量数据传输(使用 Globus 或类似工具)、图形界面繁重的远程桌面(使用 VNC/RDP)、容器编排(使用 kubectl/docker CLI)。

快速参考

模式命令 / 指令要点
基本连接ssh user@host非默认端口请添加 -p PORT
身份文件ssh -i ~/.ssh/key user@host显式指定私钥
远程命令ssh user@host "command"交互式命令请添加 -t
SSH 配置别名~/.ssh/config 中的 Host myserver 块简化重复连接
文件复制(rsync)rsync -avzP src user@host:dest所有传输场景下均优先于 scp
文件复制(scp)scp file user@host:path旧版协议;内部使用 SFTP
本地隧道ssh -L local:remote_host:remote_port在本地访问远程服务
远程隧道ssh -R remote:localhost:local_port向远程端开放本地服务
SOCKS 代理ssh -D 1080 user@host动态端口转发
跳板主机ssh -J jump user@targetProxyJump,OpenSSH 7.3 起提供
密钥生成ssh-keygen -t ed25519所有新密钥均推荐使用 Ed25519
FIDO2 密钥ssh-keygen -t ed25519-sk硬件支持,需 OpenSSH 8.2+
Agentssh-add ~/.ssh/key在会话期间缓存密钥口令
多路复用配置文件中的 ControlMaster auto在多个会话间复用 TCP 连接
调试ssh -v user@host最多可使用 -vvv,以获取最详细输出

密钥类型建议

算法建议备注
Ed25519所有新密钥的默认选择256 位、快速、安全,OpenSSH 6.5+ 支持
Ed25519-SK(FIDO2)使用硬件密钥的最强选项需要实体安全密钥,OpenSSH 8.2+
RSA 4096仅用于兼容旧系统仅在远程系统不支持 Ed25519 时使用
ECDSA避免使用实现方面存在问题;优先选择 Ed25519

文件传输选择指南

场景工具原因
定期同步或大型目录rsync -avzP增量同步、压缩、断点续传、进度显示
快速复制单个文件scp 或 rsyncscp 更简单;rsync 功能更强
交互式浏览文件sftpTab 补全、目录导航
高带宽 WAN 传输专用工具(Globus)SSH 缓冲区限制会降低 WAN 吞吐量

常见错误

错误正确做法
为新配置使用 RSA 密钥生成 Ed25519 密钥——速度更快、体积更小且同样安全
使用 scp 进行大型或定期传输使用 rsync -avzP,以实现压缩、显示进度和可恢复的差异同步
会话期间反复输入密码短语使用 ssh-agent 和 ssh-add 在会话期间缓存密钥
通过多层跳转进行嵌套 SSH 连接使用 -J(ProxyJump)轻松通过堡垒机/跳转主机
运行交互式命令时未使用 -t 标志使用 ssh -t user@host "htop" 分配伪终端
通过不可信主机使用 ForwardAgent yes改用 ProxyJump——代理转发会将密钥暴露给已遭入侵的主机
设置 ControlPath 时未包含 %h、%p、%r包含全部三个标记,确保每个连接使用唯一套接字
全局禁用主机密钥检查仅在可信的临时环境中使用 StrictHostKeyChecking no
未使用 IdentitiesOnly yes防止向每台服务端提供所有已加载的密钥

安全检查清单

  • 生成带有强密码短语的 Ed25519 密钥
  • 在服务端设置 PasswordAuthentication no
  • 将 PermitRootLogin 设置为 prohibit-password 或 no
  • 在客户端配置中使用 IdentitiesOnly yes
  • 在 authorized_keys 中使用 command= 和 from= 限制密钥
  • 在高安全性环境中使用 FIDO2 硬件密钥(ed25519-sk)
  • 在服务端安装 fail2ban 以阻止暴力破解尝试
  • 考虑使用 SSH 证书身份验证来管理服务器群

委派

  • 发现服务器清单并测试连接:使用 Explore Agent
  • 多主机部署或批量文件传输:使用 Task Agent
  • 网络架构和堡垒机规划:使用 Plan Agent

参考资料

评论

支持 Markdown