GNU/Linux >> Linux の 問題 >  >> Ubuntu

SFTPプロトコルを使用してローカルマシンとリモートマシン間でファイルを転送する方法

SFTPとは何ですか?

Simple File Transfer Protocol(SFTP)は、インターネットを介して2つのデバイス間でファイルを転送するために使用されるプロトコルです。ファイル転送プロトコル(FTP)およびセキュアシェル(SSH)プロトコルで実行されます。

このプロトコルはファイルを転送しますが、パスワードスニッフィング、man-in-the-middle攻撃、および機密データの漏洩からも保護します。また、暗号化および暗号化ハッシュ関数を使用して、データの整合性を維持します。また、アクセスを許可する前に、クライアントとサーバーの両方を認証します。これにより、ファイルを安全に転送できます。

インストールガイド

このチュートリアルでは、この非常に便利なファイル転送プロトコルを使用して、ローカルマシンとリモートマシン間でファイルを簡単に交換する方法を紹介します。

このガイドでは、ローカルマシンとしてLinux Mint Cinamon 20.02を使用し、リモートマシンとしてUbuntu20.04LTSを使用しました。

チュートリアルは2つの部分に分かれています。最初の部分では、リモートマシンからローカルマシンにファイルを転送する方法を説明します。他の部分では、ローカルマシンからリモートマシンにファイルを転送する方法を説明します。

始めましょう!

リモートマシンからローカルマシンにファイルを転送する

ステップ1:リモートマシンへのSSH

最初のステップは、リモートマシンへのSSH接続を確立することです。これを行うには、まず、次のコマンドを使用してスーパーユーザーになります。

sudo -i

スーパーユーザーになったら、通信するリモートマシンにSSHで接続してファイルを取得します。

ssh [email protected]

ステップ2:転送するファイルを見つけます

次に、コピーするファイルを見つけます。このチュートリアルでは、新しいファイルを作成してローカルマシンに転送します。

そのためには、以下のコマンドを実行して/etcディレクトリに移動します。

cd /etc

touchコマンドを使用して、transfer.txtという名前の新しいファイルを作成します。

touch transfer.txt

ステップ3:リモートマシンとのSFTP接続を確立する

次に、以下に示すように、sftpを使用してリモートマシンに接続します。

sftp [email protected]

このように書かれたsftpが表示された場合は、sftpモードになっていることを意味します。これで、ローカルマシンとリモートマシンがこのプロトコルを使用してファイルを交換できるようになりました。

ステップ4:sftpが相互作用するディレクトリを確認する

ファイルの転送に進む前に、sftpが相互作用するディレクトリを理解するために少しナビゲートしましょう。以下のコマンドを実行して、現在の作業ディレクトリを確認します。

pwd

ローカルマシンの現在の作業ディレクトリを確認するには、次を使用します。

lpwd

対話するディレクトリを変更することもできます。このガイドの第2部に含まれています。

ステップ5:ファイルを転送する

transfer.txtファイルを作成した/etcディレクトリに移動しましょう。

cd /etc

リモートマシンからローカルマシンにファイルを送信するには、以下に示すように、getコマンドに続けてファイル名を使用します。

get transfer.txt

次のコマンドを使用して、ローカルシステムのルートディレクトリに移動します。

cd ~

lsを使用して、ディレクトリ内のすべてのファイルを表示します。

ご覧のとおり、transfer.txtファイルはローカルマシンにあります。

sftpセッションを閉じた後、ファイルをルートディレクトリからマシン上の他のフォルダに転送できます。

ローカルマシンからリモートマシンにファイルを転送する

リモートマシンからローカルマシンにファイルを転送する方法を確認したので、反対方向にファイルを転送する方法を見てみましょう。

ローカルマシンの次のディレクトリパスに別のファイルtest.txtがあります:

/home/azifa/Downloads/folder

ここから、リモートマシンに転送します。

ステップ1:SFTPを使用してリモートマシンに接続する

sftp [email protected]

ステップ2:sftpが相互作用するローカルディレクトリを変更する

ローカルの現在の作業ディレクトリは次のとおりです。

lpwd

先に述べたように、sftpが相互作用するローカルディレクトリを変更できます。これを行うには、lcdコマンドを使用します:

 lcd /home/azifa/Downloads/folder

これ以前は、sftpはローカルマシンのルートディレクトリと対話していました。これで、/ home / azifa / Downloads/folderディレクトリと対話します。次のコマンドで確認できます:

lpwd

ステップ4:ファイルを転送する

次に、putコマンドを使用して、ファイルをローカルマシンからリモートマシンに転送します。

lsコマンドを実行して、ファイルがリモートマシンの/homeディレクトリに正常に転送されたかどうかを確認します。

ls

はい、転送したファイルはリモートマシンにあります。

これで、簡単なさようならコマンドでセッションを終了できます。

bye

この記事では、SFTPと呼ばれるファイル転送プロトコルを使用して、リモートマシンとローカルマシン間でファイルを簡単に転送できることを説明しました。この方法を使用すると、保護のためにデータを暗号化する安全なプロトコルであるため、大きなファイルを安全に交換できます。

Linux Mint 20でProFTPDサーバーをセットアップする方法を確認するには、次のURLにアクセスしてください。

https://linuxways.net/mint/install-proftpd-on-linux-mint-20/


Ubuntu
  1. ncおよびpvコマンドを使用して2台のコンピューター間でファイルを転送する方法

  2. SCPとFTPを使用してLinuxのサーバー間でファイルを転送する方法

  3. SFTPプロトコルを使用してローカルマシンとリモートマシン間でファイルを転送する

  1. Kubernetesポッドとマシン間でファイルをコピーする方法

  2. Linux で SCP コマンドを使用してファイルを安全に転送する方法

  3. sftp を使用してファイルを安全に転送する方法 (例を含む)

  1. Crocを使用してコンピュータ間でファイルとフォルダを安全に転送する

  2. SCPとSFTPを使用してLinuxホスト間でファイルを安全にコピーする方法

  3. Ubuntuマシン間でファイルを転送する方法は??