FTPでファイルが送られる仕組みは?おすすめクライアントソフト4つも紹介
Webサイトのデータを保存しているサーバーへ、自分のパソコンから直接ファイルを転送する方法が「FTP」です。
最近はWordPressをはじめとした「CMS」を利用してWebサイトを運用するケースが増えているため、昔に比べるとFTPの利用頻度は減少傾向にあります。
しかし、FTPはCMSと違ってサーバーへ直接アクセスできるため、扱えるようになっておくとサイト運営の難易度が大きく下がるはずです。
この記事ではFTPについて、以下の内容を解説していきます。
FTPの仕組みだけでなく、今日から扱えるようにおすすめソフトも紹介しています。FTPのことがわからない方は、ぜひご一読ください。
FTPでファイルを転送する仕組み
FTPとは「File Transfer Protocol」の略で、インターネット通信上のファイル転送プロコトルです。
FTPでファイルが転送される際は、型が決まった「コマンド」と呼ばれる処理命令を使って、自分のパソコンからサーバーに指示を出すことで始まります。
FTPを利用すればHTMLや画像ファイルの転送ができたり、Webサーバーからソフトウェアを配布できたりします。
ここからはFTPの仕組みについて、以下の内容を解説していきます。
- クライアントとFTPサーバーの関係
- FTPサーバーへのアクセスはFTPソフトで行う
- ポート番号の役割について
- 動作モードの違い
- 転送モードの違い
順番に見ていきましょう。
クライアントとFTPサーバーの関係
FTPでファイルを転送する際は、自分のパソコンから「FTPサーバー」を介してデータの送信を行います。ちなみにFTP上では、操作者のことを「FTPクライアント」と呼びます。
FTPクライアントが直接Webサーバーに接続するわけではなく、それと連携しているFTPサーバーでやり取りが行われます。
FTPサーバーと聞くとわざわざ専用サーバーを立てることをイメージされる方もいるでしょう。しかし実際には、サーバー内にFTPサービスを構築するソフトウェアがインストールされている環境と考えてください。
FTPサーバーにファイルが転送されれば、連携しているWebサーバーに反映されるようになります。
FTPサーバーへのアクセスはFTPソフトで行う
FTPサーバーへアクセスする際に使われるソフトが「FTPソフト」と呼ばれるものです。
FTPソフトでサーバーへアクセスする際は、サーバー管理会社から発行される「FTPユーザー名」およびパスワードを入力する必要があります。
FTPユーザー名を把握されていない方は、契約しているサーバー管理会社へ確認してみましょう。
ちなみに弊社が運営するコアサーバーでのFTPの設定方法についてはの以下の記事で解説しています。コアサーバーユーザーでFTPを利用したい方は、ぜひご一読ください。
コアサーバーV1プランFTP設定マニュアル
コアサーバーV2プランFTP設定マニュアル
ポート番号の役割について
インターネット上を通信するデータには、「ポート番号」と呼ばれる識別番号が割り振られます。
ポート番号は送られてきたデータをどのソフトウェアに届けるかの判断をする宛名書のようなものです。
ポート番号には以下の2種類があり、それぞれ役割が異なります。
20番 | データの転送 |
---|---|
21番 | データの制御(接続したり、転送形式を決める) |
表が見切れている場合、横スクロールできます
21番でFTPサーバーにログインして、20番でファイルの送受信を行います。
動作モードの違い
FTPではクライアントとサーバー間を、以下2種類のモードを使い分けながら通信しています。
アクティブモード | サーバーからデータコネクションを開始する。 |
---|---|
パッシブモード | FTPクライアントからデータコネクションを開始する。 |
表が見切れている場合、横スクロールできます
アクティブモードで通信することのデメリットは、ファイアウォールによって通信が遮断されてしまう場合があることです。
ファイアウォールが作動してしまう原因は、サーバーからクライアントへ働きかけることが「外部からの攻撃」と誤認してしまうためです。
そのため、クライアント側でファイアウォールを敷いている場合はパッシブモードで接続しましょう。クライアントが指定したランダムなポート番号を使うパッシブモードであればファイアウォールが作動せずに済むため、支障なく通信ができます。
転送モードの違い
FTPでデータを通信する際は、以下2つの転送モードがあります。
バイナリーモード | ファイルをそのまま転送する |
---|---|
アスキーモード | ファイル内の改行コードを変換して転送する |
表が見切れている場合、横スクロールできます
基本的にはファイル変換なしで転送される「バイナリーモード」が使われます。
アスキーモードが使われていた理由は、一昔前のファイルでは、改行コードに違いがあるとプログラムが動作しないことがあったためです。
そのため、改行コードを変換してプログラムを正常に動作させるために、アスキーモードが用いられていました。
しかし近年のFTPソフトでは改行コードの違いに関係なく、プログラムが動作するように改良されています。
デフォルトではバイナリーモードを使用し、仮にプログラムが動作しないようなことがあった場合は、アスキーモードで再転送してみるといいでしょう。
FTPコマンドの一覧と実行例
FTPソフトを扱う際は、コマンドを入力して操作する必要があります。ここからはFTPソフトでよく用いられるコマンドの一例と、実際に実行される例を紹介します。
FTPコマンドの一例
FTPソフトでは数多くのコマンドが用いられますが、その中でもよく使われるのが以下の10個です。
open | 指定サーバーへの接続 |
---|---|
user | サーバーへのユーザー名認証 |
mdk | サーバーでフォルダを作成 |
stor | ファイルをアップロード |
dele | サーバーのファイルを削除 |
close | 接続を切断する |
quit | FTPモードを終了する |
bin | バイナリーモードでファイルを扱う |
asc | アスキーモードでファイルを扱う |
put | ファイルを送信する |
表が見切れている場合、横スクロールできます
上記は一例ですが、他にもさまざまなコマンドがあります。FTPソフトを使いながら覚えていくようにしましょう。
FTPコマンドの実行例
FTPコマンドを実行する際は、以下の手順でパソコンを操作する必要があります。
- Windows:「コマンドプロンプト」や「コマンドライン」のツールを利用
- Mac:ブラウザのアドレスバーに「ftp://」を入力してEnterで進む
コマンドの入力はすべてテキストです。例えば、サーバーにログインするとしましょう。
C:\>ftp 157.7.184.35 ①
ftp> open ftp 157.7.184.35
Connected to 157.7.184.35.
220 157.7.184.35 FTP server ready
Name (157.7.184.35:vagrant): example ②
331 Password required for example
Password: ********** ③
230 User admin logged in
Remote system type is UNIX.
- IPアドレスもしくは、ホスト名(FQDN)を入力してアクセスします。
- サーバーが見つかるとユーザー名を求めてきます。
- サーバー側でユーザー名が確認できると、パスワードを求めてきて…
上記のように、FTPコマンドは対話形式のように進んでいきます。
おすすめのFTPクライアントソフト4選
FTPは非常に便利な機能ですが、それでも操作の度にコマンド通信を行うのは煩わしいものです。そこで登場したのが、FTPクライアントソフトです。
FTPソフトはサーバーへのコマンドを視覚的に操作できるようになり、サーバーとのデータ転送を効率よく遂行してくれるソフトウェアです。
ここからはおすすめのFTPクライアントソフトを4つ紹介します。
ソフト名 | 主な特徴 | 使用可能OS |
FFFTP | インターネット黎明期からある、最も有名なソフトです。 | Windows |
---|---|---|
WinSCP | Windows 専用の、高セキュリティを誇るソフトです。 | Windows |
FileZilla | 多機能で安定していますが、中級者以上向けです。 | Windows / Mac |
Cyberduck | シンプルで使いやすい、初心者向けのソフトです。 | Windows / Mac |
表が見切れている場合、横スクロールできます
FTPクライアントソフトを扱えるようになれば、FTPコマンドの知識がなくてもサーバーへのファイル転送が簡単になります。
各ソフトの特徴を、1つずつ見ていきましょう。
1. FFFTP
「FFFTP」は代表的なFTPソフトの1つです。FTPソフトの中では数少ない国産品であり、日本語で表示されるため操作に迷うことなく進められます。
FFFTPの特徴は、操作画面でクライアントとサーバーの中身が一目でわかることです。転送したいファイルはドラッグ&ドロップで操作できるため、自分のパソコンでフォルダ整理するのと同じ感覚で利用できます。
FFFTPはフリーソフトのため、費用は一切かかりません。ただしWindows版にしか対応していないため、Macユーザーの方は他のFTPソフトを利用する必要があります。
2. WinSCP
「WinSCP」は他FTPソフトでできるファイルの転送に加えて、ソフト内で名称変更や新規フォルダの作成も可能です。
テキストエディタも内蔵していることでソフト内で編集を完結できるため、作業工数の削減につながります。
さらにWinSCPでは、インターフェイスをエクスプローラー風とノートンコマンダーの2種類を用意しているため、使いやすいほうを選べるようになっています。
ノートンコマンダーであればマウスに触れる必要がなく、キーボードだけで操作を完結できます。
FTPソフトとエディターソフトの行き来が面倒に感じている方は、WinSCPがおすすめです。
3. FileZilla
「File Zilla」はFFFTP同様に、自分のPCとサーバー内の状況を一度に確認できるインターフェイスを採用しているため、転送に必要なファイルが一目でわかることが特徴です。
FTPソフトの多くはWindowsしか対応していないものが多いですが、File ZillaではMacでも扱えることも嬉しいポイントです。
さらにFile Zillaでは4GB超の大容量ファイルを転送できることも大きなメリットと言えます。
大容量ファイルを転送する機会が多い方は、File Zillaを利用しましょう
4. Cyberduck
「Cyber duck」は日本語も含めた30の言語に対応しているため、操作方法に迷うことなく利用できるFTPソフトです。
FTPソフトはWindows向けに作られているものが多いですが、Cyber duckはMac向けに開発されたものです。
そのため、MacユーザーにおすすめできるFTPソフトの1つといえます。
インターフェイスやアイコンがシンプルなため、直感的に扱えることも、おすすめできるポイントです。
FTP通信のデメリットはセキュリティが脆弱であること
FTP通信はサーバーへのデータ転送を簡単に行えるメリットがある一方で、セキュリティが脆弱な点がデメリットとして挙げられます。
FTPではクライアントとサーバー間の通信が暗号化されずに行われるので、FTPサーバーへ接続する際のアカウントやパスワードが第三者に傍受されてしまうリスクがあります。
FTPソフトによっては、暗号化機能を実装した通信方式を採用しているものもあります。以下の表でFTPの通信方式の種類と特徴をまとめているので、ぜひご参考ください。
FTP | File Transfer Protocol | FTP通信内容はそのままやりとりされます。 |
---|---|---|
SFTP | SSH File Transfer Protocol | SSH※によってFTPの通信内容の暗号化が行われています。 |
FTPS | File Transfer Protocol over SSL/TLS | SSLによってFTPの通信内容の暗号化が行われています。 |
SCP | Secure Copy Protocol | SSHによる、FTP通信の高度な暗号化を行います。 |
表が見切れている場合、横スクロールできます
FTPソフトを利用する際は必ず、セキュリティ対策が施された上記いずれかの通信方式を選択するようにしましょう。
おわりに
FTPソフトを活用すればWebサーバーへのファイル転送が簡単になるため、ぜひ使い方を覚えておきたいところです。
近年はWordPressをはじめとしたCMSが主流になってきているため、FTPでファイルを転送する機会は今までよりも減少傾向にあります。
しかし自分のパソコンから直接サーバーへファイルを転送する方法はFTPに限られるため、サイト運営者の方にはぜひFTPソフトの導入を検討してみてください。
最後に、FTPに関する本記事の内容をまとめます。
- インターネット通信上では、FTPコマンドを使ってファイルの転送を行える。
- FTPソフトはコマンドを知らなくても、視覚的にファイルのアップロードや権限の変更が可能。
- Webサーバーではなく、FTPコマンド操作が可能な、FTPサーバーを介しています。
- FTP通信は安全性が低いので、セキュリティ対策されたSFTPやFTPS通信方式の利用を推奨。
FTPを上手く活用して、手間の少ないサイト運営を実現してみてくださいね。
ドメインが実質0円(年間最大3,882円お得)になるサーバーセット割特典を展開中です。
最新のキャンペーンはこちらから