- を使用して SCP コマンドで SSH
- を使用して Netcat
- を使用して FTP
- を使用して PythonのシンプルなHTTPサーバー
SCP(SSH)の使用
SCP SSH経由でファイルとディレクトリを安全に移動するために使用されるユーティリティです。とともに SCP コマンドを使用すると、ファイルをコンピューターからLinuxサーバーに、またはその逆に転送できます。このユーティリティはSSHを使用してファイルを移動するため、ファイルを転送するにはサーバーのSSHクレデンシャルが必要です。
SSHはほとんどのLinuxサーバーにプリインストールされていますが、そうでない場合は、次の手順でインストールして有効にすることができます。
Ubuntuターミナルを開いて、と入力します。
$ sudo apt install -y openssh-server
$ sudo service ssh start
SCPを介してファイルをアップロードする
Scp コマンドはこのパターンに従います
$ scp [オプション] [ソース] [宛先]コンピューターからLinuxサーバーにファイルを転送するには、次のコマンドを記述します
$ scp /path/of/your/local/file.ext [メール保護]:/ path / of / file.ext -i key.pem
上記のコマンドでは、最初に、コンピューターからLinuxサーバーにコピーするファイルのパスを指定し、次にLinuxサーバーのユーザー名とIPアドレス、およびファイルをコピーするパスを指定する必要があります。このパターンを許可しないLinuxサーバー([電子メールで保護]:path / of / remote / file.ext)。
このコマンドを実行した後、Linuxサーバーのユーザーアカウントのパスワードが必要になります
$ [メール保護]のパスワード:パスワードを入力すると、ファイルがアップロードされます。
SCPを介してファイルをダウンロードする
Linuxサーバーからコンピューターにファイルをダウンロードするには、ファイルまたはディレクトリのローカルパスと、ファイルをアップロードするLinuxサーバー上のパスをSCPに提供する必要があります。
$ scp [メール保護]:/ path / of / file.ext / path / to / destinationこのコマンドを実行した後、Linuxサーバーの認証パスワードが必要になります。パスワードを入力すると、ファイルがコンピュータに安全にコピーされます。
SCPコマンドラインオプション
でさまざまなフラグ(コマンドラインオプションと呼ばれる)を使用できます SCP 指図。
-NS フラグはポートを変更するために使用されます。デフォルトでは、sshは22ポートを使用しますが、-pフラグを使用すると、ポート22を2222などの他のポートに変更できます。
$ scp -p 2222 path / of / your / local / file.ext [メール保護]:path / of / file.ext-NS フラグは、フォルダとそのすべてのコンテンツをコピーするために使用されます。
$ scp -r / path / of / your / local / folder [メール保護]:/ path / of / folder-私 フラグは、ユーザー名とパスワードの代わりに、ファイルに保存されている暗号化キーのペアを使用して接続を認証するために使用されます。
$ scp -i path / of / your / local / file.ext [メール保護]:path / of / file.ext-NS フラグは、転送するデータを圧縮するために使用されます。
$ scp -c path / of / your / local / file.ext [メール保護]:path / of / file.ext-NS フラグは、エラー以外のメッセージと進行状況メーターを抑制するために使用されます。
$ scp -q /path/of/your/local/file.ext [メール保護]:/ path / of / file.extNetcatを使用してファイルを転送する
Netcatは、生のtcp / ip通信、ファイルの転送、ポートスキャン、ネットワークのトラブルシューティングなどに使用されるLinuxユーティリティです。多くのLinuxベースのシステムにプリインストールされており、主にネットワーク管理者によって使用されます。
まだインストールされていない場合は、次のコマンドを入力してNetcatをインストールできます
$ sudo apt-get install netcatNetcatを使用してファイルを転送するには、これらのコマンドを入力する必要があります。 Netcatサーバーを任意のポート(ポート4747など)でリスニングモードにし、送信するファイルのパスを入力します。
$ nc -l -p 4747ノート: サーバー送信ファイルは、netcatコマンドのコマンド「」でサインイン未満を使用します。
ディレクトリを転送することもできます。ポートでリッスンするように受信ホストを設定します。 (4747)。
$ nc -l -p 4747 | tar -zxfv / path / of / directoryポートの受信ホストリストに送信します。
$ tar czvf- / path / of / directory | nc受信-hast.url.com4747ディレクトリが転送されます。接続を閉じるには、を押します CTRL + C
FTPを使用してファイルを転送する
FTP(ファイル転送プロトコル)は、コンピューター間またはクライアントとサーバー間でファイルを転送するために使用されます。この目的のために特別に設計されているため、ファイル転送の点でHTTPや他のプロトコルよりも高速です。複数のファイルやディレクトリを転送することができ、転送中に接続が中断されてもファイルが失われることはありません。代わりに、ドロップされた場所から転送を再開します。
このコマンドを実行すると、aptを使用してvsftpdのようなFTPサーバーをインストールできます。
$ sudo apt install -y vsftpdパッケージがインストールされたら、と入力してサービスを開始する必要があります。
$ sudo systemctl start vsftpd$ sudo systemctl enable vsftpd
次に、コマンドFTPとIPアドレスを入力してFTPサーバーに接続できます。
$ ftp [IP_Address]FTPサーバーのユーザー名とパスワードを尋ねられます。ユーザー名とパスワードを入力すると、FTPサーバーに接続されます。
このコマンドを実行すると、サーバーのすべてのコンテンツを一覧表示できます。
ftp> ls
FTP経由でダウンロード
FTPサーバーからファイルをダウンロードする場合は、コマンドを入力してファイルを取得できます。
ftp> get path / of / fileファイルがダウンロードされます。異なるワイルドカードを使用して、ディレクトリ内の複数のファイルをダウンロードすることもできます。例えば ;
ftp> mget * .html拡張子が.htmlのすべてのファイルをダウンロードします。
FTPサーバーからダウンロードしたファイルのローカルディレクトリを設定することもできます。 lcd 指図。
ftp> lcd / home / user / directory-nameFTP経由でファイルをアップロード
FTPサーバーにファイルをアップロードするには、次のコマンドを入力します。
ftp> put path / of / local / fileファイルはFTPサーバーにアップロードされます。複数のファイルをアップロードするには、コマンドを入力します。
ftp> mput * .html拡張子が.htmlのすべてのファイルをアップロードします。
Pythonを使用したファイルのダウンロード
Pythonには、ファイルの転送に使用される「http.server」というモジュールがありますが、これを使用すると、ファイルをダウンロードすることしかできません。
Pythonがインストールされていない場合は、次のコマンドを入力します。
$ sudo apt install -y python3Pythonサーバーをオンにするには、コマンドを使用します。
$ sudo python3 -mhttp。サーバ 4747 #[ポート例:(4747)]これで、Pythonサーバーはポート4747でリッスンしています。
Webブラウザーに移動し、IPアドレスとポート番号を入力します。 Pythonサーバーがリッスンしている場所。
Pythonサーバー上のすべてのファイルとディレクトリを含むページが開きます。任意のディレクトリに移動して、ファイルをダウンロードできます。
任意のディレクトリに移動して、任意のファイルをダウンロードできます。
結論
SCP、Netcat、FTP、およびPython ファイルを転送するために一般的に使用される方法です。ファイルとディレクトリを転送する上記の方法はすべて、高速で信頼性が高く、現代で使用されています。他にもたくさんのテクニックがあります。好きな方法を採用できます。