Table of Contents
You most certainly know FileZilla FTP Client, arguably one of the best open-source FTP clients out there for Windows, Linux and Mac: we already mentioned it more than once, for example here. Also, if you’re stumbled upon this post, you’ve probably installed it a number of times: your home computer, your laptop, one of more VMWare machines, a number of remotely-hosted VPS and/or physical servers, and so on. Sometimes you wish you could share your personal sites address book, sometimes you’d just need a way to export/import a small number of entries… And maybe also keep them updated too, since you never know the client you’re going to use when you’ll have to change the IP address, the password, the root folder or other connection settings for one or more nodes.
Luckily enough, FileZilla Client can be easily tweaked into using a truly cloud-based, real-time shareable address book instead of relying to a local one. All you need to do is to choose a cloud-based web file storage service such as Dropbox or Google Drive, where you’ll have to create one or more accounts, and change a couple things in your FileZilla local instance accordingly. Let’s see how it works.
Dropbox or GDrive?
The choice is up to you, since there are no differences regarding what we need to do with them. You can also use other similar file storage services such as Sync, Wuala, Tresorit, SpiderOak or anything that will create an auto-sync folder to your Hard Drive. All of these services are good enough, provide some decent local and/or remote encryption and claim to be the best one in terms of either performance, security, reliability, privacy and so on. You know how it works: read the papers, scoop out user reviews, take a look on technical reviews and pick the one that you feel being the best one for you.
Also, if you are concerned about the security aspects of what we’re about to do, I suggest to read the Security Considerations paragraph at the end of the post.
In this example, we’re going to use Google Drive. We won’t tell you how to do that, because you’ll have no problems in doing the required steps:
- Login to the PC where you have the FileZilla FTP Server with the address book you want to share.
- Create a Google account (if you don’t have one already).
- Install the Google Drive client software to create and auto-sync a local file-system folder (if you don’t have one already).
- Inside that same folder, create a subfolder anywhere you like and name it /filezilla/ (or any other name you would like to use).
Once you do that, you have to
Copy FileZilla Configuration Files to the Cloud
By default, FileZilla stores its settings in the user’s home directory which, if you’re using Windows 7 or more, will be something like the following:
If you are on Windows XP or below, you’ll find them here:
C:\Documents and Settings\<YourUserName>\Application Data\FileZilla\
If you are on a Linux-based environment, you should be able to find them here:
Copy all the files that are in that folder to the /filezilla/ shared folder created above, then move to the following step.
IMPORTANT NOTE: If you’re on Linux, do NOT copy the fzdefaults.xml file.
Notice that you don’t have to delete the local copy of these files – they simply won’t be used anymore eventually. You can safely keep them there as an emergency backup: just keep in mind that they obviously won’t be updated anymore.
Make FileZilla use the new Configuration Files
Now that we’ve moved our Configuration Files to our shared folder, we have to make FileZilla aware of it, so it will load them instead of the default local ones.
In order to do that, locate your local FileZilla installation folder, which should be something like the following:
C:\Program Files\FileZilla FTP Client
From there, go to the /docs/ subfolder, where you’ll find a fzdefaults.xml.example file. Copy and paste it to the above FileZilla installation folder, removing the .example suffix, so you’ll have something like that:
Edit the file contents: locate the following line:
<Setting name="Config Location">$SOMEDIR/filezilla/</Setting>
and change it specifying the /filezilla/ shared folder created above, just like the following:
<Setting name="Config Location">\<your_shared_folder_root_path>\filezilla\</Setting>
As soon as you did the above steps, you can launch FileZilla to see the results of your work:
As you can see, you’ll have two root folders: the Predefinited Sites, where you’ll be able to create local entries, and the My Sites, where you’ll find all of your previously local – and now cloud-shared – ones.
Notice that you won’t be able to move your entries between these two root folders using the GUI: if you need to do that you can either delete and re-create them one by one or move the respective entries in the two XML container files:
Local Address Book entries:
C:\Program Files\FileZilla FTP Client\fzdefaults.xml
Shared Address Book entries:
Both files feature a <Servers> root nod, containing one or more <Folder> and/or <Server> elements that you can switch between them at will.
We all know well that what we’re trying to achieve with this post – sharing the same configuration file among different machines – won’t be something that will increase the security level of our home/work network environment: moving access credentials to the Cloud hardly does that, even if we’re relying upon a well-trusted, securely-encrypted framework.
If your FTP servers are full of sensitive and/or business-critical data, you probably shouldn’t think about doing that: that said, we could also go ahead and say that you shouldn’t even be using FileZilla-based FTP/SFTP connections for those scenarios in the first place, as this is not not the proper way to handle these kinds of data. Hacking your Dropbox/GDrive account – assuming you’ll use strong passwords and keep them safe enough – won’t be easier than hacking your beloved 21/22 port(s) anyway.