FileZilla ftp client

Data Traffic

The FileZilla GUI is divided into four vertically tiled areas. The top area shows the log entries, besides displaying the current status and any errors that have occurred. In Explorer mode this is followed by the local and remote directory listings. The program shows files tagged for downloading in a queue at the bottom of the window (Figure 3).

In the local and remote directory tree area, the left panel shows a directory tree, whereas the content of the selected folder is displayed on the right. To copy files or folders, just drag and drop to the target directory. As an alternative, you can drag files and folders to the queue manager at the bottom of the window, where they move from the currently selected folder to the directory tree at the opposite end of the connection. Double-clicking a file achieves the same results. FileZilla supports cross-program drag and drop, for example, from Konqueror to the remote directory, but only from the local machine to the server and not vice versa.

FileZilla processes files and directories from the queue sequentially and independently of the download source. The program does not support changes to the download order, and it lacks a function for pausing individual files in the queue. The queue runs in a separate instance from the ftp browser, and this makes it possible to access other ftp servers while a download is in progress. At the bottom of the program module, you can use the tabs to switch between the successful and failed transfer views. The Transfer Queue tab shows the download queue.

When you relaunch the application, the download is not lost, but it is in a wait state. To continue downloading, right-click an entry and select Process Queue in the context menu. If a download is partially complete, you are prompted to decide how FileZilla should handle this; you can decided to continue, overwrite, rename, or skip.

If you want to perform an action after completing the download, such as quitting FileZilla or sounding an audible warning, right-click the entry in the queue and select Action after processing queue. You can even execute a command that you enter via Enter command…. FileZilla does not currently support FXP.

Miscellaneous

In Edit, the import/export function lets users back up and restore the configuration files. Depending on the selection, FileZilla will either save just the client configuration or will include the server data in filezilla.xml. The file is stored in the user's home directory. The only problem with this is that the program stores the login passwords for the server's bookmarks in the clear, just as it stores them in the ~/.filezilla/sitemanager.xml and ~/.filezilla/recentservers.xml configuration files. Security-conscious users will want to avoid storing passwords for remote ftp hosts in Site Manager.

The file filter function is particularly useful for searches in directories with large numbers of files (View | File Filter…), and it lets you create any number of filters, which you can apply to the directory by clicking. The three-tier mechanism has filter set, filter, and rule layers. In theory, different filter sets let you manager groups of filters. In our lab, I managed to create multiple filter sets, but all of them contained the same rules. A deletion in one set removed the rule from the others.

To create a new filter, click Edit Filter… in the Filter for folder content window. This pops up a window in which you can type a name for the filter after clicking New. The name is then displayed in the selection list. To add rules to a filter, click on Add more, which displays a line with two drop-down menus and a text box. Here you can specify the criteria for the rules and create multiple rules for a filter, such as the minimum size and file extension. In our lab, when I tried to copy filters by pressing Copy, version 3.0.5.2 of the program crashed reproducibly. However, the author posted a bug fix on the CVS just two hours after my bug report, removing the issue in all later versions.

To apply filters to a directory, click on the directory to open it in the FileZilla Browser window. Then select View | File filter to open the Filter for Folder Content dialog and select the filters you want to apply locally or server-side.

The new View | Compare directories function added in version 3.0.5 makes it easier to synchronize local directories with those on the connected server. You can select whether the tool should compare by file size or time stamp. FileZilla highlights differing entries in yellow.

The option of using a previously selected text editor to edit ASCII files on the remote server just like local files is also new. To use it, right-click the file in question and select View/Edit in the drop-down list. This tells the ftp client to copy the file to the local temporary directory and back to the server when stored.

Conclusions

On Linux, FileZilla has just raised the bar for GUI-based ftp clients. The well-organized and mature program offers many useful features, from the independent download queue through highly granular file filters. Plus, unlike many other open source projects, FileZilla has excellent documentation [5].

Of course, nobody is perfect, not even FileZilla. FileZilla saves server passwords in the clear in XML files, which is an unnecessary vulnerability. That said, the maintainers are working hard to remove the project's rough edges. The response time of not even two hours from a bug report to a bug fix on CVS is quite impressive.

Glossar

FTPS

Ftp via SSL. Encrypts the control and data channels of an ftp connection during the transfer process.

FTPES

Ftp via Explicit SSL. With this FTPS variant, control channel encryption has to be triggered explicitly by clear text commands.