Meteor + FTP + Python

So I’ve reached a point in my Meteor app where I need to ask for advice before I dive down the rabbit hole.

Here’s the big picture:

User-side

  • User logs into Meteor app with username/password
  • User sees a list of their files that exist on an FTP server
  • User can perform operations on each file (running Python scripts that use the file as input)

Admin-side

  • Admin has cool control panel to create/edit users
  • When admin creates/deletes user, create/delete user FTP home directory

Feels like some pretty heavy stuff. So, my questions are:

  1. Which open-source FTP server should I use? I have experience configuring SSH’s SFTP subsystem.
  2. Authentication. When a user logs into the Meteor app, how will Meteor log the user into the FTP server?
  3. Permissions. When a user performs an operation on a file, will the Python script that uses that file as input have permission to read/write in the users FTP directory? Goods news is I have Meteor & Python talking.

And lastly, my enviornment:

  • Ubuntu
  • Meteor
  • Python 3
  • choice of FTP server
  • everything running on 1 server

Sorry to unload what feels like such a heavy, intertwined mess. To compensate you for your help, I will offer a virtual keg and box of twinkies :slight_smile:

Thanks

Edit:

  • I suppose it would be cool to let the user upload their files through the Meteor app interface instead of using an FTP client. FYI, files are expected to be several GB in size, though.