In this post, learn about different ways by which I have used FTP or file transfer protocol from my Mac for connecting to virtual private servers. For this post, the terms FTP and SFTP will be applied interchangeably. On the date of publishing this post (January 2021) using plain old FTP does not make sense.
Table of Contents
- Refresher: What is FTP?
- Using FTP with Mac
- Advantages of FTP
- Limitations of FTP
- Wrapping it up
Refresher: What is FTP?
FTP, or File Transfer Protocol, has been around for several years.
I first learned about File Transfer Protocol while getting my feet wet in the world of the Internet. This was back in early 2000s, when I was in graduate school. In those days, the most common way of using this file transfer method was through a web browser, most common being Netscape Navigator. It was the default way of either uploading files, or downloading software, including ISOs from distributions from sites such as ibiblio.
Back then, most FTP sites used to be anonymous, that is anyone could access the files. This still might be the case, however, many services eventually began to require the user to log in. FTP has multiple variations, these days with an increasing focus on security. These include Secure File Transfer Protocol (SFTP)or you have FTP over SSH or SSL – latter is known as FTPS. There are many other variations of the above. The standard port for FTP is 21, but you can also define custom ports. I prefer to use the latter option.
Using FTP with a Mac
I use a Macbook pro, and I wrote this post particularly for users like me who prefer to use them.
Almost all of the tools described in this post will be applicable for for Linux as well. or Windows users, the standard application is Putty.
Using ssh from terminal
Let’s move on to terminal based FTP is where it gets interesting: using command line, one can transfer files back and forth from a server. You can use a variety of terminal based applications. While the standard OSX terminal is good enough. I have started using two different terminals: iTerm and Hyper and I will talk about them.
I began learning the basics of sending files to and fro from Mac terminal using this tutorial. There may be several others, some better than the one referenced, but I found this good enough to get started.
sftp username@server_iphow to connect to a remote server using sftp command in a terminal
In order to upload files: Say, I upload a file called local1.txt from my computer to server, and name it as remote1.txt
put /Users/amar/Documents/local1.txt remote1.txt
In order to download a file called remote2 form server,
get remote2.txt local2.txt
You can create directories, rename files, upload multiple files, etc. on the remove server via your terminal. The command line might seem a little overwhelming at first, but once you get used to it, you will have no trouble making it your default choice.
For the more technically inclined, I leave another resource: How to use the command line SSH and SFTP clients
How to connect to server using FTP Clients for Mac
Both have a paid (pro) version, I prefer FileZilla between the two – as a matter of personal choice. I use the Mac version, leaving you with a few screenshots of both clients that show the multiple protocols that are supported. This includes WebDAV, Nextcloud, S3 and OneDrive.
Ironically, I find it to be a little more user friendly than FileZilla. It does come with a payment link when you close the application. Once you pay a one time charge of 10 US dollars, the alert goes away. You do get a license. We have a new tool called the Mountainduck from Cyber drive, which you can connect remote drives on to your Mac finder application on Windows Explorer.
Protocols and services suppored by CyberDuck FTP client for Mac.
Uploading files to server using FileZilla
FileZilla is a popular open source FTP client. The Mac version can be downloaded from here. After extracting the package file, you can drag and drop the executable package to the Applications folder.
Salient Features of Filezilla:
- FTP, FTP over SSL/TLS (FTPS) and SSH File Transfer Protocol (SFTP)
- Cross-platform. Runs on Windows, Linux, *BSD, Mac OS X and more
Using FTP with a Server Management Panel
You can use a few server management panels like appanel, Please, and Hestia cp. You can use a server panel for your own VPS, or virtual private server.
Using FTP with Shared Hosting
The major server panels used by most hosting providers (cPanel, Plesk and and Direct Admin) allow uploading or downloading files from your web hosting menu. You can also use it to download the backups that you have created.
Advantages of FTP
FTP is an old, widely used standard that is easy to use.
Limitations or disadvantages of FTP
Security is often stated as one. And there is a whole discussion on forums like Stack Exchange, as well as Wikipedia.
Alternatives: RClone, WebDav, Apps for cloud storage