Secure Shell には多くの利点があります。Linux サーバーをリモートから簡単に管理できるだけでなく(ssh コマンドを使用)、より安全なファイル転送プロトコル(FTP)も含まれています。つまり、安全でない手段でファイルを転送するリスクを冒す代わりに、sftp 経由で SSH を利用できるのです。
sftpコマンドの使い方は非常に簡単です。ターミナルウィンドウを開き、 ssh USERNAME@IPADDRESSコマンドでログインします(USERNAMEは実際のリモートユーザー名、IPADDRESSはリモートマシンのアドレスです)。ログインしたら、get FILENAMEコマンド(FILENAMEはファイル名)でローカルマシンにファイルをダウンロードできます。put FILENAMEコマンド(FILENAMEはファイル名)でファイルをアップロードできます。
しかし、コマンドラインで作業したくない場合はどうすればよいでしょうか?GUIの方が効率的なツールだと感じるかもしれません。もしそうなら、幸運なことに、ほとんどのLinuxファイルマネージャー(GNOME Files、Nautilus、Nemo、Thunar、Dolphin、Pantheon Filesなど)はSSHとその付属ツールを標準でサポートしています。そのため、サードパーティ製のソリューション(FileZillaなど)をインストールすることなく、GUIでSFTPを利用できます。
ご想像のとおり、これは非常に簡単に実行できます。Elementary OS Pantheon FilesとGNOME Files(Ubuntu 17.10)の両方を使用して、SFTPプロトコル経由でリモートのUbuntu 16.04サーバーに接続する方法を説明します。
必要なもの
当然ですが、openssh-server を実行するサーバーが必要です。また、クライアントマシンにも openssh がインストールされている必要があります。幸い、ほぼすべての Linux ディストリビューションには openssh がデフォルトでインストールされています。
万が一これらのツールがインストールされていない場合でも、簡単に追加できます。私が使用しているプラットフォームでデモを行います。サーバー側では以下のコマンドが必要です。
sudo apt install openssh-server
クライアント側のコマンドは次のとおりです。
sudo apt install openssh-client
すべてをインストールしたら、準備完了です。
つながりを作る
Pantheon Files を使って説明しますが、ほとんどの Linux ファイルマネージャーでも手順は同様です。接続するには、ファイルマネージャーを開きます。ナビゲーションバーをクリックし、「sftp://SERVERIP」(SERVERIP はリモートサーバーの IP アドレスです –図 A)と入力します。
図A
キーボードのEnterキーを押すと、リモートユーザーのSSHログイン認証情報の入力を求められます。認証に成功すると、リモートマシンの/ディレクトリに移動します。当然ですが、ユーザーが権限を持つディレクトリ内でのみ作業が可能です。権限を持つディレクトリに移動すれば、ファイルマネージャーを使ってリモートサーバーとの間でファイルのコピー/ペーストが可能になります。
Ubuntu を使用している場合、プロセスは非常に似ています。違いは、最初に [その他の場所] をクリックし、ウィンドウの下部にリモート アドレスを入力する必要があることです (図 B )。
図B
Linuxのパワーと柔軟性
Linuxよりも強力で柔軟性の高いプラットフォームを見つけるのは難しいでしょう。SSHツールセットは、Linuxの柔軟性を示す完璧な例です。優れたファイルマネージャーを使えば、その柔軟性がいかにユーザーフレンドリーであるかを実感できます。リモートサーバーにファイルをアップロードまたはダウンロードする必要がある場合は、安全性の低いFTPプロトコルに煩わされることなく、SFTPをすぐに使い始めましょう。きっとあなたのデータは感謝してくれるでしょう。