FTPとは、ネットワークのファイルやデータをサーバーに転送したりダウンロードを行なうための通信プロトコルの1つで、File Transfer Protocolの略称です。FTPサーバーとFTPクライアンとという二種類のソフトウェアの間で、接続を確立してファイルを送受信することができます。FTPによって行なわれるファイルの転送は、アカウント名とパスワードによるユーザー認証から始まります。認証を行なうことができたユーザーのみ、それぞれのユーザーに許可された権限や領域を管理でき、FTPのコマンドを用いてファイルのダウンロードやアップロードといった操作を行なう事が出来ますが、アップロードの際にはFTPクライアントソフトが必要です。FTPにはコネクションの確立の方式が二種類あります。クライアント側からサーバー側へ接続を開始して確立し、ユーザー認証に使用されるのが接続用のコネクションですが、データ本体のコネクションは、サーバー側からクライアントの指定したポートへ接続を開始しするアクティブモード(ポートモード)と、制御と同様にクライアント側からの接続を開始するパッシブモードがあります。FTPは古いプロトコルでインターネット初期から存在しているため、セキュリティの脆弱性が数多くあり、通信内容を暗号化せずにユーザー名やパスワードなど認証情報を転送するなどの問題があります。