

I have a client that serves content out of S3, and the content is provided to them by a 3rd party who only supports ftp pushes.

then mount a bucket into the filesystem where the ftp server is configured to chroot, using s3fs. You can install an FTP/SFTP service (such as proftpd) on a linux server, either in EC2 or in your own data center. There are theoretical and practical reasons why this isn't a perfect solution, but it does work. S3 now offers a fully-managed SFTP Gateway Service for S3 that integrates with IAM and can be administered using aws-cli. NET/ PowerShell interface, if you need to automate the transfers. Or use any free "FTP/SFTP client", that's also an "S3 client", and you do not have setup anything on server-side.

Amazon EC2) and use the server's built-in SFTP server to access the bucket.Īdd your security credentials in a form access-key-id:secret-access-key to /etc/passwd-s3fsĪdd a bucket mounting entry to fstab: /mnt/ fuse.s3fs rw,nosuid,nodev,allow_other 0 0 Just mount the bucket using s3fs file system (or similar) to a Linux server (e.g. The role must have a trust relationship to .įor details, see my guide Setting up an SFTP access to Amazon S3. Permissions of users are governed by an associated AWS role in IAM service (for a quick start, you can use AmazonS3FullAccess policy). In SFTP server page, add a new SFTP user (or users). In your Amazon AWS Console, go to AWS Transfer for SFTP and create a new server.

Or you can just use a (GUI) client that natively supports S3 protocol (what is free).Or you can mount the bucket to a file system on a Linux server and access the files using the SFTP as any other files on the server (which gives you greater control).You can use a native Amazon Managed SFTP service (aka AWS Transfer for SFTP), which is easier to set up.
