この内容は古いバージョンです。最新バージョンを表示するには、戻るボタンを押してください。
バージョン:7
ページ更新者:atom
更新日時:2026-06-11 07:29:05

タイトル: putty
SEOタイトル: PuTTY 完全ガイド (SSH/鍵/トンネル)

この記事の要点
  • PuTTY は Simon Tatham 氏が開発した Windows 用 SSH / Telnet / Rlogin / Serial クライアント。世界標準で軽量・無料
  • ファミリー: PuTTY.exe(本体)/ PuTTYgen.exe(鍵生成)/ Pageant.exe(SSH エージェント)/ Plink.exe(CLI)/ PSCP / PSFTP(ファイル転送)
  • 鍵形式は独自の .ppk。OpenSSH 形式(id_rsa)と PuTTYgen で相互変換
  • セッション保存(Saved Sessions)で接続先を管理、Connection > SSH > Tunnels でポートフォワード
  • 代替: Windows 10/11 標準 OpenSSH / TeraTerm(日本語強)/ MobaXterm(高機能版)

PuTTY とは

PuTTY(パティ)は、Windows 用のSSH / Telnet / Rlogin / シリアル接続クライアントです。Cambridge 大学の Simon Tatham 氏が 1999 年から開発しており、MIT ライセンスで完全無料、世界中の Windows 管理者にとってデファクト標準ツールとなっています。

軽量(数 MB)、設定ファイル不要(レジストリ保存)、シングルバイナリで動作する手軽さから、サーバ管理者の USB に常駐していることも多い「定番中の定番」です。

PuTTY ファミリー

ツール役割
PuTTY.exe本体。SSH / Telnet / Rlogin / Serial の GUI クライアント
PuTTYgen.exeSSH 鍵生成(RSA / DSA / ECDSA / Ed25519)、形式変換
Pageant.exeSSH 認証エージェント。秘密鍵をメモリで保持しパスフレーズ省略
Plink.exeコマンドライン版 PuTTY。バッチスクリプトから SSH 実行
PSCP.exeSCP ファイル転送(scp 相当)
PSFTP.exe対話型 SFTP クライアント

インストール

# 公式 https://www.chiark.greenend.org.uk/~sgtatham/putty/

# winget(Windows 10/11)
winget install --id PuTTY.PuTTY

# Chocolatey
choco install putty

# 単体 putty.exe をダウンロードして実行(インストール不要)

SSH 接続の基本

  1. PuTTY 起動 → Host Nameuser@example.com
  2. Port: 22、Connection type: SSH
  3. Open ボタン → 初回は SSH ホスト鍵の警告 → Accept
  4. パスワード or 公開鍵認証

公開鍵認証のセットアップ

鍵を生成

PuTTYgen を起動:

  1. Type of key: EdDSA (Ed25519)(推奨)または RSA 4096
  2. Generate ボタン → マウスを動かしてエントロピー生成
  3. Key passphrase / Confirm passphrase 入力
  4. Save private keyid_ed25519.ppk
  5. 上部に表示された 公開鍵テキストをコピー

サーバ側設定

# サーバの ~/.ssh/authorized_keys に公開鍵を追加
mkdir -p ~/.ssh
chmod 700 ~/.ssh
nano ~/.ssh/authorized_keys
# → PuTTYgen の "Public key for pasting" の内容を貼り付け
chmod 600 ~/.ssh/authorized_keys

PuTTY で鍵を指定

PuTTY セッション設定 → Connection > SSH > Auth > Credentials → Private key file for authentication で .ppk を選択 → セッション保存。

セッションの保存

