Just a quick note about using the FTPClient from an EC2 instance.  You need to change to passive mode on the client.  To do that, immediately after connecting to the remote FTP server but before logging in, invoke the 
enterLocalPassiveMode() method on the 
FTPClient instance.   This had me confused for a while, which isn't difficult to do and seems to happen often.