LoginSignup
30
28

More than 5 years have passed since last update.

SSHトンネルでSFTP接続

Last updated at Posted at 2015-02-03

自分用のメモ

  • 色々確認したらトンネル開通の指定が逆だったので修正。修正したらsuでユーザ名合わせなくても開通した。

内部ネットワークから切り離されている場所への接続にターミナルSSHで接続していたのだけど、データをコピーするときとかSCPコマンドでは色々とGUI世代には苦痛でしかなかったので、FileZillaなどのFTPクライアントからアクセスできるように、トンネルを使ってみた。

  • 接続先と踏み台のポート番号は22番を想定

  • Puttyとか言っちゃってるけど、Ubuntuで構築した。
    Puttyでもできたから後ろの方に追記した。

ターミナルでSSHトンネルを構築

トンネル構築
$ ssh -L <任意のポート番号>:<接続先のIPアドレス>:22 <踏み台のユーザ名>@<踏み台のIPアドレス> -p 22

これで、踏み台先のパスワードを入力してログインできれば、localhostで指定したポートにトンネルが開通する。su - <踏み台ユーザ>でユーザー変更しているのは、別名だとログイン失敗したから。

例えば、以下のような設定の場合はsshはこうなる

名前 記述
踏み台のユーザ erichika
任意のポート番号 10020
踏み台IP aquablue
接続先のユーザ nozomi
接続先IP violet
接続例
ssh -L 10020:violet:22 erichika@aquablue -p 22

トンネル開通の確認

'netstat -na | grep 10020`で、値が「LISTEN」になっていればOK

FTPクライアントで接続

FileZillaの場合
1. 左上にあるサイトマネージャーを開く
2. 開いた画面で、左下にある「新しいサイト」ボタンを押す
3. 追加したサイトで、以下の設定を行う

名前
ホスト localhost
ポート 10020
プロトコル SFTP

ログオンの種類は「通常」もしくは「パスワードを尋ねる」に設定して、接続を押す

接続が確立すれば、トンネル先のサーバーに接続するはず

PuttyでSSHトンネル

トンネル接続用の情報はUbuntuと同様の設定を利用します。

  • 接続先のホスト名に、踏み台側のホスト名(erichika)を入力。ポート番号は変更がなければデフォルトの22番でよいです。

    2283ad7e-c587-6264-27fc-c70f09c17e1f.jpeg

  • 接続→SSH→トンネルの項目で実際に接続したい先の情報を入力
    putty_tunnel.jpg

  • トンネルのPuttyで通常通り踏み台のサーバーにログインします。

  • もう一つPuttyを立ち上げて、先ほどのトンネルしたポート番号に対してlocalhostからSSH接続すれば、リモート先のサーバーに接続できるはずです。
    putty_remote.jpg

30
28
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
30
28