For storing data in the cloud — that is, for public-facing data used as part of a website, not your personal documents stored on services such as OneDrive or iCloud Drive — the act of storing content is typically done inside the web application by the end user when uploading content such as pictures or video to a given service. As such, the archive of user-generated content is important, while the individual files are not. For this case, there is no particular need for an administrator to interact with the individual files.
In use cases that fall outside of that model, the best way for a sys admin to upload content to the cloud is to use a more familiar (if, now, slightly outmoded) paradigm of file management — a traditional FTP client that also supports cloud storage services. Of the available options, the open source software package Cyberduck stands out as the obvious choice.
Cyberduck, which is available in over 30 languages for Windows and OS X, supports the traditional FTP standard, as well as SFTP (SSH File Transfer Protocol), WebDAV, Amazon S3, Microsoft Azure, and OpenStack Swift protocols. With OpenStack Swift support, users of Rackspace Cloud, HP Cloud, Internap, and others — as well as hybrid cloud deployments that utilize OpenStack — can connect to their storage objects. As Google Cloud Storage is interoperable with S3 protocols, users of Google's offerings can also connect using Cyberduck.
As part of Cyberduck's support of Amazon S3, users are provided a graphical utility to configure versioning and multi-factor authentication for buckets, as well as the creation of access control lists for finer granularity of permissions for users, and the individual or bulk editing of HTTP headers. Additionally, it provides an interface for setting lifecycle parameters to move data to Amazon Glacier.
Setting up for first use
After installation — Windows users have the option of installing Bonjour, though it isn't required — click Open Connection and using the drop-down, select the protocol or service you wish to configure. On that prompt, copy and paste your credentials for the system you are connecting to, and click Connect. You will be prompted for a password, and the option to store it, from there. For FTP users, an extra warning is generated notifying the user that the password will be sent over plaintext, and asking if they wish to continue. The server that is being used in this session can be bookmarked for future access.
Files can be uploaded and downloaded with a simple drag and drop. Batch uploads of files are placed inside a queue manager, where progress of uploads can be viewed. Attributes can be managed with the Get Info button, and configuring data on traditional webservers for distribution with Amazon CloudFront, Memset Memstore, and Akamai can also be performed with a simple interface. Files can be edited through an external editor, defined by the user, and have revisions uploaded from the temporary stored file.
Focus on security
In addition to cloud connectivity — a feature not found in most programs generally classified as FTP clients — a warranted and welcome focus on security is present in the program. Users are frequently asked if they wish to perform an action when connected to standard FTP networks, as passwords — and all other content in an FTP session — are transmitted without encryption.
The FTP protocol was introduced in 1971, before the adoption of SSL. Like many early protocols, it was not designed with encryption or security in mind. As such, it is not suitable for continued use in production systems today. Despite this, FTP persists as an option available by default on the systems of many hosting providers.
What's your solution?
Do you use Cyberduck for your administrative tasks? If not, what alternative solutions do you employ? Linux users, what is your preferred method of administration? Let us know your thoughts and solution recommendations.
James Sanders is a Tokyo-based programmer and technology journalist. Since 2013, he has been a regular contributor to TechRepublic and Tech Pro Research.