sFTP または安全なファイル転送プロトコル 従来のFTPからの便利なアップグレードです (ファイル転送プロトコル )。 sFTP このプログラムは、ファイル転送操作で暗号化されたSSHトランスポートプロトコルをミラーリングするため、セキュリティレイヤーが向上しています。

sFTPの便利さ 圧縮や公開鍵認証などの便利なSSH機能に柔軟に適応しています。
sFTPを介してリモートマシンまたはサーバーに正常にアクセスできるようになると、このプログラムはユーザーをインタラクティブなコマンドライン/ターミナルモードセッションに誘導し、定義されたコマンド構文を快適に使用して必要なFTP関連の操作を実行できます。
この記事は、リモートマシン/サーバーからディレクトリ(フォルダとサブフォルダ)をダウンロードする際のsFTPのセキュリティと利便性を実証することを目的としています。
sFTPとファイル転送
2つのsFTPがあります SSHトランスポート層を介してリモートマシンに安全に接続するためのアプローチ。 1つはパスワード認証によるもので、もう1つはSSHパスワードなしのログインによるものです。
SSHパスワードなしのログインを使用することをお勧めします。これは、SSHの方が安全であり、リモートサーバーにアクセスする必要があるときにログインパスワードを覚えておく必要がないためです。
リモートSSHパスワードレスアクセスの構成
1。 ローカル/現在のマシンでSSHキーを生成します。
$ sudo ssh-keygen -t rsa
[ Enter ]を押して、Enterパスフレーズをスキップします。 ]キーボード上。

2。 次に、生成されたSSHキーをリモートマシンにコピーします。
$ sudo ssh-copy-id [email protected]

3。 リモートサーバーへのSSHパスワードなしアクセスをテストします。
$ sudo ssh [email protected]

SSHパスワードなしのログインは成功しました!
sFTPパスワードなしアクセスの試行
サーバーからログアウトし、sFTP経由でリモートアクセスを試みます。
$ sudo sftp [email protected]

予想通り、sFTPサーバーへのアクセスは成功しました。結果のsFTPコンソールから、 lsのような一般的なLinuxターミナルベースのインタラクティブコマンドを実行できます。 、 pwd 、 lpwd 、および mkdir 。
sftp> ls

ダウンロードしたいリモートサーバー上のターゲットディレクトリに移動して特定できるはずです。ディレクトリであるため、ファイルが存在するフォルダやサブフォルダが増える可能性が高くなります。
sftp> ls -l LinuxShellTips_Backup

sFTPを使用してLinuxリモートディレクトリをダウンロードする
私の側では、ダウンロードの対象となるリモートディレクトリは LinuxShellTips_Backupとして強調表示されています。 。このディレクトリ全体をローカルマシンにダウンロードするには、 getを使用します。 コマンド。
それ自体で、取得 コマンドは、リモートファイルおよびフォルダー(サブフォルダーなし)のダウンロードに効果的です。フォルダ内に複数のファイルとフォルダがある可能性のあるディレクトリを扱っているため、 get コマンドには-r
の支援が必要です (再帰的 )すべてのファイル、フォルダ、およびサブフォルダがダウンロードされるようにするオプション。
sftp> get -r LinuxShellTips_Backup

最後のステップは、 sFTPを終了することです 使用しているローカルマシンの現在の作業ディレクトリに、ダウンロードしたディレクトリが存在するかどうかを確認します。
sftp> exit $ ls -l LinuxShellTips_Backup

sFTPを使用してディレクトリをリモートサーバーにアップロードする
sFTPを介してリモートサーバーにファイルをアップロードすることに興味がある場合 、まず、リモートサーバーのディレクトリ名がアップロードしようとしているディレクトリ名と同じであることを確認してください。
ディレクトリ名が一致していることが確実な場合は、 putを使用してください コマンドと再帰オプション-r
リモートディレクトリのアップロードを成功させるため。
sftp> put -r LinuxShellTips_Backup

sFTPを介してディレクトリを快適かつ安全にダウンロードおよびアップロードできるようになりました Linuxの場合。