FTP is a way to transfer files between hosts over the internet. It is especially helpful as a way to upload or download files to or from a site quickly. FTP clients allow connections from both anonymous and registered users. When the goal is to limit who can perform the file transfer, the log in is often set up to require a username and password, while content that is meant to be distributed widely is often set up with an anonymous FTP login.
FTP is very easy to install on a virtual private server. Most FTP servers have very practical and usable defaults. Since FTP was not conceived as a very secure protocol, for example the login credentials are not encrypted, you can increase the security after installation by disabling anonymous login and chrooting your registered users into their own directories.
There is an large variety of FTP programs that can be installed on a VPS. Two that we find useful are ProFTPD or VSFTPD, and you can see how to download and configure them here, selecting whichever one you prefer.
Once you have an FTP client installed and configured on your virtual server, you can connect to it through the browser or the command line. Access on the command line is fairly simple, with the user required to type in:
The prompt asks for a login and password, if you are doing an anonymous login, type in anonymous, and fill out the password with your email address. Once you connect, you can use the following commands to begin transferring files between machines:
put: copies the file from the local to the remote server
mput: copies multiple files from the local to the remote server
get: retrieves the file from the remote server and downloads it on the local machine
mget: retrieves multiple files from the remote server and downloads them to the local machine
ls: list the files in the current directory
cd: change the directory on the remote server
help: provides a list of available commands
pwd: provides you with the pathname of remote computer’s directory
delete: deletes a file on the remote server
mdelete: deletes multiple files on the remote server
exit: closes the FTP connection
Alternatively, to access a remote ftp server in your browser, type its address into the address bar. It should look like this:
If you prefer to avoid the command line for most of your FTP work, you can download Filezilla, an open-source FTP client and server.
This was just a brief overview of FTP. If you have any further questions about FTP programs or commands, feel free to post your questions in our Q&A Forum, and we’ll be happy to answer them.
Thanks for learning with the DigitalOcean Community. Check out our offerings for compute, storage, networking, and managed databases.
Working on improving health and education, reducing inequality, and spurring economic growth? We'd like to help.