FTPS(FTP with TLS/SSL)
- TLS: Transport Layer Security
- SSL: Secure Sockets Layer
(TLS is a newer version of the SSL protocol.)
There are three different methods of establishing FTPS connections:
1) Explicit FTPS (FTPES; AUTH TLS; Explicit SSL)
- The preferred method
... // Connecting on the standard FTP port 21 // hFtp.put_Port(21); // No need to write code because default port is 21. // Establish AUTH TLS hFtp.put_AuthTls(TRUE); // Do not set SSL property which is for establishing an implicit SSL connection. hFtp.put_Ssl(FALSE); hFtp.Connect();
2) Implicit FTPS (Implicit SSL)
- Connecting on port 990
- An older and no longer encouraged method of establishing FTPS. But it's still somewhat common.
... // Connecting on port 990 hFtp.put_Port(990); // We don't want AUTH SSL hFtp.put_AuthTls(FALSE); // We want implicit SSL hFtp.put_Ssl(TRUE); hFtp.Connect();
3) AUTH SSL
- No longer encouraged
Plain FTP is insecure.