SSH / SCP を使用してサーバーからファイルをダウンロードする方法
ユーザーは、コマンド ラインで scp ツールを使用して、SSH を使用して任意のリモート サーバーからファイルを安全にダウンロードできます。 scp は ssh と同じレベルのセキュリティを提供し、同じ認証を必要とするため、本質的にこれは、ファイルをリモート サーバーに安全に保存し、そのファイルを外部に公開することなくローカル ストレージに転送できることを意味します。
scp を使用してファイルを安全にダウンロードすることは、主に、macOS X、bsd、または linux で ssh とコマンドラインを定期的に使用している上級ユーザーを対象としています。コマンド ラインの経験が豊富な人にとっては、ssh と scp を使用してリモート ファイルをダウンロードするのは簡単で、便利なことに、ファイル転送が完了すると、リモート接続が終了します。これにより、ファイルをすばやくダウンロードするために sftp よりも scp が優先されますが、必要に応じて sftp を使用することもできます。
SSH セキュア コピーを使用してリモート サーバーからファイルをダウンロードする
これは、リモート サーバーで ssh がアクティブになっていることを前提としています。マシンに ssh できる場合は、scp もアクティブになっている可能性があります。これを試すためのリモート サーバーがない場合は、Mac OS X マシン間で試すか、事前に Mac で ssh とリモート ログインを有効にしておけば、localhost で試すことができます。
scp (セキュア コピー) を使用してリモート ファイルを安全にダウンロードするための基本的な構文は次のとおりです。ユーザー、サーバー、パス、およびターゲットを適宜置き換えてください:
scp user@server:/path/to/remotefile.zip /Local/Target/Destination
たとえば、サーバー IP 192.168.0.45 のリモート ユーザー「osxdaily」のホーム ディレクトリにある「filename.zip」という名前のローカル デスクトップにファイルをダウンロードするには、構文は次のようになります。
% scp [email protected]:filename.zip ~/Desktop/ パスワード: filename.zip 100% 126 10.1KB/s 00:00 %
認証が正しいと仮定すると、ターゲットファイルはすぐにターゲットの宛先へのダウンロードを開始し、ファイルのダウンロードが進むにつれて、完了率、ダウンロード速度、および転送経過時間が表示されます。
コマンドラインではいつものように、正確な構文を指定することが重要です。
ファイルまたはパスの名前にスペースが含まれている場合、次のようにパスに引用符またはエスケープを使用できます:
"scp [email protected]:/some remote directory/filename.zip>"
scp を使用して、構文を調整することでリモート サーバーにファイルを安全に配置することもできますが、ここではファイルのアップロードではなく、ファイルのダウンロードに焦点を当てています。
ssh を初めて使用し、これを自分でテストする場合、および以前にリモート サーバーに接続したことがない場合は、実際にリモート サーバーに接続するかどうかを確認するよう求められます。機械。これはそのように見え、ダウンロードを開始する前に「はい」または「いいえ」の回答が必要です。 % scp [email protected]:filename.zip ~/Desktop/ ホスト「192.168.0.4 (192.168.0.4)」の信頼性を確立できません。 ECDSA キー フィンガープリントは SHA256:31WalRuSLR83HALK83AKJSAkj972JJA878NJHAH3780 です。接続を続行しますか (はい/いいえ)?はい 警告: 既知のホストのリストに「192.168.0.4」(ECDSA) が永久に追加されました。パスワード: filename.zip 100% 126 0.1KB/s 00:00 %
再度、接続が承認され、ログインが成功すると、リモート ファイルがターゲット サーバーからローカルホストにダウンロードされます。
scp を使用してリモート サーバーから複数のファイルをダウンロードすることもできます:
scp user@host:/remote/path/\{file1.zip, file2.zip\} /Local/Path/
このようにリモート ファイル ダウンロードに ssh を使用することは、認証を必要とする安全な転送に最も適しています。もちろん、curl や wget を使用してリモート サーバーからファイルをダウンロードすることもできますが、curl や wget を使用してアクセスできるファイルは、外部からもアクセスできる傾向があります。一方、ssh や scp は認証またはキーが必要であり、3DES 暗号化を使用するため、かなりの負荷がかかります。より安全に。