リモートサーバーとファイルを送受信する ー scp コマンド編 ー
環境
- Parallels Desktop 14 for Mac
- macOS Mojave
- Ubuntu Server 18.04.2 LTS(サーバー)
scp コマンドを用いて、以下のことを行います。
【予備知識】scp コマンドとは?
scpコマンドは、sshを利用してリモートマシン間でファイルコピーするコマンドです。
scpコマンドでは、「sshコマンド」と同じ認証でデータ転送の通信を暗号化するので、安全にリモートマシン間でファイルコピーができます。
ファイルをサーバーにアップロードする
ローカル PC(macOS)からリモートサーバー(Ubuntu Server)のホームディレクトリ(ubuntu/home/)にファイルをアップロードしてみます。
(注:以下のコマンドはすべてローカル PC で記述・実行します。)
$ scp -i .ssh/id_rsa samle.txt ubuntu@xxx.xxx.xxx.xxx:~/.
※ ホストベース認証(公開鍵認証)かつパスワード認証を拒否、という設定を適用している為、-i オプションでローカル PC 上にある秘密鍵を指定しています。
もし、上のような設定していない場合は下のコマンドを実行すれば OK です。
$ scp sample.txt ubuntu@xxx.xxx.xxx.xxx:~/.
ファイルをサーバーからダウンロードする
リモートサーバー(Ubuntu Server)からローカル PC(macOS)のホームディレクトリ(Users/{ユーザー名}/)にファイルをダウンロードします。
(注:以下のコマンドはすべてローカル PC で記述・実行します。)
$ scp -i .ssh/id_rsa ubuntu@xxx.xxx.xxx.xxx:~/sample.txt ~/.
※ ホストベース認証(公開鍵認証)かつパスワード認証を拒否、という設定を適用している為、-i オプションでローカル PC 上にある秘密鍵を指定しています。
もし、上のような設定していない場合は下のコマンドを実行すれば OK です。
$ scp ubuntu@xxx.xxx.xxx.xxx:~/sample.txt ~/.