FTPサーバ(FTP server)
サービスや機能を提供するコンピュータのことを「サーバ」(server)、そのサービスや機能を利用するコンピュータのことを「クライアント」(client)といいます。
FTP(英:File Transfer Protocol)とは、ネットワーク上にあるサーバとクライアント間でファイル転送を行うプロトコルであり、FTPサーバは、このFTPを使いクライアントにファイルを提供する側のコンピュータのことです。
FTPには主に「ファイルダウンロード」と「ファイルアップロード」の2つの用途があります。
ファイルダウンロード
FTPサーバが管理しているファイルを、利用者のコンピュータ(FTPクライアント)に転送することをファイルダウンロードといいます。
利用者のコンピュータ(FTPクライアント)から、FTPクライアントソフトを使いサーバに接続し、ファイルのダウンロードを行います。
ファイルアップロード
利用者のコンピュータ(FTPクライアント)にあるファイルを、FTPサーバに転送することをファイルアップロードといいます。
利用者のコンピュータ(FTPクライアント)から、FTPクライアントソフトを使いサーバに接続し、ファイルのアップロードを行います。
FTP通信の暗号化
ファイル転送プロトコルであるFTPは、通信内容を暗号化しません。そのため、通信内容を盗聴すれば簡単に内容を見ることができます。
この問題を解決するために、FTPの通信をSSL/TLSにより保護した「FTPS」(File Transfer Protocol over SSL/TLS)や、SSHの仕組みを利用した「SFTP」(SSH File Transfer Protocol)が存在しています。
どちらも通信内容を暗号化する技術であり、FTPの通信内容を暗号化する場合は「FTPS」か「SFTP」を利用します。
上記は「FTPS」で暗号化し、ファイルをアップロードした時のイメージ例です。
平文のファイルを暗号化し、FTPサーバにアップロード、そして暗号化されたファイルを受けたったFTPサーバは復号して平文のファイルを受け取る流れです。
このように「FTPS」や「SFTP」を利用することで、サーバとクライアント間の通信は暗号化されます。