sFTP(セキュアファイル転送プログラム)は、安全でインタラクティブなファイル転送プログラムであり、 FTPと同じように機能します。 (ファイル転送プロトコル )。ただし、 sFTP FTPよりも安全です;暗号化されたSSHトランスポートを介してすべての操作を処理します。
公開鍵認証や圧縮など、いくつかの便利なSSH機能を使用するように構成できます。指定されたリモートマシンに接続してログインし、ユーザーがさまざまなコマンドを実行できるインタラクティブコマンドモードに切り替えます。
この記事では、sFTPを使用してディレクトリ全体(サブディレクトリとサブファイルを含む)をアップロード/ダウンロードする方法を説明します。
LinuxでsFTPを使用してファイル/ディレクトリを転送する方法
デフォルトでは、 SFTP リモートサーバーへの安全な接続を確立するために同じSSHトランスポートを採用しています。パスワードはデフォルトのSSH設定と同様にユーザーの認証に使用されますが、リモートホストへの接続を簡素化してより安全にするために、SSHパスワードなしのログインを作成して使用することをお勧めします。
リモートFTPサーバーに安全に接続する
リモートのsftpサーバーに接続するには、最初に安全なSSH接続を確立してから、図のようにSFTPセッションを作成します。
$ sftp [email protected]
リモートホストにログインすると、インタラクティブな sFTPを実行できます。 以下の例のようなコマンド:
sftp> ls #list directory sftp> pwd #print working directory on remote host sftp> lpwd #print working directory on local host sftp> mkdir uploads #create a new directory
sFTPを使用してディレクトリをアップロードする方法
ディレクトリ全体をリモートのLinuxホストにアップロードするには、 putを使用します 指図。ただし、下のスクリーンショットに示すように、リモートホストの作業ディレクトリにディレクトリ名が存在しない場合は、エラーが発生します。
したがって、ローカルホストからアップロードする前に、まずリモートホストに同じ名前のディレクトリを作成します。-r
魔法をかけ、サブディレクトリとサブファイルもコピーできるようにします:
sftp> put -r Tecmint.com-articles sftp> mkdir Tecmint.com-articles sftp> put -r Tecmint.com-articles
転送された元のファイルからの変更時間、アクセス時間、およびモードを保持するには、-p
を使用します フラグ。
sftp> put -pr Tecmint.com-articles
sFTPを使用してディレクトリをダウンロードする方法
fstools-0.0というディレクトリ全体をダウンロードするには リモートLinuxホストからローカルマシンに、 getを使用します -r
を使用したコマンド 次のようにフラグを立てます:
sftp> get -r fstools-0.0
次に、ローカルホストの現在の作業ディレクトリをチェックインします。ディレクトリがすべてのコンテンツとともにダウンロードされているかどうかを確認します。
sFTPシェルを完全にするには、次のように入力します。
sftp> bye OR sftp> exit
さらに、sFTPコマンドと使用上のヒントをお読みください。
ユーザーがリモートホスト上のファイルシステム全体にアクセスできないようにするために、セキュリティ上の理由から、chrootJailを使用してsFTPユーザーをホームディレクトリに制限できることに注意してください。
それでおしまい!この記事では、sFTPを使用してディレクトリ全体をアップロード/ダウンロードする方法を説明しました。以下のコメントセクションを使用して、この記事/トピックについての考えをお聞かせください。