mcpField
S
ssh-remote-connection

ssh-remote-connection

github.com/artwist-polyakov云与 DevOps221344 次安装6 天前更新
代码仓库

关于 ssh-remote-connection

ssh-remote-connection 是通过 SSH 连接远程服务器的技能,支持交互式 Shell 和直接执行命令,并可使用密钥或密码认证。

主要功能

  1. 01交互式 SSH Shell
  2. 02在远程服务器执行命令
  3. 03支持密钥和密码认证

适用场景

  1. 01远程查看服务日志
  2. 02重启或重建服务器上的服务

安装

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

$npx skills add https://github.com/artwist-polyakov/polyakov-claude-skills --skill ssh-remote-connection

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

包含的文件

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

.gitignore
config/
.env.example
scripts/
connect.sh

详细介绍

SSH 远程连接

用于通过 SSH 连接远程服务器的通用技能。

用法

# Interactive shell
scripts/connect.sh

# Run command directly
scripts/connect.sh "docker compose logs backend --tail 50"

设置

用于 Claude Code(本地)
  1. 复制配置模板:

    cp config/.env.example config/.env
    
  2. 在 config/.env 中填入实际值

    密钥认证:

    SSH_HOST=your-server.example.com
    SSH_USER=ubuntu
    SSH_AUTH_METHOD=key
    SSH_KEY_PATH=/absolute/path/to/private/key
    SSH_KEY_PASSWORD=
    SERVER_PROJECT_PATH=/path/to/project
    

    密码认证:

    SSH_HOST=your-server.example.com
    SSH_USER=ubuntu
    SSH_AUTH_METHOD=password
    SSH_PASSWORD='your account password'
    SERVER_PROJECT_PATH=/path/to/project
    
  3. 将脚本设为可执行:

    chmod +x scripts/connect.sh
    
用于云端运行环境

在云端配置中设置环境变量:

  • SSH_HOST — 服务器主机名或 IP
  • SSH_USER — SSH 用户名
  • SSH_PORT — SSH 端口(可选)
  • SSH_AUTH_METHOD — auto、key 或 password(可选,默认为 auto)
  • SSH_KEY_PATH — 使用密钥认证时的私钥路径
  • SSH_KEY_PASSWORD — 密钥口令(可选)
  • SSH_PASSWORD — 使用密码认证时的 SSH 账户密码
  • SERVER_PROJECT_PATH — 服务器上的项目目录

使用密码认证时,本地运行环境必须安装 sshpass 或 expect。 如果主机密钥尚未受信任,请先手动连接一次,或在运行非交互式命令之前将主机添加到 known_hosts。

重要说明

  • Git 操作:请勿在服务器上运行 git pull。用户将手动处理 Git 同步。
  • 代码位置:代码位于私有仓库中,必须先推送更改,再由用户拉取。
  • Docker:在服务器上使用 docker compose(而非 docker-compose)。

示例命令

# View logs
scripts/connect.sh "docker compose logs backend --tail 100"

# Restart service
scripts/connect.sh "docker compose restart backend"

# Rebuild and restart
scripts/connect.sh "docker compose build backend && docker compose up -d backend"

# Check status
scripts/connect.sh "docker compose ps"

评论

支持 Markdown