FTPとは何ですか?
まず最初に、FTP は 70 年代に作成されたファイル転送プロトコル (ファイル転送プロトコル) であり、TCP/IP ネットワークを介してコンピュータ間でファイルを転送できることを覚えておく価値があります。コンピュータが使用するデフォルトの FTP ポートはポート 20 と 21 で、ファイル転送の実行に使用されます。その黄金期はとうの昔に過ぎましたが、実際には、同じネットワーク内でも、異なるネットワークからでも、今でも使用されています。
FTP プロトコルは、ファイルをホストするサーバーと、 TCP のポート 21 を介したクライアントとの間の直接接続を確立する役割を果たします。内部に入り、接続が成功すると、FTP サーバー上のすべてのファイルをクライアント (または少なくともその権限を持つファイル) から見ることができます。クライアントはこれらすべてのファイルを取得してダウンロードできます。クライアントとサーバー間の直接接続により、良好な転送速度が保証されます。
メリットとデメリット
このプロトコルを使用する際の主な利点としては、大きなファイルの転送、ファイルのダウンロードの停止と再開が可能であることがわかります。このプロトコルは、いわゆる一定の転送速度を保証し、さらに安全で使いやすいプロトコルです。ただし、すべてが良い点ばかりではありません。
デフォルトでは、これらのタイプのサーバーにはいかなる種類の暗号化もありません。データは、保護されずにそのままネットワーク上を移動します。これはコンピューター攻撃を引き起こす可能性があり、これは何としてでも避けたいものです。ただし、このセキュリティ問題を解決するために、2001 年に FTPS プロトコルが作成されました。このプロトコルは、SSL/TLS 層を追加することで、より安全な接続を実現します。さらに、もう 1 つのマイナス点は、上り下りを同時に行うことができないため、次のことを開始する前に、まず 2 つのことのうち 1 つを完了する必要があることです。
Windows 10 には、コンピューター間でファイルを簡単に転送できる FTP クライアントが多数ありますが、以下に示すように、サードパーティのツールを使用せずにファイルを転送することもできます。
Windows 10 でエクスプローラーから FTP ファイルをアップロードする
基本的に、このシステムでは、使い慣れたインターフェイスを使用できるという利点があり、FTP サーバーをネットワーク ドライブまたはストレージ ディスクであるかのように操作できます。この方法は、迅速な転送を行う場合に特に便利です。完全にグラフィックなので、すべてのユーザーにとって間違いなく最も扱いやすいものです。従うべき手順は次のとおりです。
- まず最初に、Windows 10 ファイル エクスプローラー ウィンドウを開きます。
- 次に、 [このコンピュータ]を右クリックし、コンテキスト メニュー オプションの中に表示される[ネットワークの場所の追加] オプションを選択します。これにより、FTP サイトへのショートカットの作成に使用できる新しいネットワークの場所を追加するウィザードのウィンドウが開きます。
- 「次へ」をクリックすると、最初にネットワークの場所を作成する場所が尋ねられます。
- [カスタム ネットワークの場所を選択する] オプションを選択し、もう一度 [次へ] をクリックします。
- ここで、Windows 10 で FTP 経由で接続するサーバーのパスを指定する必要があります。指定する必要があるフィールドのすぐ下に、記述方法に疑問がある場合に備えていくつかの例が表示されます (たとえば、 ftp://ftp.microsoft.com )。
- もう一度「次へ」をクリックすると、表示される新しいウィンドウで、必要に応じてログインするためのユーザー名とパスワードを指定します。匿名でログインすることを指定することもできます。
- 次のステップでは、そのネットワークの場所の名前を書き込み、プロセスを終了します。これで、指定されたサーバーへの直接アクセスがどのように表示されるか、また Windows 10 で FTP 経由で接続が確立されたかを確認できます。
作成したばかりの FTP プロファイルに接続します
このショートカットをネットワーク上に作成すると、Windows エクスプローラーにアイコンが表示され、快適にアクセスできるようになります。これをダブルクリックすると、新しいウィンドウで以前に作成したユーザー名とパスワードを入力するよう求められるため、書き留めて忘れないようにすることが非常に重要です。匿名ログインを実行するオプションや、再接続時に再度入力する必要がないようにパスワードを保存するオプションもあります。匿名ユーザー名でログインする場合、これは通常、ユーザーがファイルをコピーできるように構成されていない FTP にログインするときに行われます。このような匿名アクセスの場合、任意のパスワードを使用することも、まったく使用しないこともできます。これを行うには、プロンプトが表示されたら「Enter」を押すだけです。
これらの手順を実行すると、FTP サーバーの内部とそのすべてのコンテンツが画面に表示されます。前にも述べたように、このシステムは非常に使いやすい視覚的なツールであるため、あまり知識のないユーザーにとってははるかに快適です。この FTP プロファイルの作成は、独自のネットワーク内にサーバーを作成した場合でも、リモート FTP サーバーである場合でも、まったく同じです。
Windows 10 のコマンド プロンプトから FTP 経由でファイルを転送する
Windows 10 ではコマンドラインから FTP サーバーに接続できます。この方法が機能するには、サーバーが通信の確立とサーバーとの認証を担当するポート 21 を使用していることが不可欠です。その場合は、ftp host コマンドを使用して、目的のホストに直接接続できます (例: open ftp 192.168.0.26)。一方、FTP サーバーが別のポートで実行されている場合は、接続を確立するときにそのポートを指定する必要があります (例: 192.168.0.26 214 を開きます。214 は使用されるポート番号です)。いずれの場合も、FTP 経由でファイルを転送するには次の手順に従います。
- まず最初に行う必要があるのは、Windows の実行ウィンドウから cmd コマンドを実行してコマンド プロンプト ウィンドウを開くことです (Win+R キーの組み合わせで直接開くことができます)、またはスタート メニューの検索バーに「ファイル名を指定して実行」と入力します。
- コマンドラインの前にftp という単語を書き、 Enter を押します。
- これが完了したら、次に行う必要があるのは、 open コマンドとその後にftp.sitenameという用語を使用して、対応するサイトまたはサーバーとの接続を確立することです。たとえば、 ftp.microsoft.comを開きます。
- 次に、Windows 10 の FTP 経由で接続しようとしているコンピューターまたはサイトがアクセス資格情報を要求する可能性があるため、対応するユーザー名とパスワードを指定する必要があります。
すべてがうまくいけば、接続がどのように正しく行われているかがわかり、コマンド ラインから FTP 内のファイルの管理を開始できるようになります。そこから、さまざまなディレクトリ間の移動、ファイルのアップロードまたはダウンロード、フォルダーの作成、ファイルの削除などを行うことができます。これを行うには、非常に役立つ一連のコマンドがあります。
- lcd:ローカル ディレクトリ間の移動を許可します。例:「 lcd/フォルダー名」。
- cd:リモート ホスト上のフォルダー間の移動を許可します。例: 「 cd/フォルダ名」。
- ls:ファイルとディレクトリのリストに使用されます。
- get:ファイルのダウンロードを有効にします。例: 「 get + ファイル名」。
- put:ファイルをサーバーにアップロードするために使用されます。例: 「 put + ファイル名」。
- help:特定のコマンドの使用法とオプションに関する追加情報を表示します。例: 「ヘルプ + 置く」。
ファイルをアップロードするには、 putコマンドの後に path を指定する必要がありますが、ファイルをダウンロードする場合は、 getコマンドの後に path を指定します。ファイルのアップロードまたはダウンロードが完了したら、 exitまたはquitコマンドを実行して FTP 接続を閉じます。
FTP に関連するコマンドは他にも次のようなものが多数あります。
- append:接続先のリモート ファイルにローカル ファイルを追加します。
- bell:デフォルトでは無効になっており、ファイルの転送が完了するたびに音で通知されます。
- bye:ログアウトして終了します。
- close:ログアウトしますが、ftp > コマンド プロンプトで続行します。
- 削除:リモート コンピュータ上のファイルを削除します。
- dir:リモート コンピューター上のすべてのディレクトリ ファイルとサブディレクトリを一覧表示します。
- 切断:リモート コンピュータから切断しますが、ftp> システム プロンプトのままになります。
- mkdir:ディレクトリを作成します。
- send:ローカル コンピュータからリモート コンピュータにファイルをコピーして送信します。
- user: FTP 経由で接続するコンピュータのユーザーを示すために使用されます。
- mdelete: FTP 経由で接続しているコンピューター上のファイルを削除します。
コマンドの完全なリストは、Microsoft 公式 Web サイトのこのトピックに関連するヘルプ セクションで参照できます。
Windows での FTP へのファイルのアップロードを自動化する
Windows にはデフォルトで、コマンド プロンプトから FTP サーバーに接続して操作できるアプリケーションが付属していますが、このアプリケーションの使用は通常非常に複雑で、1 つのファイルの送信に必要以上に時間がかかることがあります。追加のソフトウェアを使用せずに Windows から FTP サーバーにファイルを簡単にアップロードするには、タスクの自動化を担当する .bat プログラムを作成する必要があります。これを行うには、以下で説明する手順に従うだけです。
.bat ファイルを作成してアップロードを自動化する
最初に行う必要があるのは、(メモ帳などを使用して) 新しいテキスト ドキュメントを作成し、そこに次の内容をコピーすることです。
@エコーオフ
エコー ユーザー MyUserName > ftpcmd.dat
echo MyPassword>> ftpcmd.dat
エコービン >> ftpcmd.dat
echo put %1>> ftpcmd.dat
エコー終了 >> ftpcmd.dat
ftp -n -s:ftpcmd.dat サーバー名.COM
ftpcmd.dat から
保存する前に、次の値を変更する必要があります。
- MyUserName : FTP サーバーのユーザー名。
- MyPassword : サーバーのパスワード。
- SERVERNAME.com : 接続する FTP サーバーの IP アドレスまたはホスト。
作成したこの新しいドキュメントを、希望する名前 (たとえば、 subefp.bat) で保存する必要があります。 but はバッチ処理プログラムであることを示しており、.bat の前に示されている名前がアップロードするために実行するコマンドになります。必要に応じて最適な名前を設定できます。
次に、このファイルをシステムパス内に含まれるディレクトリにコピーする必要があります。このディレクトリにどのディレクトリが含まれているかがわからない場合は、CMD ウィンドウを開いて「パス」と入力するだけでファイルのリストが表示されます。
ここにファイルをコピーしたら、FTP へのファイルのアップロードを簡単に開始できます。
新しい FTP プログラムの使用方法
ファイルをパス ディレクトリにコピーしたので、プログラムはパスを指定しなくても動作できます。つまり、ターミナルで「subftp」と入力するだけで問題なく実行できます。
ファイルをサーバーにアップロードする正しい方法は次のとおりです。
- サブFTPファイル名
プログラムは自動的に指定されたサーバーに接続し、指定されたユーザー名とパスワードで自身を識別し、追加のタスクを実行することなくファイルを自動的にサーバーに送信します。
無料のFTPクライアントを使用する
何らかの理由で上記の手順を実行できなかった場合は、他の外部 FTP クライアントを使用できます。デスクトップとモバイル、Android または iOS の両方で、適切に機能する無料のオプションが多数あります。
以下は、使用できる代替プログラムの一部です。
- WinSCP
- ファイルジラ
- スマートFTP
- サイバーダック
- コマンダー・ワン
- Android スマートフォンの場合は AndFTP、iPhone (iOS) の場合は FTPManager です。
最高の FTP クライアントに関するレポートで、同じ目的の他のプログラムを見つけることができます。また、おそらく最も人気のある FTP クライアントである FileZilla の使用方法を学ぶための詳細なチュートリアルを参照してください。
FTPSセキュアプロトコルについて
サーバー上およびファイル転送中に最大限のセキュリティを維持したい場合は、冒頭で述べた情報が暗号化されていないという欠点があるため、従来の FTP の代わりに FTPS プロトコルを使用することをよく理解しておくことをお勧めします。
基本的に、FTPS は SSL 上の FTP であり、パスワード、クライアント証明書、サーバー証明書など、このプロトコルでサポートされているさまざまな認証方法を追加することでファイルを保護できます。同様に、FTPS は、AES や Triple DES などのいくつかの安全なアルゴリズムを利用して、データ転送を暗号化します。
どのようなものにも欠点があるため、FTPS の使用に対する注意点についても触れておく必要があります。非常に厳格なセキュリティ制御が適用されたファイアウォールを有効にしている場合、FTPS は複雑になる可能性があります。これは、このプロトコルがさまざまな接続タイプに複数のポート番号を使用し、転送が行われるたびに新しいポートを開くためです。ネットワークを構成するときは、これを考慮する必要があります。
FTPS と SFTP を混同しないでください。頭字語の類似性にもかかわらず、 SFTP はまったく異なるプロトコルであり、FTP に基づいておらず、代わりに SSH または Secure Shell に基づいています。 SFTP が他のプロトコルと異なる点は、SFTP が 1 つの接続のみを使用し、認証情報と転送されるファイル データの両方を暗号化することです。 FTP と同様に、SFTP ではユーザー名とパスワードを使用して ID を構成できますが、SFTP ではこれらの資格情報も暗号化されますが、FTP では暗号化されません。また、SSH キー (公開キーと秘密キー) を使用することもできます。
参考資料一覧
- https://サイバーダック.io/
- https://commander-one.com/
- https://filezilla-project.org/
- https://winscp.net/eng/index.php
- https://play.google.com/store/apps/details?id=lysesoft.andftp
- https://www.smartftp.com/en-us/
- https://apps.apple.com/es/app/ftpmanager-ftp-sftp-client/id525959186
