サーバにFTP転送しようとした際に、FFFTPでSFTPで繋ごうとしたら対応しておらず、そもそもセキュアなFTP転送にはSFTPとFTPSの2種類があるということを知ったので調べてみました。
ちなみに、FFFTPが対応しているのはFTPSのみ。WinSCPやFileZillaならSFTPもFTPSも両方対応しているので、FFFTPユーザは執着がなければ乗り換えたほうが良さそうです。
セキュアなFTPが出る前はFFFTPがデファクトだったので、特にシニア層のエンジニアには思い入れの多い人もいる(私も含め)と思いますが、セキュリティは避けて通れない時代ですし、SSH使う場面も多いかと思うので積極的に新しいツール使っていきたいですね。
以下、SFTPとFTPSの違いです。
SFTP
SFTPは「SSH File Transfer Protocol」の略で、その名の通りSSHによる暗号化を行ってファイル転送する仕組みです。
使用するポートは22(SSHと同じ)。
WinSCPやFileZillaなど多くのソフトがサポートしていますが、FFFTPはSFTPをサポートしていないので気を付ける必要があります。
クラウドを使っている人などはSSHは馴染みがあるかと思います。SFTPはSSH方式であり、ポートもSSHと同じなので新たにポートを開ける必要もなく、日ごろからSSH使っている人はSFTPが使いやすいでしょう。
FTPS
FTPSは「File Transfer Protocol over SSL/TLS」の略で、SSL/TLSによる暗号化を行ってファイル転送する仕組みです。2つのモードがあり、サーバ接続後に暗号化する「Implicitモード」と最初から暗号化する「Explcitモード」があります。
使用するポートはFTPデータ転送用に989を使い、制御用に990または21を使います。
FTPSはFTPの後継の意味合いが強く、FTPと同様にアスキーモード/バイナリモードでの転送がサポートされており文字コードや改行の変換を転送時に行うことが可能です。
FFFTPやWinSCPやFileZillaなど多くのソフトがサポートしています。
ポートを複数開けないといけないのが注意点ですね(特にFWなどの設定が必要な場合)。
まとめ
平文のFTPを使うことは絶対避けたい(避けるべき)ですが、セキュアなFTPにはSFTPとFTPSの2つの方式がある、ということは知っておきたいですね。
SSHつかってサーバに接続することが多くなっているので、SFTPだけでよい気もしますが、レンタルサーバによってはSSHは上位プランのみで提供している都合からFTPS接続のみとなっている場合もあり、SFTPで繋げられない局面もあるかもしれません。
自前でサーバ構築する場合など、SFTP/FTPS両方許容される場合はSFTPが良さそうです。
コメント