Skip to content
This repository has been archived by the owner on Apr 26, 2024. It is now read-only.

Changing TLS certificate requires server restart #1180

Closed
WGH- opened this issue Oct 25, 2016 · 3 comments
Closed

Changing TLS certificate requires server restart #1180

WGH- opened this issue Oct 25, 2016 · 3 comments

Comments

@WGH-
Copy link
Contributor

WGH- commented Oct 25, 2016

Honestly, I didn't verify it myself, but that's what I could figure out from the code.

The TLS certificate is loaded here:

self.tls_certificate = self.read_tls_certificate(

And then dumped, among other places, here:
x509_certificate_bytes = crypto.dump_certificate(

Assuming config is read once (which also seems true -

config = HomeServerConfig.load_or_generate_config(
), it means that when TLS certificate is updated (which can be relatively often with Let's Encrypt, once per several months), server needs to be restarted.

It would be better if certificate can be reloaded without server restart. Server can be signalled with SIGHUP/SIGUSR1/SIGUSR2, or something.

@jrabbit
Copy link

jrabbit commented Jan 22, 2017

I think this is generalizable also the debian package's systemd unit doesn't have any reload function

@MacLemon
Copy link

Same goes for the FreeBSD rc.d item. Cannot reload certificate and private keys without fully restarting synapse.

@richvdh
Copy link
Member

richvdh commented Feb 12, 2019

You can now reload certs with a SIGHUP

@richvdh richvdh closed this as completed Feb 12, 2019
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
None yet
Projects
None yet
Development

No branches or pull requests

4 participants