[Twisted-Python] FTP Proxy

Einar S. Idsø einar.twisted at norsk-esport.no
Mon Nov 7 04:01:54 EST 2011


I need to develop a customised FTP proxy for one of our systems, and
would like to consider Twisted for this project.

The t.p.ftp module seems to have the server and the client more or
less ready to use, so I think I am good to start, but just wanted to
check with you guys if there are any gotchas that I should be aware
of. The system is intended to work as follows:

- Users authenticate directly with the proxy, not the backend-server,
using a Drupal site for authentication (either through some sort of
API-call or by accessing the database directly - to be decided)
- The client-part of the proxy connects with a master-user/password to
one or more backend FTP-servers running in passive mode behind
- The master-user has access to the union of all file and directory
sets that each individual user has access to.
- The root folder presented to the user should contain either all the
available hosts, or a virtualised overview of all main directories on
all the hosts that the user may access.
- Any file access or directory listing will be filtered against an ACL
to allow only certain files and directories to be accessed by the

Is there anything I should be aware of that may be a showstopper or
otherwise overly complicate this project by using t.p.ftp, or am I
good to go?

Will producers/consumers be an appropriate way of transferring data
between the client-part and the server-part of the proxy, and is
t.p.pcp something I should look into?

Any suggestions, especially mentions of/links to similar projects,
would be most helpful and appreciated.

Einar S. Idsř

More information about the Twisted-Python mailing list