mirror of
https://github.com/GNS3/gns3-server.git
synced 2025-01-30 21:03:49 +02:00
Added server.py ssl mode dependant on cert existence
This commit is contained in:
parent
bcf0aae531
commit
a95cc678e9
@ -47,6 +47,7 @@ fail_if_error() {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
mkdir -p $DST_DIR
|
mkdir -p $DST_DIR
|
||||||
fail_if_error $?
|
fail_if_error $?
|
||||||
cd $DST_DIR
|
cd $DST_DIR
|
||||||
|
@ -33,6 +33,7 @@ import tornado.ioloop
|
|||||||
import tornado.web
|
import tornado.web
|
||||||
import tornado.autoreload
|
import tornado.autoreload
|
||||||
import pkg_resources
|
import pkg_resources
|
||||||
|
from os.path import expanduser
|
||||||
|
|
||||||
from pkg_resources import parse_version
|
from pkg_resources import parse_version
|
||||||
from .config import Config
|
from .config import Config
|
||||||
@ -136,6 +137,24 @@ class Server(object):
|
|||||||
JSONRPCWebSocket.register_destination(destination, instance.name)
|
JSONRPCWebSocket.register_destination(destination, instance.name)
|
||||||
instance.start() # starts the new process
|
instance.start() # starts the new process
|
||||||
|
|
||||||
|
|
||||||
|
def _get_cert_info(self):
|
||||||
|
"""
|
||||||
|
Finds the cert and key file needed for SSL
|
||||||
|
"""
|
||||||
|
|
||||||
|
home = expanduser("~")
|
||||||
|
ssl_dir = "%s/.conf/GNS3Certs/" % (home)
|
||||||
|
log.debug("Looking for SSL certs in: %s" % (ssl_dir))
|
||||||
|
|
||||||
|
keyfile = "%s/gns3server.localdomain.com.key" % (ssl_dir)
|
||||||
|
certfile = "%s/gns3server.localdomain.com.crt" % (ssl_dir)
|
||||||
|
|
||||||
|
if os.path.isfile(keyfile) and os.path.isfile(certfile):
|
||||||
|
return { "certfile" : certfile,
|
||||||
|
"keyfile" : keyfile,
|
||||||
|
}
|
||||||
|
|
||||||
def run(self):
|
def run(self):
|
||||||
"""
|
"""
|
||||||
Starts the Tornado web server and ZeroMQ server.
|
Starts the Tornado web server and ZeroMQ server.
|
||||||
@ -160,12 +179,11 @@ class Server(object):
|
|||||||
zmq.zmq_version()))
|
zmq.zmq_version()))
|
||||||
kwargs = {"address": self._host}
|
kwargs = {"address": self._host}
|
||||||
|
|
||||||
ssl_options={
|
ssl_options = self._get_cert_info()
|
||||||
"certfile": "/home/michaelgale/nas/workspace/gns3-server/gns3server/certs/gns3server.localdomain.com.crt",
|
|
||||||
"keyfile": "/home/michaelgale/nas/workspace/gns3-server/gns3server/certs/gns3server.localdomain.com.key",
|
|
||||||
}
|
|
||||||
|
|
||||||
kwargs['ssl_options'] = ssl_options
|
if ssl_options:
|
||||||
|
log.info("Certs found - starting in SSL mode")
|
||||||
|
kwargs['ssl_options'] = ssl_options
|
||||||
|
|
||||||
if parse_version(tornado.version) >= parse_version("3.1"):
|
if parse_version(tornado.version) >= parse_version("3.1"):
|
||||||
kwargs["max_buffer_size"] = 524288000 # 500 MB file upload limit
|
kwargs["max_buffer_size"] = 524288000 # 500 MB file upload limit
|
||||||
|
Loading…
Reference in New Issue
Block a user