Legacy Storage to Object Storage migration guide

Migrating using an intermediary machine

To migrate from the legacy FTP to the new S3-compatible object storage, you can use the Cyberduck CLI (duck) and run a "copy" operation through an intermediary server.

The following command is easy to work with (careful because it could overwrite existing content):

duck --copy ftp://user_xx@push-XX.cdn77.com/www/ s3://<master_access_key>@xx-1.cdn77-storage.com/bucket-name/ --existing compare --retry

This will copy the contents of the FTP “www” directory to the specified CDN77 object storage bucket.

Tmux session keeps the process running on the machine without interruption. To create a session use the following:

tmux new-session -s "name-it"

Various other tools can be used including rclone

Cyberduck non-master keys upload

Without the region master key, you cannot view, upload to, or download from any buckets on the Object storage without specifying the buckets first.

In case of s5cmd, and assuming that you have set up the .aws/credentials authentication file, the working command using user-generated keys would be:

s5cmd --endpoint-url=https://<region>.cdn77-storage.com cp <file> s3://<bucket-name>/<file>

Cyberduck connects to a specific bucket by defining it in the server endpoint as follows:


After connecting to the bucket, regardless of your key permissions, that format only allows reading from the bucket.

There is a functional workaround using Cyberduck Bookmarks. The bookmarks are kept in the top menu bar, in the left part of the bar.

Create a new bookmark, and specify the bucket name in the path. The config should look something like this:

Please note that attempting to connect to https://us-1.cdn77-storage.com/bucket directly through Cyberduck will result in a DNS error.

Once connected, you can freely upload the content on the specified bucket, as long as your keys have set permissions to do so.