FTPとは?仕組み、SFTPとの違い、デメリットを初心者にもわかりやすく解説!

file 3分でわかるIT基礎用語
記事上広告

FTPとは、「File Transfer Protocol」の略称で、ファイルを送受信するためのプロトコルです。

この記事では、FTPの仕組み、SFTPとの違い、デメリット等について、IT初心者の方にもわかりやすく解説していきます。

FTPとは?

?

FTPとは、「File Transfer Protocol」の略称で、ファイルを送受信するためのプロトコルです。クライアントとサーバー間でファイルのアップロードやダウンロードを行うときに使われます。ポート番号は20、21です。

FTPは、例えばこのWebサイトを閲覧する際にも使われています。Webサイトを作るには、HTMLファイルや画像データをFTPを用いてサーバに転送する必要があります。

FTPの仕組み

FTPの概要はわかっていただけたかと思いますが、次に具体的なFTPの仕組みについて、構成要素、プログラム、コネクション、モードそれぞれの観点から解説していきます。

FTPの構成要素

FTPサーバー

server

一つ目が、FTPサーバーです。FTPサーバはインターネット側にあり、Webサーバーと繋がっています。一言で言うと、クライアントからデータを受信する側で、サーバー上でデータの上書き更新等の編集も可能です。

このFTPサーバも、anonymousサーバーそれ以外で大きく2種類に分かれます。anonymousサーバは、その名の通り匿名で誰でもファイルをダウンロードできますが、ダウンロード専用で、公共機関の情報公開などに使われています。anonymousサーバ以外のものは、利用するためにはIDとパスワードが必要で、ログインしてファイルを編集することも可能です。

FTPクライアント

二つ目が、FTPクライアントです。一言で言うとデータをサーバに送る側で、ユーザーのPCなどを指します。クライアントがFTPサーバーにファイルを送るためには、FTPクライアントソフトをインストールすることが必要です。

プログラムの種類

program

FTPのプログラムは、PIDTPが使われています。

PIとはProtocol Interpreter(プロトコル・インタプリタ)の略称で、簡単に言うと「クライアントとサーバー間の通訳係」のようなものです。クライアント側の操作をサーバー側にわかるプロトコルに変換します。

DTPは「Data Transfer Process」の略称で、実際のデータ転送を担うプロセスのことです。

このPIとDTPがあって、初めてFTPを利用することができます。

コネクションの種類

FTPのコネクション(接続形態)は、制御用データ転送用で2種類があり、それぞれ「コントロールコネクション」「データコネクション」と呼ばれます。

コントロールコネクションは、ログイン情報の管理やコマンドの制御を行い、データコネクションは実際のデータの転送を行います。

モードの種類

FTPは、転送するファイルの種類によってモードが変わります。

バイナリモード」は、画像ファイルや音楽ファイルを転送する際に使われデータを修正せずそのまま送ります

アスキーモード」は、テキストファイルを転送する際に使われ、改行コードを自動で修正して送ります。

昔は開発環境と本番環境が別々のOSで行われた際に、改行コードの違いで動作しないことがあったため、アスキーモードを使用していましたが、最近では開発環境が進化し、改行コードを修正する必要がなくなったため、現在はアスキーモードはあまり使われていません

FTPのデメリットは?SFTPとは?

encryption

FTPのでメリットは、通信が暗号化されておらずセキュリティリスクがあることです。通信が暗号化されていないと、通信経路で第三者にIDやパスワード等の重要な情報が盗まれてしまう可能性があります。

その対策として、最近は通信を暗号化するSSHというプロトコルを用いた「SFTP」が採用されることが増えてきています。

SSHについては、こちらの記事で詳しく解説しているので、合わせて読んでみてください。

おわりに

いかがだったでしょうか。FTPは、WEBサイト一つ作るにも欠かせない基本的なプロトコルになります。仕組み、デメリットをしっかり理解しておきましょう。

コメント

タイトルとURLをコピーしました