Note:This Article is intended for:
- Normal users who need FTP clients, to upload files, & folders to servers through FTP/ SFTP/ FTPS
- Developers and Webmasters who require FTP clients and FTP file browsers
What is FTP client?!
FTP client is an application that uses FTP (File Transfer Protocol) to transfer files from local machine to remote servers and vice versa. FTP stands for File Transfer Protocol, which is a protocol for transferring files. FTP clients come with a set of features aiming to provide the end-user with an easy tool to transfer, & manage files.
There are many FTP clients out there, you can find closed-source proprietary software, and open source ones, We have been using open source ones since the early 2000s, and we found most many of them are features-rich, very similar to closed-source proprietary solutions.
What do we have here!
We have listed several enterprise-grade open source FTP clients, including clients which support multi-platforms (Windows, Linux, macOS), platform-specific clients, and web-based clients. The aim of this list is to provide a strongly recommended FTP clients that work.
How did we choose?
We base our recommendation on our daily use, We have used & tried +25 FTP clients for Linux, Windows, macOS, including desktop clients, web clients, Java-based cross-platform FTP clients, to compare and choose the best that worked for us.
Best Free, Open source FTP clients for Windows, Linux, macOS, & The Cloud
FileZilla is an open source FTP client, that works for Windows, macOS, & Linux (Debian, Ubuntu, LinuxMint, Fedora,...). It is our top pick in this recommendation list, as we have used it over the years while we are shifting from a platform or a distro to another.
FileZilla is fairly easy to use, as it also comes with powerful features, to meet the demands of experienced and inexperienced users, normal users or advanced users with ninja coding skills.
FileZilla supports FTP, SFTP (SSH File Transfer Protocol), Stroj (Decentralized Cloud Storage). It also supports connection over proxy and Active/ Passive transfer modes.
- Works on Windows, Linux, macOS
- Smooth performance
- Multi-site support
- Multi-protocol support
- Multi-site manager
- Multi-protocol support
- Quick connection support
- Multi-tab/ projects
- Multiple connections
- Settings manager
- Accounts import/ export
- Settings import/ export
- Customizable User-Interface (UI)
- Advanced File Search
- Bookmarks manager
- Transfer manager with queue control
- Network configuration wizard
- Master password
- File/ Folder permission manager
- Directory comparison
- File/ Folder search
- Connection history with quick access
- Real-time transfer monitoring
- File transfer indicator with ETA
- Multi-lingual support
- UI customization
Recommended for: Normal users, Experienced users, & Developers
2- WinSCP: FTP client for Windows
WinSCP is an open source free SFTP client, FTP client, WebDAV client, S3 client and SCP client for Windows. Its main function is file transfer between a local and a remote computer. Beyond this, WinSCP offers scripting and basic file manager functionality.
- Supports FTP/ SFTP
- WebDAV Client
- S3 Client
- SSH support
- Portable app support
- Better integration with Windows, PuTTY SSH client, FileZilla, Password managers.
- Simple dual-pane UI
- Scripting and task automation
- Advanced queue control
- Multi-lingual support
- Command-line interface
- Integrated text editor
- Directory synchronization
- Shares site settings with PuTTY
- Drag & Drop support
- Site settings/ data manager
Recommended for: Windows users with any level of experience.
3 Sprut: Web-based FTP and File Manager
Sprut is a web-based FTP client that comes with fancy UI, rich set of features that ease the file management, provide advanced search tools with the support of full-text search, and allows handling compressed & archived files.
Sprut comes with a dual-pane view, that displays remote and local servers together, allowing the user to compare, drag-drop files. It comes with tabbed user-interface that is useful when opening different projects at once.
Sprut is fancy but requires certain developer skills to install, with enough knowledge and basic experience with Docker. It requires at least 1.5GB disk space to build a usable production-ready install. It's built with Python.
- Powerful advanced file search
- Advanced text search
- Archive and Compressed files support
- IP Block support
- File/ Folder size analyzer
- Two-panel interface(Dual-pane Interface)
- Tabbed interface
- Code editor with Syntax highlighting
- Advanced file/ folder search
- Shortcut/ hotkeys support
- Images viewer
- Drag & Drop support
- Requires development skills to install, build, and maintain
Recommended for: Developers, companies.
LFTP is a simple yet powerful command-line FTP client. It works on Linux, macOS. If you like command-line programs LFTP is for you. It has a very long list of features.
LFTP supports FTP, HTTP, with or without proxy. SFTP, BitTorrent protocol, Fish protocol, and SOCKS. It received update and bug fixes as the code is maintained by the core developer (Alexander V. Lukyanov).
- Multi-protocols support
- IPv6 support in both FTP and HTTP.
- Command history support
- Multi-connection support
- Job queuing
- Scheduled jobs
- File listing cache
- Command-line file browsing support
- Transfer status
- Conditional commands depending on the exit status of the previous one.
Recommended for: Advanced users, and developers
FireFTP is a cross-platform Mozilla Firefox add-on (extension), that works for years for many developers who use multi-platforms in their daily life. It supports FTP/ SFTP, provides customizable dual-pane tab within Firefox, that access files on the desktop, with simple file drag and drops, it uploads files to the remote servers.
Unfortunately, Mozilla Firefox has dropped support for FireFTP among many other plugins & add-ons, However, Waterfox is a Mozilla Firefox-based browser that supports legacy plugins & extensions such as FireFTP, FireFTP provides seamless integration with Waterfox.
FireFTP developer has released another useful add-on: FireSSH which turns your browser into a powerful SSH client. It is currently not supported at Mozilla Firefox but works smoothly with Waterfox.
- Easy to install and use
- Works smoothly on Windows, Linux, macOS
- Supports SSL/TLS/SFTP
- Multi-lingual: Supports more than 20 languages.
- Works with Waterfox
- Dual-pane view
- Directory Comparison
- Accounts manager with Import/ Export accounts
- Drag & Drop support
- File Comparison
- Integrity Checks of transfers (XMD5, XSHA1)
- Timestamp Synchronization
- Proxy support
- File & Folder permissions manager
- File & Folder searching
- Remote Editing
- FXP support
- Automating reconnection
- Seamless queue control
- Thumbnail viewer
- CHMOD manager
- Generate hashes of files (MD5, various SHA's)
- File Compression support
Recommended for: Experienced users & Developers.
FTPBox is an open-source free FTP client. It's built to provide an easy FTP-based file synchronization tool for normal users. It offers a desktop client for Windows and a Web-based client that allows the user to access his files from any computer anywhere.
FTPBox uses SFTP (SSH FTP) and FTPS (FTP over SSL) by default to provide security for file transfers.
FTPBox offers installable Windows packages that support many Windows versions starting from Windows XP, Vista, 7, 8, & 10. It also provides a portable version that can work from USB sticks. Currently, FTPBox does not provide Linux or macOS clients.
FTPBox is released as an open-source program under GPL.
- Desktop version
- Portable package
- Provides File Syncing between computers
- Built with C#
- offers translation to about 33 languages
Recommended for: Windows users.
FileStash is a popular project among developers especially NodeJS & React developers, as it provides a powerful open source enterprise-aware web app. It got > 1400 stars and was forked more than 80 times.
- Multi-protocol support
- Fast & lightweight
- Comes with support of automatic SSL.
- Mobile friendly with responsive design
- Supports advanced file search
- Full-text search for text files
- Connects to Google Drive, Dropbox, & Minio.
- Provides collaboration for multiple users.
- Extensible through plugins
- Multi-protocol support: FTP, SFTP, WebDAV, Git, S3, LDAP, Cadav, MySQL and Backblaze
- Powerful file management features
- Advanced file/ folder search support
- Drag/ Drop support
- Fancy Interface
- Supports cloud storage: Dropbox, Google Drive, S3, Git
- User Collaboration
- Photo viewer & Photo gallery
- Image resizing
- Image and file sharing support
- Multimedia viewer/ Player (Audio/ Video)
- Full-Text Search
- Automatic SSL
- Database plugins/ browser
- Shortcuts support
Recommended for: Experienced users and Developers
BareFTP is an FTP desktop client for Linux, It has seamless integration with Gnome desktop environment. It comes with a long list of features that makes it preferred by some Linux users. Though BareFTP is built with C#/ Mono Framework, It uses the GTK library and targets Gnome desktops.
BareFTP is stable and usable FTP client, however, It is not actively developed or maintained as the core developer "Christian Eide" announced in the project's page. It didn't get updates since 2016.
- Linux & Unix systems (Ubuntu, Debian, Fedora, RedHat, MXLinux
- Gnome-desktop compatible
- FTP, FTP over SSL/TLS (FTPS) and SSH File Transfer Protocol (SFTP).
- Translated to several languages (German, Greek, Spanish, French, Russian, Japanese, Norwegian, Polish, Hungarian, Catalan, & Italian)
- Uses Gnome keyring to securely save passwords
- Queue management
- Multiple simultaneous transfers
- Multiple protocol support FTP, FTPS (FTP over SSL/TLS), SFTP (SSH File Transfer Protocol)
- Active and Passive mode (FTP)
- Supports distributed PASV (PRET)
- Queue resume and append
- Multithreading/ Multi-tasking You can continue browsing while the transfer is in progress
- Multiple simultaneous file transfers
- Bookmarking manager
- Secure password storage using Gnome Keyring
- Drag and drop
- A native GTK/GNOME look and feel (still needs some more love..)
- Secure passwords storage using Gnome Keyring
Recommended for: Linux users (Gnome desktop)
9-Zelotypisti FTP PHP
Zelotypisti is a lightweight open-source FTP client with web-based, graphical and text options, it's built with PHP. Despite its old style graphics, its functional drag-n-drop install the web app, that comes with < 100kb in a compressed file.
We would recommend it because we have used it several times, and it has proven to be useful in our work.
- Text editor
- Easy to install
- Translated to Nederlands, Français, Deutsch
- Code editor
- Simple UI
- Different styles
- Simple server connections
- Supports multiple connections at the same time
- Icons associated with file extensions
- File/ Folder browser
- Code/ Text editors
- File management: Rename, Delete, Copy, Move
- Md5sum viewer for files
- File upload with graphical progress indicator
- Supports pause/ resume per upload
- File permission management
- File Linking
Recommended for: Web developers
Qusly is a new FTP client for Windows, macOS, & Linux Desktops, It's built with React/ NodeJS and uses Electron to built multi-platform packages. Qusly supports FTP, FTPS (FTP over SSL), & SFTP (SSH File Transfer Protocol).
Qusly is using a powerful FTP NodeJS library built by the same developer Qusly-Core, An API wrapper around ssh2 and FTP library for building FTP/FTPS/SFTP clients.
Qusly has very clean, beautiful UI (User-Interface), packed with tabbed windows that support multiple projects at once. It uses nice icons and desktop-alike file-browser. It supports drag/ drop.
Qusly is still in active development, It still lakes several features to compete like advanced settings, import/ export settings, automation, queue management, and better security features. Hopefully, the developer will enrich it with more features in the incoming releases.
- Works smoothly on Linux (Ubuntu), macOS, Windows.
- Clean UI
- Supports FTP/ SFTP/ FTPS
- Sites manager
- File explorer
- Multiple projects support
Recommended for: Developers who would like to follow up with active development
jFtp: Java Network Browser
jFtp: Java Network Browser is an open source cross-platform lightweight program that works as FTP, SSH, SFTP, & SMB client. It's a lightweight program (< 5mb), It comes with 2 versions desktop version that requires Java, and web version that uses Java Web Start to run within the web browser, but it requires adding (http://j-ftp.sourceforge.net/) as an exception to allow the app to run.
jFtp has a dual-pane view, connection manager(s), bookmarks manager, custom views, WebDAV manager, & multi-tab support.
Not all FTP clients are equal, So we have provided our top recommendation of FTP clients we have used over the years on many platforms, but there are more if you use open-source FTP clients and believe it worth to be shared, please drop us a hint @twitter.