ファイル転送プロトコルとは?FTP・FTPS・SFTP・HTTPSなど特徴比較
目次
ファイルサーバなどとデータをやりとりする際には、ファイル転送プロトコルの種類やそれぞれの特徴を理解しておくことが重要です。例えば、暗号化通信に非対応のFTPは、インターネット経由でファイルを転送する際に大きなリスクを伴います。
一方で、主要なWebブラウザやWebサービスが標準対応しているHTTPSを利用すれば、管理者もユーザーもクラウド上のファイルサーバを安全かつ効率的に活用できます。
本記事では、ファイル転送プロトコルの必要性や種類、安全に活用するための注意点について解説します。暗号化によるデータ保護や既知の脆弱性など、セキュリティ面にも配慮し、最適なファイル転送プロトコルを選択しましょう。
ファイル転送プロトコルとは?必要な理由
ファイル転送プロトコルとは、ネットワーク経由でファイルを転送する際の通信規約(プロトコル)です。
ファイルを転送する際、データは「パケット」という単位に分解されます。このとき、データの分解や復元の方法をあらかじめ取り決めておくことが必要です。ネットワークに参加するデバイスが守るべきルールを定め、共通のルールに従って通信することで、LANやインターネットなどを介して適切にファイルを転送できます。
ファイルをWebサーバにアップロードする際にも、Webブラウザを通じてサーバ内のコンテンツにアクセスする際にも、何らかのファイル転送プロトコルを適用することが必要です。
【関連記事:【保存版】ネットワーク時代の今!ネットワークの基礎を徹底解説】
主なファイル転送プロトコルの種類
ファイル転送プロトコルは多種多様で、用途によって使い分けがあります。例えば、1970年代から使われているFTPや、FTPにSSL/TLS暗号化を組み合わせたFTPS、SSHによる暗号化を行うSCPやSFTPなどです。WindowsネットワークではRDPやSMBを利用する機会も多いでしょう。WebページでおなじみのHTTPやHTTPSも、ファイル転送のルールを定めています。
FTP(File Transfer Protocol)
FTP(File Transfer Protocol)は、FTPサーバとFTPクライアントという2種類のソフトウェアを用い、1対1のコンピュータ間で大量のデータを効率的に送受信するためのプロトコルです。インターネット黎明期から広く使われているファイル転送プロトコルですが、設計が古く、通信内容の暗号化をサポートしないなどセキュリティ面の問題点もあります。
ユーザー名・パスワードやファイルの内容を平文のまま送受信するため、ネットワーク盗聴に弱く、インターネット経由での利用には推奨されません。このため暗号化をサポートするFTPSなど後継プロトコルを利用するのが一般的です。
FTPS(FTP over SSL/TLS)
FTPS(FTP over SSL/TLS)は、SSL/TLSによる暗号化を組み合わせてFTPによるデータ通信を行い、FTPの弱点であるセキュリティ面のリスクを軽減するプロトコルです。デジタル証明書(公開鍵証明書)によるサーバ認証や共通鍵暗号による通信の暗号化により、ユーザー名・パスワードやファイルの内容を全て暗号化し、他の機器によるなりすましやデータ改ざんを防止できます。
FTPSにおける暗号化の方式(モード)は以下2種類があります。
- Implicit(暗黙的な)モード:FTPサーバに接続した直後から暗号化された通信を開始するモード
- Explicit(明示的な)モード:FTPサーバに接続した後、FTPクライアント側でAUTHコマンドを実行してから暗号化された通信を開始するモード
モードによって使用するポート番号は異なるため、モードを変更する場合はFTPサーバのポート番号も変更する必要があります。
SCP(Secure Copy Protocol)
SCP(Secure Copy Protocol)は、SSH(Secure Shell)を利用して通信データを暗号化する、安全性の高いファイル転送プロトコルです。
SSHは、ネットワーク経由でコンピュータを安全に遠隔操作するためのプロトコルであり、公開鍵暗号と共通鍵暗号を組み合わせて、SSHクライアントとSSHサーバ間の通信内容を全て暗号化します。
SCPは、このSSHの機能を用いたファイル転送方式で、UNIX系OSの「cp」や「rcp」コマンドと同様のシンプルな書式で操作できます。これにより、簡潔なコマンドで安全なファイル転送が可能となります。
SFTP(SSH File Transfer Protocol)
SFTP(SSH File Transfer Protocol)もSCPと同様に、SSHを利用して通信データを暗号化する、セキュアなファイル転送プロトコルです。SSH上で「sftp」コマンドを発行して利用でき、コマンド体系はFTPに似ています。
SCPと比較されることの多いプロトコルですが、SFTPはSCPより多機能で、リモートでのファイル・ディレクトリの管理や名前の変更などができます。SFTPは中断された転送を再開できることも利点です。SCPは転送速度に優れますが、あくまでファイル転送に特化したプロトコルです。
RDP(Remote Desktop Protocol)
Microsoft社が開発したRDP(Remote Desktop Protocol)は、画面表示などの情報を遠隔のデバイスに転送し、リモートデスクトップ機能を提供するプロトコルです。Windows PC間などでリモートデスクトップ接続を行う際には、OSに標準搭載されたクライアント・サーバ機能を利用でき、別途ソフトウェアのインストールは不要です。
RDPでは、OSのクリップボード機能を用いてコピー&ペーストによるファイル転送が可能で、任意のデバイス間で手軽にファイルを共有できます。また、標準で通信データのSSL/TLS暗号化にも対応しています。ただし、標準ポート(3389番)で接続待機するため、ポートスキャンや不正アクセスの侵入口となるリスクも存在します。利便性は高い一方で、ポートの変更やVPNの利用、ファイアウォールによる接続元IPアドレスの制限など、適切なセキュリティ対策が不可欠です。
SMB(Server Message Block)
SMB(Server Message Block)はMicrosoftが開発したファイル共有プロトコルで、「Server Message Block」の略称です。Windowsネットワークの根幹に当たるプロトコルで、ローカルネットワーク(オフィスや工場などの事業所・学校・家庭などで使用されるもの)上のファイル・プリンター・シリアルポートなどを、Windows PC間で共有する機能を提供します。mac OSやLinuxもSMBを通じてWindowsネットワークに参加でき、NAS(Network-Attached Storage)を活用したファイル共有などもスムーズに行えます。
規格の改良が重ねられセキュリティ機能は強化されているものの、SMBの脆弱性を狙った「WannaCry」などのサイバー攻撃が猛威を振るった経緯もあり、セキュリティを重視した運用が求められます。
HTTP(HyperText Transfer Protocol)
HTTP(HyperText Transfer Protocol)は、WebサーバとWebクライアントの間でデータを転送するためのプロトコルです。WebブラウザからWebページやクラウドサービスへアクセスする際など、広く一般に利用されています。FTPやSSHなどとは異なり、クライアント・サーバで1対1の接続設定が不要で、汎用的なアプリからデータの送受信が可能です。
HTTPには以下3つのバージョンがあり、Webサービスによって対応状況が異なります。
- HTTP/1.1:1997年導入。表示速度の遅延などの課題あり
- HTTP/2:2015年導入。Googleの「SPDY」を改良し、性能とセキュリティが向上
- HTTP/3:2022年導入。Googleの「QUIC」を改良し、高速レスポンスとTLS 1.3による暗号化通信が特徴
HTTPS(HyperText Transfer Protocol over SSL/TLS)
HTTPS(HyperText Transfer Protocol over SSL/TLS)は、HTTPにSSL/TLSによる暗号化を組み合わせた、インターネット通信における主流の転送プロトコルです。「https://」で始まるWebページは暗号化されており、ブラウザ上でもHTTPS通信であることを確認できます。
TLS(Transport Layer Security)は、SSL(Secure Sockets Layer)の後継プロトコルであり、改訂を重ねながら各種Webサービスやブラウザでの対応が進められています。
- SSL:1995年までにSSL 3.0まで登場。深刻な脆弱性のため現在は使用不可
- TLS 1.0/1.1:セキュリティリスクが指摘され、2021年以降は非推奨
- TLS 1.2/1.3:どちらかの使用が推奨され、TLS 1.3は性能と安全性がさらに向上
例えば、コンテンツクラウド「Box」ではTLS 1.3を標準プロトコルとして採用しており、非対応のWebブラウザではTLS 1.2が利用されます。
ファイル転送プロトコルを安全に活用するための注意点
単一のオフィス内に構築した社内LANなど、ローカルネットワーク内のみでファイル転送を行う場合には、暗号化ができないFTPの利用も選択肢となります。ただし、インターネットを経由してファイルを転送する場合には、TLS 1.2やTLS 1.3を用いた通信データの暗号化が必須です。さらに、ルーターやVPN装置を通じて社内LANに不正アクセスされる可能性もあるため、LAN内でのファイル転送にも注意が必要です。
ネットワーク盗聴を防止する暗号化に加え、第三者によるなりすましを防ぐ認証システムも重要です。不正アクセスによるファイル改ざんを防止するアクセス権限の設定と併せて、多層的なセキュリティ施策を講じることで、ファイルを安全に転送・管理できます。
安全なファイル転送・管理のプラットフォームには「Box」が最適
ビジネスシーンにおいて、ファイル転送が必要になる場面はさまざまです。ファイルの集中的な管理と安全な共有を目的とするなら、「どのプラットフォームを活用するか」から検討する必要があります。
容量無制限のコンテンツクラウド「Box」は、あらゆるファイルを安全に一元管理するニーズに最適です。ユーザーはWebブラウザや専用アプリから、簡単な操作でファイルの転送や共同編集ができます。管理者はSSO認証や7段階のアクセス権限設定など豊富なセキュリティ機能を活用して、安全なコンテンツ管理のプラットフォームを維持できます。
オプション機能の「Box Shield」を活用すると、FTPを介したダウンロードを無効にするなど、Box内のコンテンツについて、より安全なアクセスポリシーを設定・適用することも可能です。イッツコムなら、Boxの運用中の日本語サポートはもちろん、導入時の安全なデータ移行にも対応できます。
【関連記事:クラウドストレージ「Box」の魅力は?使い方やメリットを徹底解説】
まとめ
ファイル転送プロトコルは種類によってセキュリティ規格などが異なります。FTPは暗号化に非対応のため、インターネット経由のファイル転送には、FTPSやSFTPなどを適用することが必須です。これらはクライアントとサーバで1対1の通信設定を行いますが、HTTPSは一般的なWebブラウザなどを通じて、多数のクライアントとセキュアなファイル転送ができます。
クラウドストレージは基本的にHTTPS通信を行うため、ユーザーにとっても管理者にとっても利便性の高いファイルサーバとして活用できます。Boxであれば、多層的なセキュリティ機能を直感的に利用でき、安全かつ効率的なコンテンツ管理がかないます。
Boxの導入と有効活用をお考えなら、運用設計からカスタマーサクセスまできめ細やかにサポートできるイッツコムにご相談ください。