踏み台サーバ経由でIntelliJ IDEAのRemote HostからSFTPする

IT

configの記述がキモ。
ポートフォワードは考えなくてもよいし、別途sshプロセスを立ち上げる必要もない。
IntelliJ IDEAに限らず普通にコマンドからsshする際にも有効だし、CyberduckでもWinSCPでもBitviseでもなんでも応用できる。

~/.ssh/config

Windowsの場合は%USERPROFILE%\.ssh\config
以下のように記述する。

# 踏み台への接続設定 ※自端末から見たホスト名やsshオプションを記述する。
Host fumidai
    HostName fumidai.example.com
    Port 22
    User fumidaiuser1
    IdentityFile D:\Users\user01\.ssh\id_rsa

# 踏み台からサーバ本体への接続設定 ※踏み台から見たホスト名やsshオプションなどを記述する。
Host server01
     HostName server01.internal
     Port 22
     User serveruser1
     ProxyCommand ssh -W %h:%p fumidai

ProxyCommandが重要。
これにより、単にssh server01とコマンドを打つだけで踏み台を経由してくれる。

IntelliJ IDEAの設定

configに書いたHostの「server01」に接続するということを書いていく。
以下のような具合。

Tools → Deployment → Browse Remote Host
・Type: SFTP
・SSH Configuration
 ・Host: server01


【参考サイト】

ProxyCommandを使って踏み台(Bastion)経由で直接ssh/scpする | Developers.IO
自分の作業環境の作り直しをしているのですが、 たまに理解が怪しくなるので、確認ついでにここに吐き出しておこうと思います。 背景 「リモート環境にあるホストAにsshあるいはscpするためには、  踏み台(Bastion) …
2段のサーバを経由してWinSCPを使う - Qiita
状況 環境を次のように仮定する。localからはalphaのみにSSH接続可能。そこからbetaを経由して目的のgammaに接続できる。 Windows Subsystem for LinuxでUbuntu18.04を使用。...

コメント