Macでサーバーを踏み台にしてsFTPアクセスする方法 #1「コマンド編」

2014年11月18日

Mac コマンド

windowには便利なツールが色々あって、あまり困ったことがないが、macがメイン開発機になった時に、linuxベースなので安心していたが、sshトンネルできるツールが無いことに気がついた。 ていうか困った・・・ webサーバーには、バランシングサーバーに、IPアドレスをケチって、LBでIPアドレスを管理して、サーバー群に対して1台ずつ固定IPをふらない構成はままある。 例えば自宅でインターネットアクセスしているルータ直下のPCを踏み台にして、自宅内にある複数のPC端末(サーバー)にIPアドレス1つでアクセスすることも可能になる方法をネットで見つけた。 仕事でも使えるので、備忘録しておくことにする。

やりかた

1.macのターミナルで、事前にポートフォアリングとしてアクセスを確立しておく

$ ssh -L local-port:sent-host:sent-port proxy-user@proxy-ip
local-port: ローカルポート sent-host : 転送先ホスト sent-port : 転送先ポート proxy-user: 踏み台先ユーザ名 proxy-ip : 踏み台先IP
※はまったポイントとしては、踏み台ポートは22、ローカルポートは、踏み台側で開けているポート番号が必要になる。(今回はたまたま8088がjenkins用に開けてあったわけだが、80番などでもいけるかどうか、あとで検証してみよう)

2.filezillaなどのsftpアクセスのソフトにlocalhost:任意のポートでアクセスできる。

Host:localhost port:ローカルポートを入力 アクセス:sftp
filezillaの設定はsiteは「localhost」「ポート番号」を上記で指定したポート、ユーザーのID/PWは踏み台の先のアクセスするサーバーの情報でOK

参考

Macで踏み台先のサーバにFileZillaでアクセスする方法メモ