踏み台サーバ経由で(IntelliJ経由で)SFTPする…メモ ( ポートフォワーディング使用)

IntelliJで踏み台サーバ経由でファイルをアップロードしたいときがたまにある(PH◯とかを必要に迫られて触る際に使うときがよくある)
そのときに、先人がやってくれていたものをまとめとしてメモする

Intellij単体だと、踏み台サーバ経由でのアップロードに対応していないので、sshのポートフォワーディング(localforward)の機能を駆使する

1. ~/.ssh/configの編集

下記のように設定を行う

Host app-web-sftp
    User user-name
    HostName getway-server        // 踏み台サーバのホストを設定
    IdentityFile ~/.ssh/id_rsa
    LocalForward 22222 app-web-server:22

LocalForward:
– ポートフォワーディング用の設定:特定ポートに来たものを転送する設定
– この例だと localhost:22222 に来たものを app-web-server:22 に転送する

2. ssh の起動

sshで接続していないとLocalForwardが動作しないので、ターミナルでsshコマンドで踏み台サーバに接続しておく

$ ssh app-web-sftp

know hostのYes/Noを聞かれるがYesでOK

※sshで接続してないとSFTPはできない

3. intellijの設定

  • Tools -> Deployment -> configure を選択する
  • 下記のように設定する
    • SFTP host: localhost
    • Port: 22222 ( LocalForwardで設定したポート)
    • Username: サーバログインユーザ名
    • AuthType: パスワードか鍵認証か
    • Private key file:(鍵認証なら) 秘密鍵を設定する // .pubじゃない方

設定したらTest SFTP connection をクリックして接続確認する
※ ここでエラーがでる場合は、sshの接続がキレてることが多い

接続されたらファイルアップロードして終わり

4. ファイルアップロード

Tools -> Deployment -> Browse Remote Host をクリックすると、Intellijの右サイドバーにリモートサーバのExplorerがでてくる

過去記事

踏み台使用時の~/.ssh/config

踏み台使用時の~/.ssh/config

.ssh/configのメモ

.ssh/configのメモ

参考サイト

踏み台サーバーを使っているときの IntelliJ IDEA の Rmote Host の設定(AdventCalendar1日目)

このエントリーをはてなブックマークに追加

Leave a Reply

Your email address will not be published. Required fields are marked *