毎回ホスト名を入力するのは非効率。Saved Sessions に保存しておけば、ダブルクリックで接続できます:

  1. Session 画面で Host Name / Port / 鍵指定済の状態に
  2. Saved Sessions 欄に名前入力(例: prod-web01
  3. Save ボタン → 一覧に追加
  4. 次回はリスト選択 → LoadOpen

設定はレジストリ HKEY_CURRENT_USER\Software\SimonTatham\PuTTY\Sessions に保存されます。別 PC への移行は regedit でエクスポート / インポートします。

ポートフォワード(SSH トンネル)

SSH 経由でリモート DB / 内部 Web にアクセスするのに使います。Connection > SSH > Tunnels で設定:

種類用途設定例
Local (L)ローカル → リモート転送Source: 3306, Destination: db.internal:3306
Remote (R)リモート → ローカル転送Source: 8080, Destination: localhost:80
Dynamic (D)SOCKS プロキシSource: 1080(ブラウザの Proxy に指定)
# 例: 踏み台経由で社内 MySQL に接続
# 1. PuTTY で踏み台 (bastion.example.com) に接続
# 2. Tunnels で Local 3306 → db.internal.example.com:3306 を設定
# 3. 接続後、ローカル PC の MySQL クライアントで:
mysql -h 127.0.0.1 -P 3306 -u user -p
# → 実際は db.internal に SSH トンネル経由で接続される

Pageant で鍵を一元管理

毎回パスフレーズを入力するのが面倒な場合、Pageant.exe を起動して .ppk を読み込ませると、PuTTY / WinSCP / Git 等が自動でその鍵を使うようになります。

# 1. Pageant.exe 起動(タスクトレイに常駐)
# 2. 右クリック → Add Key → .ppk を選択 → パスフレーズ入力
# 3. これ以降、PuTTY 接続でパスフレーズ不要

# Windows スタートアップに登録するなら
# shell:startup → ショートカット作成
# 引数で鍵を自動ロード: pageant.exe "C:\keys\id_ed25519.ppk"

Plink で CLI 自動化

# バッチから SSH 実行
plink -i C:\keys\id_ed25519.ppk -batch user@host "uptime; df -h"

# Pageant に鍵があれば -i 不要
plink -batch user@host "sudo systemctl restart nginx"

# スクリプト実行
plink -batch user@host < commands.sh

OpenSSH 形式との変換

PuTTY の .ppk は独自形式で、OpenSSH の id_rsa や TeraTerm では直接読めません。PuTTYgen で変換します:

# .ppk → OpenSSH (id_rsa)
# PuTTYgen → File → Load private key で .ppk 読み込み
# → Conversions → Export OpenSSH key → id_rsa として保存

# OpenSSH (id_rsa) → .ppk
# PuTTYgen → File → Load private key で id_rsa 読み込み
# → Save private key → .ppk として保存

# コマンドラインでの変換 (puttygen.exe)
puttygen id_rsa -o id_rsa.ppk
puttygen id_rsa.ppk -O private-openssh -o id_rsa

TeraTerm / OpenSSH との比較

項目PuTTYTeraTermWindows OpenSSH
言語英語のみ日本語完備CLI 英語
軽量さ★★★★★★★★
マクロ無し(Plink で代替)★★★ ttl マクロ無し(PowerShell)
SCP / SFTPPSCP / PSFTP(別 exe)統合 GUIscp / sftp CLI
鍵管理★★★ Pageant 強力独自 + ssh-agentssh-agent
世界シェア★★★ デファクト日本中心★★ 拡大中

FAQ

Q: フォント / 色をモダンにしたい
A: Window > Appearance > Font で Cascadia MonoConsolas 推奨。Window > Colours で配色を Solarized 等に。Saved Sessions ごとに設定保存可能。

Q: 接続が切れる
A: Connection > Seconds between keepalives を 60 に。サーバ側の /etc/ssh/sshd_configClientAliveInterval も併用すると確実。

Q: 日本語が文字化けする
A: Window > Translation > Remote character set を UTF-8 に。サーバ側 LANG=ja_JP.UTF-8 も確認。

Q: ProxyJump(踏み台)したい
A: Connection > Proxy で Proxy type: Local → Telnet command に plink.exe -agent -nc %host:%port bastion-user@bastion.example.com を指定。

関連

  • TeraTerm — 日本製 SSH クライアント、PuTTY の有力対抗馬
  • WinSCP — Windows 用 SCP/SFTP GUI、PuTTY と連携可能
  • OpenSSH — Windows 10/11 に標準搭載
  • MobaXterm — PuTTY 機能 + X11 サーバ + タブ