FTPサーバとは?エンジニアが知っておくべき知識のまとめ
cloud computing
FTPサーバとは?エンジニアが知っておくべき知識のまとめ
アンドエンジニア編集部
2021.05.05
この記事でわかること
FTPとはインターネット経由でファイルを送受信する仕組みのこと
FTPクライアントソフトには、FFFTPやFilezillaなどがある
FTP接続は暗号化されない通信方法

FTPサーバとは?

pc

FTPサーバとはそもそも何なのか、詳しく解説します。FTPサーバはどういった場面で使われるのかなどの基礎知識をまとめました。FTPに関する基礎知識を押さえておきたい方は、本項目をぜひ参考にしてくださいね。それでは、まずFTPとは何かという所から解説します。

そもそもFTPとは?

FTPとは、インターネット経由でファイルを送受信する仕組みのことを言います。ファイルを送受信するにあたっては様々なルールがあり、その中の1つがFTPです。ルールに則って通信を行うことにより、スムーズにデータの送受信ができるようになります。

FTPは「File Transfer Protocol」の略称であり、日本語では「ファイル転送プロトコル」と言います。FTPを使うことで、ホームページで運用する際に使うサーバにファイルをアップロードしたり、逆にサーバからファイルをダウンロードしたりすることが可能です。Web開発においてFTPは必ずと言って良いほど使われます。FTPは送受信する仕組みを指すことを覚えておきましょう。

ファイル転送を行うFTPとは?注目される代替プロトコルについても解説

FTPサーバとは?

FTPサーバとは、FTPという仕組みで接続されるサーバのことです。サーバとは他のコンピュータにサービスを提供するためのコンピュータのことで、サーバに接続することによりWebページを作成できます。FTPサーバはFTPサービスを提供している訳ではなく、あくまでFTPという仕組みが使われるコンピュータという意味なので、注意が必要です。

FTPサーバは個人で立ち上げることも可能です。WindowsのパソコンにはFTPサーバ機能が搭載されており、簡単にFTPサーバを立ち上げることができます。

FTPクライアントソフトとは?

FTPクライアントソフトとは、FTPサーバに接続するときに使うソフトです。FTPクライアントソフトを使うことで、ローカルのファイルをFTPサーバにアップロードすることができます。FTPクライアントソフトには数多くの種類があり、Web開発の現場では大抵使われているものです。ソフトを使わなくてもファイルのアップはできますが、ソフトを使った方がスムーズに行えます。

FTPを使う場合の注意点

FTPの仕組みで通信をする際には、1つ注意点があります。それは、FTP接続だとクライアントとサーバ間でやり取りする際、暗号化がされないということです。暗号化されないと、悪意を持った誰かがやり取りを盗聴し、大切な情報が盗まれる危険性があるでしょう。例えば、パスワード情報などを暗号化せずに受け渡すのは大変危険です。

安全に通信を行いたい場合は、SFTP・SCP・SSHなど他の通信の仕組みを用いるのが良いでしょう。これらの通信は暗号化されるので安心です。FTP接続をする場合は、情報漏えい問題に気をつけてください。

FTPサーバに接続できるソフト

アカウント登録

FTPサーバに接続できる、代表的なFTPクライアントソフトを紹介します。これらのソフトを使うことで、FTPサーバにファイルをアップロードしたり、FTPサーバからファイルをダウンロードしたりすることが可能です。本記事で紹介するソフトは有名なものばかりですので、ぜひ知っておいてください。

FFFTP

FFFTPは、最も有名なFTPクライアントソフトです。日本人が開発したソフトであり、日本人が馴染みやすいのも多く使われる理由でしょう。FFFTPはFTPSというFTPで送受信するデータをSSLで暗号化するプロトコルを使っているため、安全にデータの送受信が可能です。また、ファイルをまとめて一括転送したり、漢字コードの自動変換ができるのも便利な点でしょう。

Filezilla

Filezillaも、有名なFTPクライアントソフトの1つです。FilezillaはFTPだけでなくFTPSやSFTPの通信にも対応しています。ファイルの高速転送ができたり、多くの言語に翻訳して使えたりする点が特徴です。

WinSCP

WinSCPは、オープンソースで開発されたFTPクライアントソフトです。FTPだけでなく、SFTPやSCPの通信にも対応されています。ミラーリング機能があり、サーバとローカルのフォルダの状況を同じにしてくれます。ミラーリング機能を使うことでサーバと全く同じ環境をローカルに作ることができ、開発効率が上がったりミスを減らしたりできるでしょう。

FTPの仕組みについて

instance

ここでは、FTPの仕組みについて解説します。FTPでデータをどのように送受信しているのか、さらにデータの送受信をする際に用いられる2つのモードに関しても触れていきます。FTPに関する理解を深めたい方はぜひ読み進めてください。

データの送受信方法

