Can Twisted Run SFTP FTPS and HTTPS Server At Once

800 Views Asked by At

I may be too ambitious and what I am trying to accomplish May not even be possible using twisted, but I would like to develop an application using Twisted that does all of the following.

  • Run an SFTP server
  • Run an FTPS server
  • Run an HTTPS server (web UI for transferring files)

All of these protocols will share a single database for user authentication.

I would also like to create a scheduler that can trigger files transfers on some time interval.

This framework seems limitless when reading through the docs on the site, but it's hard for me to dive in and figure out if Twisted is capable of doing all of the above without knowing it inside and out.

I am still going through the examples on their site and it seems like there is a steep learning curve to really grasping how to do these things.

I would appreciate any feedback or pointers on how to accomplish this, if it's possible.

1

There are 1 best solutions below

2
On

Yes, it absolutely can.

From a Twisted perspective, there is a support for pretty much everything you ask for - SFTP, FTPS, HTTPS and scheduling.

When it comes to database integration, I would use standard Python db libraries. I don't think you need anything special from Twisted for that.

Scheduled tasks could be accomplished through either Python scheduler libraries or using Twisted's reactor framework.

Regarding the SFTP, FTPS and HTTPS:

(I suspect that my answer will become obsolete in a year when all these features get incorporated into a main release.)