def run(self, handler): try: # First try to use the new version from cheroot.ssl.pyopenssl import pyOpenSSLAdapter from cheroot import wsgi server = wsgi.Server((self.host, self.port), handler, request_queue_size=32) except: from cherrypy.wsgiserver.ssl_pyopenssl import pyOpenSSLAdapter from cherrypy import wsgiserver server = wsgiserver.CherryPyWSGIServer((self.host, self.port), handler, request_queue_size=32) self.srv = server # If cert variable is has a valid path, SSL will be used # You can set it to None to disable SSL server.ssl_adapter = pyOpenSSLAdapter(Config.REST_SSL_CERTFILE, Config.REST_SSL_KEYFILE, Config.REST_SSL_CA_CERTS) try: server.start() finally: server.stop()
def run(self, handler): from cheroot import wsgi from cheroot.ssl.pyopenssl import pyOpenSSLAdapter server = wsgi.WSGIServer((self.host, self.port), handler) server.ssl_adapter = pyOpenSSLAdapter(certificate="ucmpcs.org.crt", private_key="ucmpcs.org.key") #try: print "Starting secure web application server using CherryPy..." server.start()
def run(self, handler): from cheroot.wsgi import Server as WSGIServer from cheroot.ssl.pyopenssl import pyOpenSSLAdapter server = WSGIServer((self.host, self.port), handler) server.ssl_adapter = pyOpenSSLAdapter( certificate=SolUtils.AppConfig().get('solserver_certificate'), private_key=SolUtils.AppConfig().get('solserver_private_key'), ) try: server.start() log.info("Server started") finally: server.stop()
SP = Saml2Client(config_file="%s" % CNFBASE) POLICY = service_conf.POLICY add_urls() sign_alg = None digest_alg = None try: sign_alg = service_conf.SIGN_ALG except: pass try: digest_alg = service_conf.DIGEST_ALG except: pass ds.DefaultSignature(sign_alg, digest_alg) SRV = WSGIServer((HOST, PORT), application) _https = "" if service_conf.HTTPS: SRV.ssl_adapter = pyopenssl.pyOpenSSLAdapter(SERVER_CERT, SERVER_KEY, CERT_CHAIN) _https = " using SSL/TLS" logger.info("Server starting") print("SP listening on %s:%s%s" % (HOST, PORT, _https)) try: SRV.start() except KeyboardInterrupt: SRV.stop()
POLICY = service_conf.POLICY add_urls() sign_alg = None digest_alg = None try: sign_alg = service_conf.SIGN_ALG except: pass try: digest_alg = service_conf.DIGEST_ALG except: pass ds.DefaultSignature(sign_alg, digest_alg) SRV = WSGIServer((HOST, PORT), ToBytesMiddleware(application)) _https = "" if service_conf.HTTPS: SRV.ssl_adapter = pyopenssl.pyOpenSSLAdapter( SERVER_CERT, SERVER_KEY, CERT_CHAIN ) _https = " using SSL/TLS" logger.info("Server starting") print("SP listening on %s:%s%s" % (HOST, PORT, _https)) try: SRV.start() except KeyboardInterrupt: SRV.stop()
status = '200 OK' response_headers = [('Content-type', 'text/plain')] start_response(status, response_headers) return [b'Hello world!'] def verify_callback(connection, x509, errnum, errdepth, ok): print("in callback, cert result %d" % (ok)) print("in callback, x509 cert") Utils.print_cert_info(x509.to_cryptography()) return True if __name__ == '__main__': server = CherryPyWSGIServer(('0.0.0.0', 8070), my_crazy_app, server_name='www.cherrypy.example') server.ssl_adapter = pyOpenSSLAdapter(certificate=CERT_PATH, certificate_chain=CERT_CHAIN_PATH, private_key=CERT_PRIVATE_KEY_PATH) server.ssl_adapter.context = SSL.Context(SSL.SSLv23_METHOD) server.ssl_adapter.context.use_certificate_file(CERT_PATH) server.ssl_adapter.context.load_verify_locations(CERT_CHAIN_PATH) server.ssl_adapter.context.use_privatekey_file(CERT_PRIVATE_KEY_PATH) server.ssl_adapter.context.set_verify( SSL.VERIFY_PEER | SSL.VERIFY_FAIL_IF_NO_PEER_CERT, verify_callback) try: server.start() except KeyboardInterrupt: server.stop()