SSHの接続先を保存する・踏み台・ファイル転送

config、IdentityFile、ProxyJump、ssh-agent、SFTP・SCPの基本設定です。

対象OpenSSHクライアント。ssh -GやProxyJumpは古い版では使えない場合があります。
最初に確認すること

接続元の.ssh/configに接続先名、ユーザー、ポート、鍵を保存すると、ssh work-serverのように短く接続できます。既存ファイルへ追記し、ほかの接続先の設定は残してください。

このページの内容
  1. configの保存先を確認する
  2. 接続先と使う鍵を保存する
  3. 有効な設定と接続を確認する
  4. 踏み台サーバーを経由する
  5. ssh-agentを使う場合
  6. SFTP・SCPでファイルを転送する
  7. 設定や鍵を使わなくなったら

configの保存先を確認する

Windows標準OpenSSHはユーザープロファイルの.ssh/config、macOS・Linuxは~/.ssh/configです。config.txtではありません。WSLやGit付属のSSHは別のホームを参照する場合があります。

多くの設定は最初に採用された値が使われるため、個別のHostを先に、Host *の共通設定を後ろに置きます。~/.ssh/configは接続元用、sshd_configは接続先サーバー用です。

接続先と使う鍵を保存する

host.example、user、鍵のパスを置き換えてconfigへ追記します。MAME TOOLSから保存した鍵を使う場合、IdentityFileはその秘密鍵のファイル名です。.pubを指定しません。

接続元・.ssh/configへ記載(シェルへ実行しない)
Host work-server
    HostName host.example
    User user
    Port 22
    IdentityFile ~/.ssh/id_ed25519_mame_tools
    IdentitiesOnly yes

有効な設定と接続を確認する

ssh -Gはその接続先に適用される設定を表示します。hostname・user・port・identityfileを確認してから接続します。コマンドラインで別の値を指定するとそちらが優先される場合があります。

接続元・OpenSSH
ssh -G work-server
ssh work-server

踏み台サーバーを経由する

踏み台と接続先の両方で認証が必要です。踏み台は接続元から、内部サーバーは踏み台から到達できる構成にします。以下をconfigへ追加し、ssh internal-serverで接続します。

通常のProxyJumpでは秘密鍵を踏み台へコピーせず、接続元で保持できます。AgentForwardingを有効にする必要もありません。踏み台側でTCP転送を許可するかは運用ルールに従います。

接続元・.ssh/configへ記載
Host jump-server
    HostName jump.example
    User jumpuser
    IdentityFile ~/.ssh/id_ed25519_jump
    IdentitiesOnly yes

Host internal-server
    HostName 10.0.0.10
    User appuser
    IdentityFile ~/.ssh/id_ed25519_internal
    IdentitiesOnly yes
    ProxyJump jump-server

ssh-agentを使う場合

ssh-agentはパスフレーズを入力して解除した鍵を扱うための仕組みです。使わなくても-iで接続できます。macOS・Linuxでは既存のセッションのagentを先に確認し、むやみにagentを増やしません。

Windows標準のssh-agentを使う場合は、管理者がサービスの開始方法を設定します。鍵を登録するssh-addは、その鍵を使う通常ユーザーで実行します。ssh-add -dで特定の鍵をagentから外しても、接続先のauthorized_keysは削除されません。

接続元・agentが起動している通常ユーザーの端末
ssh-add -l
ssh-add ~/.ssh/id_ed25519_mame_tools
# agentからこの鍵だけを外す場合
ssh-add -d ~/.ssh/id_ed25519_mame_tools

SFTP・SCPでファイルを転送する

configの接続先名はSFTP・SCPでも使えます。sftp work-serverでSFTPを開き、put・getなどを選んで操作します。byeで終了して接続元のシェルへ戻ります。SCPは下の例で手元のsample.txtを接続先へコピーします。同名ファイルを上書きするため、保存先を先に確認してください。

接続先名を使わずポートを直接指定する場合、sshは小文字-p、scpとsftpは大文字-Pです。SCPはOpenSSHの版によってSFTPを使うため、SSHログインが成功してもSubsystem設定によって転送が失敗する場合があります。

接続元・OpenSSH
scp ./sample.txt work-server:./sample.txt

設定や鍵を使わなくなったら

不要なHostブロックだけをconfigから外します。鍵を廃止するときは接続先のauthorized_keysからも該当する公開鍵を削除してください。既存の接続先やknown_hostsをまとめて消す必要はありません。

参照した公式資料

資料確認日:2026年9月12日。公式資料と一般的な確認手順をもとに作成しています。すべてのOS・ルーター・ゲームの組み合わせを実機検証したものではありません。