jpskill.com
🛠️ 開発・MCP コミュニティ

ssh

SSHを使って安全にサーバーへ接続したり、トンネルを作ったり、鍵の設定、中継サーバーの構築、設定ファイルの管理、遠隔操作の自動化など、セキュアなリモートアクセス環境を構築・管理するSkill。

📜 元の英語説明(参考)

Secure server access and tunneling with SSH. Use when a user asks to connect to remote servers, set up SSH keys, create tunnels, configure jump hosts, manage SSH config, or automate remote commands.

🇯🇵 日本人クリエイター向け解説

一言でいうと

SSHを使って安全にサーバーへ接続したり、トンネルを作ったり、鍵の設定、中継サーバーの構築、設定ファイルの管理、遠隔操作の自動化など、セキュアなリモートアクセス環境を構築・管理するSkill。

※ jpskill.com 編集部が日本のビジネス現場向けに補足した解説です。Skill本体の挙動とは独立した参考情報です。

⚡ おすすめ: コマンド1行でインストール(60秒)

下記のコマンドをコピーしてターミナル(Mac/Linux)または PowerShell(Windows)に貼り付けてください。 ダウンロード → 解凍 → 配置まで全自動。

🍎 Mac / 🐧 Linux
mkdir -p ~/.claude/skills && cd ~/.claude/skills && curl -L -o ssh.zip https://jpskill.com/download/15412.zip && unzip -o ssh.zip && rm ssh.zip
🪟 Windows (PowerShell)
$d = "$env:USERPROFILE\.claude\skills"; ni -Force -ItemType Directory $d | Out-Null; iwr https://jpskill.com/download/15412.zip -OutFile "$d\ssh.zip"; Expand-Archive "$d\ssh.zip" -DestinationPath $d -Force; ri "$d\ssh.zip"

完了後、Claude Code を再起動 → 普通に「動画プロンプト作って」のように話しかけるだけで自動発動します。

💾 手動でダウンロードしたい(コマンドが難しい人向け)
  1. 1. 下の青いボタンを押して ssh.zip をダウンロード
  2. 2. ZIPファイルをダブルクリックで解凍 → ssh フォルダができる
  3. 3. そのフォルダを C:\Users\あなたの名前\.claude\skills\(Win)または ~/.claude/skills/(Mac)へ移動
  4. 4. Claude Code を再起動

⚠️ ダウンロード・利用は自己責任でお願いします。当サイトは内容・動作・安全性について責任を負いません。

🎯 このSkillでできること

下記の説明文を読むと、このSkillがあなたに何をしてくれるかが分かります。Claudeにこの分野の依頼をすると、自動で発動します。

📦 インストール方法 (3ステップ)

  1. 1. 上の「ダウンロード」ボタンを押して .skill ファイルを取得
  2. 2. ファイル名の拡張子を .skill から .zip に変えて展開(macは自動展開可)
  3. 3. 展開してできたフォルダを、ホームフォルダの .claude/skills/ に置く
    • · macOS / Linux: ~/.claude/skills/
    • · Windows: %USERPROFILE%\.claude\skills\

Claude Code を再起動すれば完了。「このSkillを使って…」と話しかけなくても、関連する依頼で自動的に呼び出されます。

詳しい使い方ガイドを見る →
最終更新
2026-05-18
取得日時
2026-05-18
同梱ファイル
1

📖 Skill本文(日本語訳)

※ 原文(英語/中国語)を Gemini で日本語化したものです。Claude 自身は原文を読みます。誤訳がある場合は原文をご確認ください。

SSH

概要

SSH (Secure Shell) は、サーバーへの暗号化されたリモートアクセスを提供します。基本的なログインに加え、キーベース認証、ポートフォワーディング(トンネル)、ジャンプホスト(要塞)、ファイル転送(SCP/SFTP)、エージェントフォワーディングを扱います。

手順

ステップ 1: キーのセットアップ

# ED25519キーを生成 (RSAより推奨)
ssh-keygen -t ed25519 -C "your@email.com"

# 公開鍵をサーバーにコピー
ssh-copy-id user@server.example.com

# または手動で:
cat ~/.ssh/id_ed25519.pub | ssh user@server "mkdir -p ~/.ssh && cat >> ~/.ssh/authorized_keys"

ステップ 2: SSH 設定

