Mercurial > hg > orthanc-book
view Sphinx/source/faq/https.rst @ 4:9f07e8abf8c3 dev
getting ready for python virtual env
author | Alain Mazy <alain@mazy.be> |
---|---|
date | Sat, 23 Apr 2016 16:10:28 +0200 |
parents | 901e8961f46e |
children | 114506f51e70 |
line wrap: on
line source
.. highlight:: bash .. _https: HTTPS encryption with Orthanc ============================= It is highly desirable to enable HTTPS (SSL) encryption with Orthanc to protect its REST API, as it provides access to medical information. To this end, you have two possibilites: 1. Put Orthanc behind an enterprise-ready HTTPS server such as :ref:`Apache <apache>` or :ref:`nginx <nginx>`. 2. For simple deployments, use Orthanc :ref:`built-in HTTPS server <https-builtin>`. **You should always favor the first option**. The second option might make sense in the context of an hospital Intranet, i.e. the Orthanc server is not publicly accessible from the Internet. .. _https-builtin: Built-in encryption ------------------- To enable the built-in HTTP server of Orthanc, you need to: 1. Obtain a `X.509 certificate <http://en.wikipedia.org/wiki/X.509>`_ in the `PEM format <http://en.wikipedia.org/wiki/X.509#Certificate_filename_extensions>`_. 2. Prepend this certificate with the content of your private key. 3. Modify the ``SslEnabled`` and ``SslCertificate`` variables in the :ref:`Orthanc configuration file <configuration>`. Here are simple instructions to create a self-signed SSL certificate that is suitable for test environments with the `OpenSSL <http://en.wikipedia.org/wiki/Openssl>`_ command-line tools:: $ openssl req -x509 -nodes -days 365 -newkey rsa:2048 -keyout private.key -out certificate.crt $ cat private.key certificate.crt > certificate.pem Some interesting references about this topic can be found `here <http://devsec.org/info/ssl-cert.html>`__, `here <http://www.akadia.com/services/ssh_test_certificate.html>`__, and `here <http://stackoverflow.com/questions/991758/how-to-get-an-openssl-pem-file-from-key-and-crt-files>`__.