FTPを使ったデータの送受信方法を解説します。FTPではコネクションと呼ばれるものを使って送受信しています。コネクションとは、通信している者同士が仮想的な接続状態を確立することです。

コネクションを用いる通信方式の手順は下記の通りです。

  • 1.通信を始めたい側が、相手の所在位置や識別番号を指定する
  • 2.通信を始めたい側が、相手に通信可否を問い合わせる
  • 3.通信された側が、通信可否を答える
  • 4.通信可能な場合は、仮想的な専用の通信路を形成する

また、FTPでは2つのコネクションが送受信に用いられています。「データコネクション」と「コントロールコネクション」です。データコネクションは、実際のデータの送受信で用いられています。対して、コントロールコネクションはFTPサーバにログインする際の利用者認証やFTPコマンドを送信し、その応答を受信するために用いられるものです。2つのコネクションを使うことで、スムーズにデータの送受信を行っています。

データの送受信には2つのモードがある

データの送受信には2つのモードがあります。「バイナリモード」と「アスキーモード」です。バイナリモードは改行コードを自動的に修正して転送するやり方で、アスキーモードは改行コードなどは修正せずそのまま転送するやり方です。昔はアスキーモードを使うのが主流でした。

なぜなら、ローカルのサーバで別々のOSが使われている場合、改行コードの違いでバグが発生する可能性があるからです。ただ、最近は高性能がエディタが増えたことで、改行コードも整備されるようになったので、アスキーモードを使う必要性はなくなりました。

FTPサーバからデータを送受信する方法

tab

最後は、実際にFTPクライアントソフトを用いて、データを送受信する方法をみていきましょう。本項目で解説する内容は実際に開発する際も役立つはずなので、これからWeb開発分野に参入したい方はぜび参考にしてください。

FTPクライアントソフトをインストール

まずは、FTPクライアントソフトをインストールします。FTPクライアントソフトはいくつか種類がありますが、ここでは「FFFTP」を使う例をみていきましょう。

FFFTP公式サイトから最新バージョンのものをダウンロードしてください。ダウンロードしたらインストール画面を開き、「次へ」を選択して進みます。途中利用規約があるので忘れず読みましょう。最後に「インストール先フォルダを開く」にチェックを入れて「完了」をクリックすれば、インストールが完了します。

通信するサーバの設定を行う

インストールが完了したら、FTPクライアントソフトを起動させます。起動すると、FFFTPの画面の中にホスト一覧が表示されています。通信するサーバの設定を行う場合は、FFFTPの画面から「新規ホスト」を選択してください。

そこから、「ホストの設定名」「ホスト名(アドレス)」「ユーザー名」「パスワード」「FTPサーバ名」「FTPユーザ名」「FTPパスワード」を記入します。設定終了後に「OK」をクリックすれば、サーバの設計が完了します。

サーバに接続する

通信するサーバの設定が終わったら、サーバに接続してみましょう。先程設定したホスト名がホスト一覧に表示されているので、設定したホスト名を選択し「接続」をクリックします。すると、ホストに接続が完了します。

サーバにファイルをアップロードする場合、左側に表示されているローカル側のファイルを右側のサーバ内側のファイル一覧の方に、ドラッグ&ドロップします。これだけでファイルをアップロードすることが可能です。逆に、サーバ側のファイルをダウンロードしたい場合も、ファイルをドラッグ&ドロップすればOKです。

FTPクライアントソフトはこのような手順で使うのが基本です。今回はFFFTPの例を紹介しましたが、他のソフトでも基本的な流れは変わりません。

FTPクライアントソフトはWebアプリ開発において使うもの

woman

本記事では、FTPサーバについて解説しました。FTPサーバの仕組みやFTPクライアントソフトの種類がお分かり頂けたかと思います。

FTPクライアントソフトは、Web開発の多くの現場で使われているものです。Web業界に参入したい場合は、FTPの仕組みなどについての理解があると良いでしょう。また、個人でホームページなどを作成する際にもFTPクライアントソフトは役立つので、理解を深めるためにも1度使ってみることをおすすめします。

本記事がFTPサーバについて詳しく知りたい方にとって有意義なものとなれば幸いです。

Twitterをフォローしよう!
この記事をシェア
Twitter
Facebook
LINE
Hatena
アンドエンジニアの公式LINEができました! ピッタリの記事や役立つ情報が届きます!

編集部オススメコンテンツ

Sponsored
現場社員のリアルな声を「生配信」にてお届けいたします!
Sky株式会社
Sponsored
この記事をシェア
Twitter
Facebook
LINE
Hatena
アンドエンジニアの公式LINEができました! ピッタリの記事や役立つ情報が届きます!

編集部おすすめコンテンツ

Sponsored
現場社員のリアルな声を「生配信」にてお届けいたします!
Sky株式会社
Sponsored