「マイクロソフト系技術情報 Wiki」は、「Open棟梁Project」,「OSSコンソーシアム .NET開発基盤部会」によって運営されています。
目次  †
概要  †
- インターネット初期の頃から存在するプロトコル
 
- 任意のホスト間のファイル転送を行うことが可能
 
- 通常は接続したクライアントとサーバ(FTPサーバ)間の転送に利用される。
 
モード  †
以下の2つのモードがある。
アクティブ  †
inboundを受け入れないF/Wと相性が悪く、最近は使用されていない。
- クライアント → サーバ
クライアントがサーバへ待ち受けIPアドレスとポート番号を通知 
- サーバがクライアントから通知された
IPアドレスのポート番号へコネクションを確立しに行く。 
- ポート番号が毎回異なるので、ファイアウォール、NAPTを使った環境では、
場合によってはうまく接続できないこともある。 この場合はパッシブモードを用いる。 
パッシブ  †
こちらも、イントラ → クラウド環境での接続では、
サーバー側のNAPTと相性が悪くサーバー側に設定が必要になる。
- クライアント → サーバ
サーバがクライアントへ待ち受けポート番号を通知する。 
- サーバ → クライアント
待ち受けポート番号の通知を受けたクライアントがサーバにコネクションを確立しに行く。 
セキュアなFTP  †
FTPは、セキュア(安全)なプロトコルとして設計されていないため、
インターネット回線を経由するケースなど、FTPS、SFTPが利用されるようになった。
FTPS  †
概要  †
- FTPで送受信するデータをTLSまたはSSLで暗号化する通信プロトコル。
 
- Well-known Portは、990/tcp(IISのFTPSは、port 21をFTPと共有)。
 
- RFC 2228, 4217 で標準化されている。
 
モード  †
- Explicitモード
- STARTTLS(平文の通信プロトコルを暗号化通信に拡張する方法)
 
- 認証コマンド実行後に暗号化通信を開始する。
 
- 認証コマンドを実行しなければ通常のFTPとして機能する。
 
 
- Implicitモード
- サーバ接続開始時点から暗号化通信を開始する。
 
- クライアントはサーバが採用している暗号化プロトコルに
適合したFTPSクライアントソフトを使用する必要がある。 
- RFC 4217ドラフトは削除されており、現在、正式なRFCとして掲載されていない。
 
 
SFTP  †
- Secure Shell(SSH)上でSFTPコマンドを実行してファイル転送する。
 
- ただし、SFTPコマンドはFTPコマンドとはまったく別物。
 
FTPS vs SFTP  †
FTPS  †
メリット  †
- ASCII/BINARY モードのサポート
 
- フォルダ単位での転送
 
デメリット  †
サーバ側でSSL証明書の購入コストが発生
※ ワイルドカード証明書でWebサイトと共通可能。
SFTP  †
メリット  †
デメリット  †
クライアント・ツール  †
FFFTP  †
- 日本製のFTPクライアント
 
- FTPSなどのサポートも加えられるなどメンテも続いていた。
 
- しかし、WinSCPの隆盛に従い、二代目開発者氏曰く、
最終バージョン2.00のリリースで開発の終了を検討しているもよう。 
FileZilla?  †
成果物は、クライアントとサーバーの両方がある。
- クライアント
- Windows、Linux、macOS
 
- FTP、SFTP、FTPS(FTP over SSL/TLS)
 
 
- サーバー
- FTPと FTP over SSL/TLS をサポート
 
- クライアントと異なり、Windowsだけサポート。
 
 
WinSCP  †
- オープンソースで開発されている
FTP/SFTP/SCPクライアントソフト。 
参考  †
Tags: :IT国際標準, :インフラストラクチャ, :通信技術, :Windows, :IIS