Skip to content
Snippets Groups Projects
Commit 9aeb1445 authored by Niall Sheridan's avatar Niall Sheridan
Browse files

Check that tls cert/key are set if use_tls is true

parent 9e9a7d50
No related branches found
No related tags found
No related merge requests found
......@@ -100,11 +100,11 @@ For any option that takes a file path as a parameter (e.g. SSH signing key, TLS
- A [Vault](https://www.vaultproject.io) path + key starting with `/vault/` e.g. `/vault/secret/cashier/ssh_signing_key`. You should add a [vault](#vault) config as needed.
## server
- `use_tls` : boolean. If this is set then `tls_key` and `tls_cert` are required.
- `use_tls` : boolean. If this is set then either `tls_key` and `tls_cert` are required, or `letsencrypt_servername` is required.
- `tls_key` : string. Path to the TLS key. See the [note](#a-note-on-files) on files above.
- `tls_cert` : string. Path to the TLS cert. See the [note](#a-note-on-files) on files above.
- `letsencrypt_servername`: string. If set will request a certificate from LetsEncrypt. This should match the expected FQDN of the server.
- `letsencrypt_cachedir: string. Directory to cache the LetsEncrypt certificate.
- `letsencrypt_cachedir`: string. Directory to cache the LetsEncrypt certificate.
- `address` : string. IP address to listen on. If unset the server listens on all addresses.
- `port` : int. Port to listen on.
- `user` : string. User to which the server drops privileges to.
......
......@@ -357,6 +357,9 @@ func main() {
}
tlsConfig.GetCertificate = m.GetCertificate
} else {
if conf.Server.TLSCert == "" || conf.Server.TLSKey == "" {
log.Fatal("TLS cert or key not specified in config")
}
tlsConfig.Certificates = make([]tls.Certificate, 1)
tlsConfig.Certificates[0], err = loadCerts(conf.Server.TLSCert, conf.Server.TLSKey)
if err != nil {
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment