Make transient clients expire after 1 day, not 365!

This commit is contained in:
Solderpunk 2020-05-17 12:18:09 +02:00
parent d1412377da
commit 13f885c226
1 changed files with 4 additions and 4 deletions

View File

@ -822,7 +822,7 @@ Slow internet connection? Use 'set timeout' to be more patient.""")
def _generate_transient_cert_cert(self): def _generate_transient_cert_cert(self):
certdir = os.path.join(self.config_dir, "transient_certs") certdir = os.path.join(self.config_dir, "transient_certs")
name = str(uuid.uuid4()) name = str(uuid.uuid4())
self._generate_client_cert(certdir, name, prompt=False) self._generate_client_cert(certdir, name, transient=True)
self.active_is_transient = True self.active_is_transient = True
self.transient_certs_created.append(name) self.transient_certs_created.append(name)
@ -836,13 +836,13 @@ Slow internet connection? Use 'set timeout' to be more patient.""")
certdir = os.path.join(self.config_dir, "certs") certdir = os.path.join(self.config_dir, "certs")
self._generate_client_cert(self, certdir, name) self._generate_client_cert(self, certdir, name)
def _generate_client_cert(self, certdir, basename, prompt=True): def _generate_client_cert(self, certdir, basename, transient=False):
if not os.path.exists(certdir): if not os.path.exists(certdir):
os.makedirs(certdir) os.makedirs(certdir)
certfile = os.path.join(certdir, basename+".crt") certfile = os.path.join(certdir, basename+".crt")
keyfile = os.path.join(certdir, basename+".key") keyfile = os.path.join(certdir, basename+".key")
cmd = "openssl req -x509 -newkey rsa:2048 -days 365 -nodes -keyout {} -out {}".format(keyfile, certfile) cmd = "openssl req -x509 -newkey rsa:2048 -days {} -nodes -keyout {} -out {}".format(1 if transient else 365, keyfile, certfile)
if not prompt: if transient:
cmd += " -subj='/CN={}'".format(basename) cmd += " -subj='/CN={}'".format(basename)
os.system(cmd) os.system(cmd)
self._activate_client_cert(certfile, keyfile) self._activate_client_cert(certfile, keyfile)