こんにちは! wataruです。
現場で作業をしていて、作業環境のLinuxサーバーのリモートサーバーからローカルのPCにファイルを持ってきたいということはありますよね。
単純にリモートサーバにアクセスしてFTPツールやSCPツールなどで持ってくれば良いのですが、踏み台サーバが経由されていると話は別です。
踏み台経由のリモートからscpでファイルをローカルに持ってくる方法
まずは踏み台サーバに対象ファイルを持ってくる必要がある
必要なファイルがあるリモートサーバが踏み台サーバを経由している場合は、リモート→ローカルで直接ファイルを持ってくることはできません。
一度、踏み台サーバにリモートからファイルを転送してくる必要があります!
1.リモートから踏み台サーバにファイルを転送
2.踏み台サーバからローカルに転送
2は、FTPやSCPのツールを使うのが良いと思います。
私はWinSCPでやりました。
winscp.net
リモートから踏み台へ転送するのには?
リモートから踏み台サーバへ転送する場合は、SCPコマンドを使うのが良いです。
SCPコマンドは通信はsshを使用して認証するデータ転送のコマンドです。
例:リモートから踏み台サーバへファイルを転送する場合のコマンド
scp [ユーザ名]@[ホスト名]:ディレクトリ/ファイル名 ./
踏み台に転送ができたらあとはツールなどでローカルに持ってくる
踏み台に転送ができればあとはツールとかでローカルに持って来ましょう!
踏み台サーバからリモートに転送する場合
scp /XXXX/XXXX/ファイル名 [ユーザ名]@[ホスト名]:/ディレクトリ/
踏み台サーバからリモートにファイルを転送する場合は、ローカルに持ってくる時と逆で踏み台サーバのファイル名を指定し転送するリモートに[ユーザ名]@[ホスト名]:/ディレクトリ/ のように指定してコマンドを叩きます。
事前に踏み台サーバにファイルを配置しておきましょう。
さいごに
最後まで読んでいただき、ありがとうございました。
最近は踏み台サーバ経由で開発環境にアクセスすることが多いと思いますので、この手順は知っておいて損は無いと思います!
もし、記載している内容が間違えていれば遠慮なくコメントしてください!
私自身の勉強になりますし、他の人がこの記事を見た時に間違えた情報を見ることになってしまうので💦