What a pros and cons of FTP vs SSH for file transfers?
Solution 1:
SSH is much more tolerant of network security devices like firewalls and things that do NAT. FTP is famously tricky to firewall, and generally requires one end-point to have a real IP addresss (i.e. no NAT).
SSH is better at handling NAT. In fact, both ends can be behind NAT which is generally not possible without a lot of crowbar with FTP.
FTP is generally faster because of the dead simple nature of the protocol, though the right versions of SFTP can approach that level of speed.
FTP support is built into most modern browsers, where none I know of have SSH. There may be plugins that shim this, though.
SSH is vastly more secure, which allows user authentication. FTP supports that but does so over plain text in the clear, a fact that contradicts most sane security policies.
The only reason to use FTP is for public-file sharing. Things like linux kernel source repositories.
Solution 2:
FTP is unencrypted. SSH is encrypted. SSH allows remote shell access as well as file transfer, whereas FTP only allows file transfer. Any data transferred via an unencrypted protocol has an unusual risk for eavesdropping, which could compromise both access to your system and the data being transferred.
One of the primary applications of FTP at present time would be for a publicly accessible anonymous file server. I would attribute this partially due to the commonality and simplicity of the protocol. Moreover, an unencrypted transfer has less overhead than an encrypted transfer, which enables quicker transfers.
FTP for user authentication is depreciated and ill-advised, as it risks the authentication data for your system.