К основному содержанию
скилл CX Codex

ssh · openhands — скилл для Claude Code: SSH-подключения и передача файлов

Скилл для работы с удалёнными машинами: подключение по паролю или ключу, генерация ключей, конфиги, команды на сервере и передача файлов через SCP.

Установить в Claude Code · Через Skills CLI (Vercel) Все способы и платформы ↓
npx skills add OpenHands/extensions --skill ssh -a claude-code
Открыть на GitHub

Что делает ssh

Скилл даёт агенту набор команд для SSH: подключиться к удалённому хосту, выполнить там команду, скопировать файл или каталог через scp. Отдельно разобрана работа с ключами — генерация пары через ssh-keygen, копирование публичного ключа на сервер, подключение с -i.

Внутри есть раздел про конфиг ~/.ssh/config: создание файла с алиасом, HostName, User, IdentityFile и Port, чтобы потом писать просто ssh alias. Ещё описаны частые опции — порт, X11 forwarding, проброс портов в обе стороны, фоновый режим и подробный лог через -v. Для Windows есть отдельный файл references/windows.md с эквивалентами на PowerShell.

Пароль скилл не хранит: при подключении по паролю он спросит его у вас. Приватные ключи должны лежать с правами 600, каталог ~/.ssh — 700, иначе SSH откажется работать. Если ключ хоста на сервере сменился, старую запись в known_hosts придётся убрать через ssh-keygen -R hostname — это частый случай после переустановки сервера.

Какие задачи решает

  • зайти на удалённый сервер по ключу вместо пароля
  • сгенерировать пару ключей ed25519 и положить публичный на хост
  • настроить алиас в ~/.ssh/config, чтобы не набирать хост и порт каждый раз
  • скопировать каталог на сервер рекурсивно через scp -r
  • разобраться, почему SSH не пускает: права на ключ, порт, сменившийся ключ хоста

Примеры запросов агенту

  • Подключись к серверу по ssh и покажи список процессов
  • Сгенерируй ключ ed25519 и настрой алиас в ~/.ssh/config для этого хоста
  • Скопируй папку dist на удалённую машину через scp

Как установить ssh

1Через Skills CLI (Vercel)

npx skills add OpenHands/extensions --skill ssh -a claude-code

2Вручную: положить файлы

~/.claude/skills/ssh/SKILL.md

Папка скилла целиком; для одного проекта — .claude/skills/ssh/

По шагам, с командами для каждой платформы: Как установить скилл в Claude Code: пять способов

Вопросы о ssh

Как установить скилл ssh в Claude?

Выполните npx skills add OpenHands/extensions --skill ssh -a claude-code. После этого файл скилла окажется в ~/.claude/skills/ssh/SKILL.md.

Что делает скилл ssh?

Помогает агенту подключаться к удалённым машинам, выполнять там команды, работать с ключами и конфигом SSH, а также передавать файлы через SCP.

Что нужно для работы скилла?

Ничего сверх обычного SSH-клиента. Пароль при подключении скилл запрашивает у вас, а приватные ключи должны иметь права 600 — иначе соединение не пройдёт.

Исходный текст

SKILL.md · MIT
---
name: ssh
description: Establish and manage SSH connections to remote machines, including key generation, configuration, and file transfers. Use when connecting to remote servers, executing remote commands, or transferring files via SCP.
triggers:
- ssh
- remote server
- remote machine
- remote host
- remote connection
- secure shell
- ssh keys
---

# SSH Skill

This skill provides capabilities for establishing and managing SSH connections to remote machines.
Windows PowerShell equivalents for SSH config creation, key paths, ssh-agent, and permissions are in `references/windows.md`.

## Capabilities

- Establish SSH connections using password or key-based authentication
- Generate and manage SSH key pairs
- Configure SSH for easier connections
- Execute commands on remote machines
- Transfer files between local and remote machines
- Manage SSH configurations and known hosts

## Authentication Methods

### Password Authentication

```bash
ssh username@hostname
```

When prompted, you should ask the user for their password or a private key.

### Key-Based Authentication

Generate a new SSH key pair:
```bash
ssh-keygen -t ed25519 -f ~/.ssh/key_name -C "comment" -N ""
```

