本ページはプロモーションが含まれています
ブログ

FTPとFTPSとSFTPの違いを解説

スポンサーリンク

FTPとFTPSとSFTPの接続の違いを解説!

下の方で詳しく説明しておりますが、結局どれを使えばよいのか。
FTP(File Transfer Protocol)は、暗号化されていないので通信データを第三者に見られる可能性があり、できるだけ使用しない。SFTPとFTPSの両方とも利用可能ならSFTPSでの接続を使用し、FTPSしか利用できなければ[明示的(Explicit)なFTP over TLSが必要]で接続するとよいということだと私は理解しました。※ SFTPとFTPSは両方とも通信が暗号化されている。
※ FTPSで接続する場合は接続時に選択が必要になり、その選択で[使用可能なら明示的(Explicit)なFTP over TLSを使用]を選択しますとサーバー側が対応していない場合、暗号化されていなFTPで接続することになるので、もしもの時を考えて基本的には選択しない。
※ 暗黙的(Implicit)FTPS接続は、ちょっと古臭いので一般的には明示的(Explicit)なFTP over TLS接続が使用される。

FTP

暗号化されていない接続で通信内容を第三者にみられる可能性があるためセキュリティ上問題があります。

FTPSとSFTPの違いを解説

FTPS(File Transfer Protocol Secure)とSFTP(SSH File Transfer Protocol)は、どちらもファイル転送に使用されるプロトコルですが、異なるセキュリティ機構を使用しています。以下に、FTPSとSFTPの主な違いを解説します。

セキュリティ

FTPSは、FTPプロトコルを拡張してSSL/TLS(Secure Sockets Layer/Transport Layer Security)による暗号化を行います。FTPSでは、データの転送と認証情報の暗号化が行われ、セキュアな通信が確保されます。

一方、SFTPは、SSHプロトコルを使用してデータを暗号化し、セキュアなファイル転送を提供します。SFTPはSSHセッション内で動作し、データの転送、認証情報の暗号化、パスワードや鍵による認証などが行われます。

ポート番号

FTPSは、通常、TCPポート21を使用します。一方、SFTPはSSHプロトコルを使用しており、通常はTCPポート22を使用します。したがって、ネットワーク環境やファイアウォールの設定に応じて、適切なポートを開放する必要があります。

互換性

FTPSは、FTPプロトコルを拡張しているため、FTPクライアントがFTPSサーバーに接続する際には、専用のFTPS対応クライアントが必要です。一方、SFTPはSSHプロトコルを使用しており、SSHクライアントがSFTPサーバーに接続するために使用されます。

利便性

FTPSは、FTPプロトコルの拡張バージョンであるため、一部のFTPクライアントではFTPSに対応していない場合があります。一方、SFTPはSSHプロトコルを使用しており、SSHクライアントが広く利用されているため、利便性が高いと言えます。

まとめ

FTPSとSFTPは、両方ともセキュアなファイル転送を提供するプロトコルですが、異なるセキュリティ機構を使用しています。FTPSはSSL/TLSを使用し、SFTPはSSHを使用しています。また、ポート番号や互換性、利便性などにも違いがあります。選択するプロトコルは、環境や要件に応じて適切なものを選ぶ必要があります。

明示的(Explicit)」と「暗黙的(Implicit)について

FTPS接続における「明示的(Explicit)」と「暗黙的(Implicit)」とは、SSL/TLSのセッションの確立方法を指します。以下にそれぞれの違いを説明します。

明示的(Explicit)FTPS接続:
明示的なFTPS接続は、通常、FTPの通信ポートであるTCPポート21を使用します。クライアントがFTPサーバーに接続する際、最初は非暗号化の通信が行われます。その後、クライアントとサーバーの間でセキュアな通信を確立するために、STARTTLSコマンドが使用されます。これにより、セッションはSSL/TLSで暗号化され、データの転送と認証情報の安全な送信が行われます。

暗黙的(Implicit)FTPS接続:
暗黙的なFTPS接続は、FTPの通信ポートであるTCPポート21ではなく、通常はTCPポート990を使用します。クライアントがFTPサーバーに接続するとき、最初からセキュアなSSL/TLS接続が確立されます。データの転送と認証情報の暗号化が自動的に行われるため、クライアントとサーバーの間での通信は常に暗号化されます。

まとめると、明示的なFTPS接続では、最初は非暗号化の通信が行われてからSTARTTLSコマンドによりセッションが暗号化されます。一方、暗黙的なFTPS接続では、最初からセキュアなSSL/TLS接続が確立されます。

どちらの接続方法を使用するかは、FTPサーバーの設定や要件によって異なります。一般的には、明示的なFTPS接続がより柔軟で一般的に使用されています。ただし、一部のレガシーシステムでは暗黙的なFTPS接続が必要な場合もあります。FTPクライアントとサーバーの間で接続方式を適切に設定することが重要です。

スポンサーリンク