Take the 2-minute tour ×
Server Fault is a question and answer site for professional system and network administrators. It's 100% free, no registration required.

I know that explicit "negotiated" FTPS is preferred, because it still uses the standard port 21 with that method but in regards to "implicit" non-negotiated FTPS using a standard port of 990 vs. port 22 (which I have seen some people describe), why is there this difference in a "standard" for the non-negotiated port number?

Note: I also noticed that a FileZilla server won't work properly (when connecting from a FileZilla client) if I configure it to use anything other than the default of port 990.

share|improve this question
    
As a sidenote, I discovered a freeware called "NULL Ftp Server" that has a real nice separation of these concepts. I highly recommend downloading it to anyone who really wants to understand this. –  djangofan Oct 21 '09 at 17:28
    
Thanks for the plug on Null FTP Server. –  Brian R. Bondy Jan 26 '10 at 0:14

4 Answers 4

up vote 22 down vote accepted

SFTP (SSH File Transfer Protocol) is not the same as FTPS (FTP-SSL).

SFTP is intimately related to SSH, and has no relation, except in purpose and name, with FTP.

Contrast with FTPS, which is simply the FTP protocol with SSL.

The main difference is that SFTP only uses one stream, whereas FTPS, like FTP, uses at least two: a control stream, where the commands are issued, and another one for each data transfer.

share|improve this answer
    
are you suggesting sftp uses port 22 in a single channel? i find it interesting that explicit ftps defaults to data on 989 and control on port 990 in the same way ftp uses 20 and 21. –  djangofan Aug 5 '09 at 23:03
14  
I'm not suggesting it, I'm stating it explicitly. –  niXar Aug 5 '09 at 23:32

I think there's a glitch in the question itself:

  • SFTP is a subsystem of SSH, and SSH by default listens on port 22
  • FTPS by default runs on port 990, but that's not related to SFTP: in fact it is FTP over SSL

These are two distinct and completely different protocols.

SFTP (SSH File Transfer Protocol) only needs port 22 and no other port, therefore is very firewall friendly, and highly secure thanks to the encryption layer provided by the SSH connection.

FTPS is highly secure thanks to the encapsulation within a SSL channel, but it requires quite a few open ports to operate (990 for the control channel, 989 for the data channel, and a whole bunch of other ports if you need passive connections) and is therefore much less firewall friendly. But - in general - it tends to be a bit faster than SFTP.

share|improve this answer

See also the wikipedia article on the subject: http://en.wikipedia.org/wiki/Ftps, which links to the article on SFTP.

share|improve this answer

SFTP port recommendations really vary based on the vendor. 22, 1022, etc I have see a bunch of obscure ports...Contact your vendors.

share|improve this answer
2  
SFTP runs on top of SSH, which - by convention - uses the well known port of 22. The well known port, however, is only a convention - there is no way (and indeed no point) in preventing the server from listening on a different port. (i.e. you can run the server on port 63251 and it would still work, as long as the clients are connecting to that port) –  Piskvor Jul 23 '11 at 7:33

Your Answer

 
discard

By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.