ファイル転送プロトコルは、ほとんどのリーダーよりも古いものですが、それでも強力になっています。 FTPには最新のプロトコルのセキュリティはありませんが、とにかくそれを使用する必要があるかもしれません。方法は次のとおりです。
警告:インターネット経由でFTPを使用しないでください
これを最初から明確にしましょう。ファイル転送プロトコル(FTP)は1970年代初頭にさかのぼり、セキュリティに関係なく作成されました。暗号化は何にも使用しません。ユーザー名やパスワードなどのログイン資格情報、およびダウンロードまたはアップロードしたデータは、クリアテキストで転送されます。途中で誰でもあなたの秘密を見ることができます。ただし、FTPにはまだ用途があります。
ネットワーク内でファイルを転送する場合は、転送時に機密性の高いドキュメントをネットワーク上の誰もがパケットを盗聴したり盗聴したりしない限り、安全である必要があります。ファイルの機密性や機密性がまったくない場合は、FTPを使用して内部ネットワーク内でファイルを移動しても問題ありません。 Linuxには標準があります
ftp
コマンドラインプログラム
そのシナリオを正確に処理します。
だが
間違いなく
使用しないでください
ftp
インターネットを介して外部リソースにアクセスするコマンド。そのためには、
sftp
コマンドラインプログラム
、安全なSSHファイル転送プロトコルを使用します。このチュートリアルでは、これらのプログラムの両方を紹介します。
インターネット経由でFTPを使用したくない理由を明確にするために、以下のスクリーンショットをご覧ください。 FTPパスワードがプレーンテキストで表示されます。ネットワーク上またはあなたとインターネット上のFTPサーバーの間の誰でも、パスワードが「MySecretPassword」であることを簡単に確認できます。
暗号化がないと、悪意のある攻撃者が、転送中にダウンロードまたはアップロードするファイルを変更する可能性もあります。
ftpコマンド
FTPサイトに有効なアカウントがあるとすると、次のコマンドで接続できます。この記事全体を通して、コマンドのIPアドレスを接続先のFTPサーバーのIPアドレスに置き換えてください。
ftp192.168.4.25
警告
:使用する必要があるのは
ftp
信頼できるローカルネットワーク上のサーバーに接続するコマンド。使用
sftp
インターネット経由でファイルを転送するための、以下で説明するコマンド。
FTPサーバーはウェルカムメッセージで応答します。挨拶の文言はサーバーごとに異なります。次に、ログインしているアカウントのユーザー名を尋ねられます。
接続しているサイトのIPアドレスが表示され、その後にLinuxユーザー名が表示されます。 FTPサーバーのアカウント名がLinuxユーザー名と同じである場合は、Enterキーを押すだけです。これにより、Linuxユーザー名がFTPサーバーのアカウント名として使用されます。 Linuxユーザー名とFTPアカウント名が異なる場合は、FTPアカウントのユーザー名を入力してEnterキーを押します。
FTPサーバーへのログイン
FTPサイトのパスワードを入力するように求められます。パスワードを入力してEnterキーを押します。パスワードは画面に表示されません。 FTPユーザーアカウント名とパスワードの組み合わせがFTPサーバーによって確認されると、FTPサーバーにログインします。
が表示されます
ftp>
促す。
見回してファイルを取得する
まず、FTPサーバー上のファイルのリストを取得することをお勧めします。ザ・
ls
コマンドはまさにそれを行います。ユーザーにファイルが表示されます
gc.c
はFTPサーバー上にあり、自分のコンピューターにダウンロードしたいと考えています。彼のコンピューターは、FTP用語では「ローカルコンピューター」です。
ファイルを取得(または「取得」)するコマンドは次のとおりです。
取得する
。したがって、ユーザーはコマンドを発行します
gc.cを取得する
。彼らはタイプします
取得する
、スペース、そして取得したいファイルの名前。
FTPサーバーは、ファイルをローカルコンピューターに転送し、転送が行われたことを確認することで応答します。ファイルのサイズと転送にかかった時間も表示されます。
ls
gc.cを取得する
一度に複数のファイルを取得するには、
mget
(複数取得)コマンド。ザ・
mget
コマンドは、各ファイルを順番にダウンロードするかどうかを確認するように求めます。はいの場合は「y」、いいえの場合は「n」を押して応答します。
これは、多数のファイルにとって面倒です。このため、関連ファイルのコレクションは通常、単一としてftpサイトに保存されます。 tar.gzまたはtar.bz2ファイル 。
関連: Linuxで.tar.gzまたは.tar.bz2ファイルからファイルを抽出する方法
mget * .c
FTPサーバーへのファイルのアップロード
FTPアカウントに付与されている権限によっては、ファイルをサーバーにアップロード(または「配置」)できる場合があります。ファイルをアップロードするには、
置く
コマンド。この例では、ユーザーはというファイルをアップロードしています
Sans.tar.gaj
FTPサーバーに。
Songs.tar.gzを置く
ご想像のとおり、FTPサーバーに一度に複数のファイルを配置するコマンドがあります。という
mput
(複数入れ)。のように
mget
コマンドはしました、
mput
各ファイルを1つずつアップロードするための「y」または「n」の確認を求めます。
ファイルのセットをtarアーカイブに配置する場合と同じ議論が、ファイルを取得する場合と同じようにファイルを配置する場合にも当てはまります。ユーザーは、次のコマンドを使用して複数の「.odt」ファイルをアップロードしています。
mput * .odt
ディレクトリの作成と変更
ftpサーバーのユーザーアカウントで許可されている場合は、ディレクトリを作成できる場合があります。これを行うためのコマンドは
mkdir
。明確にするために、で作成するディレクトリ
mkdir
コマンドは、ローカルコンピューターではなく、ftpサーバー上に作成されます。
FTPサーバー上のディレクトリを変更するには、
cd
コマンド。あなたが使用するとき
cd
コマンド
ftp>
プロンプトは、新しい現在のディレクトリを反映するように変更されません。ザ・
pwd
(作業ディレクトリの印刷)コマンドは、現在のディレクトリを表示します。
ftpユーザーは、musicというディレクトリを作成し、その新しいディレクトリに変更し、を使用して現在地を確認します。
pwd
次に、コマンドはそのディレクトリにファイルをアップロードします。
mkdir music
cd むしc
pwd
置くsongs.tar.gz
現在のディレクトリの親ディレクトリにすばやく移動するには、
cdup
コマンド。
cdup
ローカルコンピュータへのアクセス
ローカルコンピュータのディレクトリを変更するには、
lcd
でコマンド
ftp>
促す。ただし、ローカルファイルシステムのどこにいるかを見失うことは簡単です。ローカルファイルシステムにアクセスするより便利な方法は、
!
コマンド。
ザ・
!
コマンドは、ローカルコンピュータへのシェルウィンドウを開きます。このシェルでは、標準のターミナルウィンドウでできることなら何でもできます。入力すると
出口
あなたはに戻されます
ftp>
促す。
私たちのユーザーは
!
コマンドを実行し、ローカルコンピュータのシェルウィンドウに入りました。彼らは発行しました
ls
そのディレクトリに存在するファイルを確認してから入力するコマンド
出口
に戻るには
ftp>
促す。
!
ls
出口
ファイルの名前変更
FTPサーバー上のファイルの名前を変更するには、
名前を変更
コマンド。ここで、FTPユーザーはファイルの名前を次のように変更します
名前を変更
その後、
ls
ディレクトリ内のファイルを一覧表示するコマンド。
songs.tar.gzの名前を変更しますrock_songs.tar.gz
ls
ファイルの削除
FTPサーバー上のファイルを削除するには、
削除
コマンド。一度に複数のファイルを削除するには、
見る
コマンド。各ファイルの削除について、「y」または「n」の確認を提供するように求められます。
ここで、FTPユーザーはファイルをリストして名前を確認し、削除するファイルを選択しました。次に、それらをすべて削除することにします。
ls
でぇて gc。お
mでぇて *。お
sftpコマンドの使用
IPアドレス指定システムに精通している読者は、上記の例で使用されているFTPサーバーの192.168アドレスが内部IPアドレスであり、プライベートIPアドレスとも呼ばれることに気付くでしょう。この記事の冒頭で警告したように、
ftp
コマンドは内部ネットワークでのみ使用する必要があります。
リモートまたはパブリックFTPサーバーに接続する場合は、
sftp
コマンド。ユーザーはというSFTPアカウントに接続します
でも
にある公的にアクセス可能なFTPサーバー上
てst。tれべx。ねt
。
接続すると、接続が確立されたことが通知されます。また、ホストの信頼性を検証できないことも通知されます。これは、新しいホストの最初の接続では正常です。 「y」を押して接続を受け入れます。
ユーザーアカウント名(
でも
)がコマンドラインで渡されましたが、ユーザーアカウント名の入力を求められません。パスワードの入力のみを求められます。これが入力され、検証され、承認され、
sftp>
促す。
sftp [email protected]
上記で説明したFTPコマンドは、次の例外を除いて、SFTPセッションでもまったく同じように機能します。
-
ファイルを削除するには、
rm(FTPは削除) -
複数のファイルを削除するには、
rm(FTPは見る) -
親ディレクトリに移動するには、
cd ..(FTPはcdup)
ユーザーは、SFTPセッションでいくつかのコマンドを使用しました。彼らは使用しています
ls
ファイルを一覧表示するには、
cd
pubディレクトリに変更します。彼らは使用しています
pwd
作業ディレクトリを印刷します。
Linuxの世界でファイルを転送する他のオプションがあります。特に
scp
(
安全なコピー
)が、ここではFTPとSFTPに焦点を当てています。該当するシナリオで使用すると、これら2つのコマンドが役立ち、ファイルの保存と取得のニーズが高まります。