views:

33

answers:

2
+1  Q: 

OpenSSL question

I'm looking to create an application in Django which will allow for each client to point their domain to my server. At this point, I would want their domain to be accessed via https protocol and have a valid SSL connection. With OpenSSL, more specifically M2Crypto, can I do this right out the gate? Or, do I still need to purchase an SSL cert? Also, if the former is true (can do without purchase), does this mean I need to have a Python-based web server listening on 443 or does this all somehow still work with NGINX, et al?

Any help is appreciated.

+2  A: 

You will need a SSL cert, and let the web server handle the HTTPS.

Ignacio Vazquez-Abrams
@Ignacio - Thanks. Do you have a lot of experience with managing multiple domains' SSL for a single web application? Can you give me any pointers on this?
orokusaki
Not a terrible amount. One IP address per cert/domain is the big one, unless you have a (far more expensive) wildcard cert.
Ignacio Vazquez-Abrams
+1  A: 

You will need a certificate, but there are even free SSL certs now that work in most common browsers.

For very low volume site you could let M2Crypto handle SSL. However, for any public service you should go with a regular server to handle the SSL.

In theory you can serve multiple SSL domains from the same IP address, but this is not supported in older browsers and OSes. See SNI on Wikipedia.

Heikki Toivonen
@Heikki, thanks. Great answer.
orokusaki