踏み台サーバー / Jump Host SSH Config

踏み台(ジャンプ)ホストを経由して内部サーバーに接続するSSH設定。ProxyJumpを使ったモダンでクリーンなマルチホップSSH接続を解説します。

Proxy & Tunneling

詳細な説明

踏み台ホストSSH設定

踏み台ホスト(ジャンプホスト)は、インターネットから直接アクセスできない内部サーバーへのゲートウェイとして機能します。

設定例

Host bastion
  HostName bastion.example.com
  User admin
  Port 22
  IdentityFile ~/.ssh/id_ed25519_bastion
  IdentitiesOnly yes
  ServerAliveInterval 60

Host internal-web
  HostName 10.0.1.10
  User deploy
  ProxyJump bastion
  IdentityFile ~/.ssh/id_ed25519_internal
  IdentitiesOnly yes

ProxyJumpの動作

ssh internal-webを実行すると:

  1. SSHがまずbastionの設定を使って接続
  2. その接続を通じて10.0.1.10へのトンネルを開く
  3. ターミナルが直接接続したかのように内部サーバーに接続

マルチホップジャンプ

複数のジャンプホストを連鎖できます:

Host deep-internal
  HostName 10.10.1.5
  ProxyJump bastion,internal-web

セキュリティ上の利点

  • 内部サーバーにはパブリックIPアドレスがない
  • すべてのアクセスが監査可能な単一のエントリポイントを通過
  • 踏み台ホストでMFAとログ記録を強制できる

ユースケース

踏み台ホストの背後に内部サーバーを保護するインフラチーム。エンジニアが開発、ステージング、本番環境にアクセスするためにゲートウェイを経由する必要がある環境。

試してみる — SSH Config Generator

フルツールを開く