# ~/.ssh/config — 名前付きホスト設定
Host prod
    HostName 203.0.113.10
    User deploy
    Port 2222
    IdentityFile ~/.ssh/deploy_key

Host staging
    HostName staging.example.com
    User deploy
    ProxyJump bastion

Host bastion
    HostName bastion.example.com
    User admin
    IdentityFile ~/.ssh/bastion_key

Host dev-*
    HostName %h.internal.example.com
    User developer
    ProxyJump bastion
# これで以下のように実行できます:
ssh prod          # deploy として 203.0.113.10:2222 に接続
ssh staging       # bastion 経由で接続
ssh dev-api       # bastion 経由で dev-api.internal.example.com に接続

ステップ 3: トンネリング

# ローカルフォワード: リモートサービスにローカルでアクセス
ssh -L 5432:db.internal:5432 bastion
# これで localhost:5432 に接続して内部データベースに到達できます

# リモートフォワード: ローカルサービスをリモートに公開
ssh -R 8080:localhost:3000 prod
# リモートサーバーは localhost:8080 でローカルアプリに到達できます

# 動的 SOCKS プロキシ
ssh -D 1080 prod
# 全トラフィックの SOCKS プロキシとして使用

ステップ 4: サーバーの強化

# /etc/ssh/sshd_config — 本番環境 SSH の強化
PermitRootLogin no
PasswordAuthentication no
PubkeyAuthentication yes
MaxAuthTries 3
ClientAliveInterval 300
ClientAliveCountMax 2
AllowUsers deploy admin
Port 2222

ガイドライン

  • 本番環境では常にキーベース認証を使用し、パスワード認証を無効にしてください。
  • ED25519 キーは RSA よりも短く、より安全です。
  • 内部サーバーをインターネットに公開する代わりに、ProxyJump (要塞/ジャンプホスト) を使用してください。
  • ssh-agent はキーをメモリにキャッシュします。パスフレーズを繰り返し入力する必要はありません。
📜 原文 SKILL.md(Claudeが読む英語/中国語)を展開

SSH

Overview

SSH (Secure Shell) provides encrypted remote access to servers. Beyond basic login, it handles key-based auth, port forwarding (tunnels), jump hosts (bastion), file transfer (SCP/SFTP), and agent forwarding.

Instructions

Step 1: Key Setup

# Generate ED25519 key (recommended over RSA)
ssh-keygen -t ed25519 -C "your@email.com"

# Copy public key to server
ssh-copy-id user@server.example.com

# Or manually:
cat ~/.ssh/id_ed25519.pub | ssh user@server "mkdir -p ~/.ssh && cat >> ~/.ssh/authorized_keys"

Step 2: SSH Config

# ~/.ssh/config — Named host configurations
Host prod
    HostName 203.0.113.10
    User deploy
    Port 2222
    IdentityFile ~/.ssh/deploy_key

Host staging
    HostName staging.example.com
    User deploy
    ProxyJump bastion

Host bastion
    HostName bastion.example.com
    User admin
    IdentityFile ~/.ssh/bastion_key

Host dev-*
    HostName %h.internal.example.com
    User developer
    ProxyJump bastion
# Now just:
ssh prod          # connects to 203.0.113.10:2222 as deploy
ssh staging       # connects through bastion
ssh dev-api       # connects to dev-api.internal.example.com via bastion

Step 3: Tunneling

# Local forward: access remote service locally
ssh -L 5432:db.internal:5432 bastion
# Now connect to localhost:5432 to reach the internal database

# Remote forward: expose local service to remote
ssh -R 8080:localhost:3000 prod
# Remote server can now reach your local app at localhost:8080

# Dynamic SOCKS proxy
ssh -D 1080 prod
# Use as SOCKS proxy for all traffic

Step 4: Server Hardening

# /etc/ssh/sshd_config — Production SSH hardening
PermitRootLogin no
PasswordAuthentication no
PubkeyAuthentication yes
MaxAuthTries 3
ClientAliveInterval 300
ClientAliveCountMax 2
AllowUsers deploy admin
Port 2222

Guidelines

  • Always use key-based auth in production — disable password auth.
  • ED25519 keys are shorter and more secure than RSA.
  • Use ProxyJump (bastion/jump host) instead of exposing internal servers to the internet.
  • ssh-agent caches keys in memory — no need to enter passphrase repeatedly.