created: 2022-11-25T14:48:49.125Z

.ssh/config で ProxyCommand の設定を tailscale で接続するホスト向けにやる

踏み台サーバと目当てのサーバには tailscaled がインストールされていてそれで疎通している。ドメインは設定していないので宛先には生IPを使っている。

目当てのサーバはほとんど ssh しないホストだったので、このために macOS 上で tailscaled を動かすのも億劫で、いわゆる踏み台経由の .ssh/config をすることにした。

脳死で -W %h:%p とやる例ばかり出てくるけど、ホスト名がなくてIPアドレスでログインしたいときはこうなる。

Host portablepi
    IdentityFile {{ 目当てのホストに接続するための鍵 }}
    ProxyCommand ssh -W {{ tailscale で割り当てられたIPアドレス }}:%p {{ 踏み台の接続名 }}

ProxyCommand 経由でログインする場合には、踏み台には鍵の配置が不要というのは(これまで利用はしていたけど)今回はじめて知った。手元の macOS にある鍵をつかって目当てのホストに認証をしてくれるんだ。

感想

たぶん5年ぶりくらいに ProxyCommand の設定をした。クラウドのマネージドのリソースばかり使ってると多段SSHすることってほとんどない。

参考