[Twisted-Python] Setting up a HTTPS-server
Can anybody tell me how or if Twisted supports HTTPS? I've used M2Crypto in the past ad saw that the latest release also supports secure FTP. I'm not clear on the status of the current FTP-implementation in Twisted, so if anybody would like to shed some light on the current status of HTTPS and secure FTP that would be great. ( Any information on how to implement a simple authenticating FTP server running alongside a HTTP(S)-server would also be cool. ) Regards, Thomas Weholt
On Tue, Jun 24, 2003 at 04:38:01PM +0200, Thomas Weholt ( PRIVAT ) wrote:
Can anybody tell me how or if Twisted supports HTTPS? I've used M2Crypto in the past ad saw that the latest release also supports secure FTP. I'm not clear on the status of the current FTP-implementation in Twisted, so if anybody would like to shed some light on the current status of HTTPS and secure FTP that would be great.
Twisted currently has no support for secure FTP. -Andrew.
On Tue 2003-06-24 09:38, Thomas Weholt \( PRIVAT \) wrote:
Can anybody tell me how or if Twisted supports HTTPS? I've used M2Crypto in the past ad saw that the latest release also supports secure FTP. I'm not clear on the status of the current FTP-implementation in Twisted, so if anybody would like to shed some light on the current status of HTTPS and secure FTP that would be great.
The package I needed to install to get SSL working in twisted was pyOpenSSL. With Debian unstable I used the package 'python2.2-pyopenssl' I was able to set up a HTTPS server running alongside an HTTP server by using some hints in twisted/doc/examples/echoserv_ssl.py Basically what it boiled down to for my use was: [ ... ] class ServerContextFactory: def getContext(self): """Create an SSL context. Similar to twisted's echoserv_ssl example, except the private key and certificate are in separate files.""" ctx = SSL.Context(SSL.SSLv23_METHOD) ctx.use_privatekey_file('serverkey.pem') ctx.use_certificate_file('servercert.pem') return ctx [ ... ] site = twisted.web.server.Site(...) application.listenTCP(8080, site) application.listenSSL(8443, site, ServerContextFactory()) [ ... ] To play around with a dummy private key and certificate I used the following commands: openssl genrsa -out serverkey.pem 2048 openssl req -new -x509 -key serverkey.pem -out servercert.pem -days 1095 Have fun :) -- Matthew R. Scott OMAjA / http://www.omaja.com/
participants (3)
-
Andrew Bennetts
-
Matthew R. Scott
-
Thomas Weholt ( PRIVAT )