SSH Configジェネレーター

~/.ssh/configエントリをビジュアルに生成。ホスト、認証鍵、プロキシジャンプ、接続オプションを設定します。

このツールについて

SSH Configジェネレーターは、ビジュアルインターフェースを通じて ~/.ssh/configファイルのエントリを作成できる無料のブラウザベースツールです。 SSH設定ディレクティブを手動で書いたり、各オプションの正確な 構文を記憶する代わりに、フォームフィールドに入力するだけで 生成された設定出力を即座に確認できます。

SSH configファイルは強力ですが、その構文は特にプロキシジャンプ、 ポートフォワーディング、複数の認証鍵の管理などの高度な機能を 扱う場合に間違えやすくなります。このツールは、HostHostNameUserPortIdentityFileProxyJumpForwardAgentLocalForwardRemoteForwardServerAliveIntervalStrictHostKeyCheckingAddKeysToAgentCompressionなど、最もよく使用されるディレクティブを カバーしています。複数のホストエントリを設定し、すべての 接続に適用されるワイルドカード(*)デフォルトも設定できます。

GitHub、GitLab、Bitbucket、AWS EC2、踏み台/ジャンプホストの プリセットが組み込まれており、一般的なパターンから始めて ニーズに合わせてカスタマイズできます。複数のGitホスティング アカウントを管理する開発者や、中間ジャンプサーバーを経由して クラウドインスタンスに接続する必要がある場合に特に便利です。

サーバーインフラを扱う場合は、Webサーバー設定を構築する Nginx Configジェネレーター、 複雑なGitコマンドをビジュアルに構築する Gitコマンドビルダー、 データベース接続文字列を生成する 接続文字列ビルダーも お役に立つでしょう。

すべての処理はブラウザ内で完結します。SSH設定データ、ホスト名、 認証鍵ファイルパスがお使いの端末から外に出ることはありません。 サーバーとのやり取り、ログ記録、サードパーティサービスの関与は ありません。本番サーバー設定や機密性の高いインフラ情報でも 安全に使用できます。出力をクリップボードにコピーしたり、 configファイルとして直接ダウンロードすることもできます。

使い方

  1. プリセット(GitHub、GitLab、AWS EC2、Bastionなど)を選択して事前設定済みテンプレートを読み込むか、Customで空のエントリから始めます。
  2. Host Aliasフィールドに接続時に使用する名前(例:my-server)を入力します。
  3. HostName(IPアドレスまたはドメイン)、UserPort(デフォルト22)を入力します。
  4. 特定のSSH鍵を使用する場合はIdentityFileパスを指定し、鍵の使用を制限するためにIdentitiesOnlyを有効にします。
  5. Advanced Optionsをクリックして、ProxyJump、ForwardAgent、ポートフォワーディング、Keepalive設定、StrictHostKeyChecking、AddKeysToAgent、Compressionを設定します。
  6. **Host * (ワイルドカードデフォルト)**を展開して、デフォルトのKeepalive間隔やAddKeysToAgentなど、すべてのホストに適用されるオプションを設定します。
  7. CopyをクリックするかCtrl+Shift+Cを押して生成された設定をコピーします。Downloadでファイルとして保存できます。Add Hostで追加のホストエントリを設定できます。

人気のSSH Config例

すべてのSSH Config例を見る →

よくある質問

SSH configファイルとは何ですか?

SSH configファイル(~/.ssh/config)は、OpenSSHクライアントのユーザーごとの設定ファイルです。異なるリモートホストの接続パラメータを定義できるため、毎回完全な接続詳細を入力する代わりに、「ssh my-server」のようなシンプルなコマンドで接続できます。ファイル内の各Hostブロックが特定のホストエイリアスまたはパターンの設定を指定します。

生成された設定をどこに保存すべきですか?

macOSとLinuxでは~/.ssh/configに、Windowsでは%USERPROFILE%\.ssh\configに保存してください。ファイルのパーミッションが正しく設定されていることを確認してください:.sshディレクトリは700(drwx------)、configファイルは600(-rw-------)である必要があります。

ProxyJumpとは何ですか?いつ使うべきですか?

ProxyJump(-Jフラグ)を使うと、1つ以上の中間ジャンプホスト(踏み台サーバー)を経由してターゲットサーバーに接続できます。これは内部サーバーがインターネットから直接アクセスできない企業やクラウド環境で一般的です。ProxyJumpフィールドにジャンプホストのエイリアスを指定すると、SSHが自動的にそれを経由してターゲットに到達します。

複数のGitHubアカウントで異なるSSH鍵を使うには?

異なるエイリアス(例:「github-personal」と「github-work」)で別々のHostエントリを作成し、両方ともHostNameにgithub.comを指定します。それぞれに異なるIdentityFileを設定し、IdentitiesOnlyを有効にします。そしてGitリモートをgithub.comの代わりに適切なエイリアスを使用するように設定します。

Host * ワイルドカードブロックは何をしますか?

Host * ブロックはすべてのホストにマッチし、通常はconfigファイルの末尾に配置されます。ここで定義された設定は、より具体的なHostブロックでオーバーライドされない限り、すべての接続のデフォルトとして機能します。一般的なワイルドカード設定には、ServerAliveInterval、AddKeysToAgent、デフォルトのIdentityFileがあります。

データは安全ですか?

はい。すべての設定生成はJavaScriptを使用してブラウザ内で完全に実行されます。データがサーバーに送信されることはありません。ホスト名、IPアドレス、ユーザー名、鍵パスはお使いの端末から外に出ません。ツール使用中にブラウザの開発者ツールのネットワークタブで確認できます。

ProxyJumpとProxyCommandの違いは何ですか?

ProxyJumpはOpenSSH 7.3で導入された、ジャンプホストを指定するモダンでシンプルな方法です。ProxyCommandはより古く、より柔軟なオプションで、接続を確立するための任意のコマンドを指定できます。標準的なジャンプホストシナリオにはProxyJumpが推奨され、カスタムプロキシ設定やnetcat(nc)などのツールを使用する必要がある場合にProxyCommandが役立ちます。

関連ツール