Copy the public key to the remote server:
```bash
ssh-copy-id -i ~/.ssh/key_name.pub username@hostname
```

Connect using the private key:
```bash
ssh -i ~/.ssh/key_name username@hostname
```

## SSH Configuration

Create or edit the SSH config file for easier connections:
```bash
mkdir -p ~/.ssh
cat > ~/.ssh/config << 'EOF'
Host alias
    HostName hostname_or_ip
    User username
    IdentityFile ~/.ssh/key_name
    Port 22
    ServerAliveInterval 60
EOF
chmod 600 ~/.ssh/config
```

Then connect using the alias:
```bash
ssh alias
```

## Common SSH Options

- `-p PORT`: Connect to a specific port
- `-X`: Enable X11 forwarding
- `-L local_port:remote_host:remote_port`: Set up local port forwarding
- `-R remote_port:local_host:local_port`: Set up remote port forwarding
- `-N`: Do not execute a remote command (useful for port forwarding)
- `-f`: Run in background
- `-v`: Verbose mode (add more v's for increased verbosity)

## File Transfer with SCP

Copy a file to the remote server:
```bash
scp /path/to/local/file username@hostname:/path/to/remote/directory/
```

Copy a file from the remote server:
```bash
scp username@hostname:/path/to/remote/file /path/to/local/directory/
```

Copy a directory recursively:
```bash
scp -r /path/to/local/directory username@hostname:/path/to/remote/directory/
```

## SSH Agent

Start the SSH agent:
```bash
eval "$(ssh-agent -s)"
```

Add a key to the agent:
```bash
ssh-add ~/.ssh/key_name
```

## Troubleshooting

- Check SSH service status on remote: `systemctl status sshd`
- Verify SSH port is open: `nc -zv hostname 22`
- Debug connection issues: `ssh -vvv username@hostname`
- Check permissions: SSH private keys should have 600 permissions (`chmod 600 ~/.ssh/key_name`)
- Verify known_hosts: If host key changed, remove the old entry with `ssh-keygen -R hostname`

## Secure SSH Key Management

### Local Storage with Proper Permissions

The most basic approach is to ensure proper file permissions:

```bash
# Set correct permissions for private keys
chmod 600 ~/.ssh/id_ed25519
# Set correct permissions for public keys
chmod 644 ~/.ssh/id_ed25519.pub
# Set correct permissions for SSH directory
chmod 700 ~/.ssh
```

© OpenHands · MIT · OpenHands/extensions

Похожие скиллы

Всё по теме «DevOps и инфраструктура» →

Сначала — ssh от других авторов.

ssh Dicklesworthstone Помогает агенту подключаться к серверам по SSH, пробрасывать порты, синхронизировать файлы через rsync и управлять ключами. Пригодится при деплое и удалённой отладке. CX Codex +1 703установок ssh-configuration devops-skills Настраивает OpenSSH на клиенте и сервере, помогает выпускать ключи Ed25519, пробрасывать порты и поднимать бастион-хосты для безопасного удалённого доступа. CX Codex +1 451установок huawei-cloud-ascend-command huaweicloud Скилл переводит фразы вроде «проверь температуру NPU» в команды npu-smi и выполняет их локально или по SSH. CX Codex +1 457установок huawei-cloud-ascend-remote-connect huaweicloud Даёт агенту временный SSH-доступ к серверам Huawei Cloud с Ascend: следит за NPU, дисками и контейнерами. Пароль живёт только в памяти сессии. CX Codex +1 321установок healthcheck openclaw Проверяет безопасность хоста OpenClaw, открытые порты, фаервол и SSH. Помогает найти риски и поэтапно усилить защиту без опасности потерять доступ. CX Codex +1 5 500установок linux-lateral-movement yaklang Плейбук по боковому перемещению в Linux: перехват SSH-агента, сбор ключей и учёток, туннели, D-Bus и переиспользование sudo-сессии. CX Codex +1 3 600установок tunneling-and-pivoting yaklang Скилл даёт готовые инструкции по пробросу сетевых туннелей и пивотингу через скомпрометированные хосты с помощью SSH, Chisel, Ligolo-ng и socat. CX Codex +1 3 500установок

Спонсоры проекта

Компании, которые помогают держать аналитику открытой