質問されたのでまとめておく。
WindowsではPuttyやTeraTermなどを使ってHTTP Proxy経由でのSSH構成をGUIから設定できる。一方、MacではせっかくTerminalがあるのでsshコマンドのオプションで同様のことを実現したい。
ネット上ではconnect-proxyなどを使う方法などが紹介されているが、Macには(多分)ncコマンドが初期導入されているので、コンポーネントの追加導入なしにHTTP Proxy超えが可能。
基本文例
$ ssh -o ProxyCommand='nc -X connect -x <ProxyServer>:<Proxy Port> %h %p' <ユーザー>@<接続先IP>
秘密鍵およびポート番号を指定した際の接続例
# 秘密鍵ファイル: ~/.ssh/id_rsa_xxx
# プロキシサーバー:proxy.yyy.com
# プロキシサーバーのポート番号: 8080
# SSH接続先サーバーのユーザー: root
# SSH接続先サーバーのIPアドレス: zzz.zzz.zzz.zzz
# SSH接続先サーバーのポート番号(デフォルトは22): 20022
$ ssh -i ~/.ssh/id_rsa_xxx -o ProxyCommand='nc -X connect -x proxy.yyy.com:8080 %h %p' root@zzz.zzz.zzz.zzz -p 20022
.ssh/configに記述した際の接続例
$ cat .ssh/config
# 秘密鍵ファイル: ~/.ssh/id_rsa_xxx
# プロキシサーバー:proxy.yyy.com
# プロキシサーバーのポート番号: 8080
# SSH接続先サーバーのユーザー: root
# SSH接続先サーバーのIPアドレス: zzz.zzz.zzz.zzz
# SSH接続先サーバーのポート番号(デフォルトは22): 20022
Host osc01
Hostname zzz.zzz.zzz.zzz
User root
Port 20022
ProxyCommand nc -X connect -x proxy.yyy.com:8080 %h %p
IdentityFile ~/.ssh/id_rsa_xxx
$ ssh osc01