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/