~/.ssh/config で接続を楽にする設定

目次

毎回オプションを打たずに済ませるための設定集。

ホストごとの基本設定

Host prod
    HostName 203.0.113.20
    User deploy
    IdentityFile ~/.ssh/id_ed25519_prod
    IdentitiesOnly yes

ssh prod だけで接続できるようになる。IdentitiesOnly yes は、agent に鍵が多いときに「Too many authentication failures」で弾かれるのを防ぐ。

踏み台経由の多段接続

Host internal
    HostName 10.0.0.5
    User admin
    ProxyJump bastion

Host bastion
    HostName bastion.example.com
    User naxii

ProxyJump-J 相当)が最もシンプル。古い ProxyCommand ssh -W %h:%p bastion は基本もう不要。

接続の維持と多重化

Host *
    ServerAliveInterval 60
    ControlMaster auto
    ControlPath ~/.ssh/cm-%r@%h:%p
    ControlPersist 10m
  • ServerAliveInterval — NAT 越しの無通信切断を防ぐ
  • ControlMaster — 2 回目以降の接続を既存コネクションに相乗りさせて即時化。scp や rsync の連発が速くなる