feat: rework nginx certificates

This commit is contained in:
Malte Tammena 2023-09-21 16:05:17 +02:00
parent b0a4e07e20
commit ce0c327401
25 changed files with 462 additions and 71 deletions

View file

@ -14,12 +14,13 @@
};
});
mkVirtHost = lib.attrsets.recursiveUpdate {
mkVirtHost = certificateName:
lib.attrsets.recursiveUpdate {
addSSL = true;
listenAddresses = [vpnIPv4 "[${vpnIPv6}]"];
sslTrustedCertificate = pkgs.writeText "ca.crt" (builtins.readFile ../secrets/ca.crt);
sslCertificateKey = sopsPath "nginx-cert-key";
sslCertificate = sopsPath "nginx-cert-crt";
sslCertificateKey = sopsPath "certificate-key-${certificateName}";
sslCertificate = pkgs.writeText "${certificateName}.crt" (builtins.readFile ../secrets/pub/${certificateName}.crt);
};
vpnInterface = config.services.tailscale.interfaceName;
@ -70,10 +71,6 @@ in {
};
stateDir = "/data/dirty/gogs";
};
sops.secrets.gogs-database-password = {
owner = config.users.users.gogs.name;
mode = "0400";
};
# === Extend printing settings because sharing is caring ===
services.printing = {
@ -130,28 +127,28 @@ in {
"/data/dirty/timetagger:/root/_timetagger"
];
};
services.nginx.virtualHosts."time.home" = mkVirtHost {
services.nginx.virtualHosts."time.home" = mkVirtHost "time-home" {
locations."/" = {
proxyPass = "http://127.0.0.1:5873";
proxyWebsockets = true;
};
};
services.nginx.virtualHosts."todo.home" = mkVirtHost {
services.nginx.virtualHosts."todo.home" = mkVirtHost "todo-home" {
locations."/" = {
proxyPass = "http://127.0.0.1:7372";
proxyWebsockets = true;
};
};
services.nginx.virtualHosts."support.home" = mkVirtHost {
services.nginx.virtualHosts."support.home" = mkVirtHost "support-home" {
locations."/" = {
proxyPass = "http://127.0.0.1:9999";
proxyWebsockets = true;
};
};
services.nginx.virtualHosts."config.home" = mkVirtHost {
services.nginx.virtualHosts."config.home" = mkVirtHost "config-home" {
locations."/" = {
proxyPass = "http://127.0.0.1:8123";
proxyWebsockets = true;
@ -289,12 +286,12 @@ in {
'';
};
services.nginx.virtualHosts = {
"hydra.home" = mkVirtHost {
"hydra.home" = mkVirtHost "hydra-home" {
locations."/" = {
proxyPass = "http://localhost:${builtins.toString config.services.hydra.port}";
};
};
"cache.home" = mkVirtHost {
"cache.home" = mkVirtHost "cache-home" {
locations."/" = {
proxyPass = "http://localhost:${builtins.toString config.services.nix-serve.port}";
};
@ -314,7 +311,7 @@ in {
PAPERLESS_URL = "https://doc.home";
};
};
services.nginx.virtualHosts."doc.home" = mkVirtHost {
services.nginx.virtualHosts."doc.home" = mkVirtHost "doc-home" {
locations."/" = {
proxyPass = "http://[::1]:${builtins.toString config.services.paperless.port}";
proxyWebsockets = true;
@ -326,7 +323,7 @@ in {
enable = true;
stateDir = "/data/dirty/komga";
};
services.nginx.virtualHosts."read.home" = mkVirtHost {
services.nginx.virtualHosts."read.home" = mkVirtHost "read-home" {
locations."/" = {
proxyPass = "http://[::1]:${builtins.toString config.services.komga.port}";
proxyWebsockets = true;
@ -339,7 +336,7 @@ in {
port = 10302;
dataDir = "/data/dirty/trilium";
};
services.nginx.virtualHosts."note.home" = mkVirtHost {
services.nginx.virtualHosts."note.home" = mkVirtHost "note-home" {
locations."/" = {
proxyPass = "http://${config.services.trilium-server.host}:${builtins.toString config.services.trilium-server.port}";
proxyWebsockets = true;
@ -371,7 +368,7 @@ in {
systemd.services.photoprism.serviceConfig.Group = lib.mkForce null;
systemd.services.photoprism.serviceConfig.DynamicUser = lib.mkForce false;
systemd.services.photoprism.serviceConfig.SystemCallFilter = lib.mkForce [];
services.nginx.virtualHosts."foto.home" = mkVirtHost {
services.nginx.virtualHosts."foto.home" = mkVirtHost "foto-home" {
locations."/" = {
proxyPass = "http://localhost:${builtins.toString config.services.photoprism.port}";
proxyWebsockets = true;
@ -522,21 +519,31 @@ in {
# === RUNTIME SECRETS ===
sops.defaultSopsFile = ../secrets/hosts/faunus-ater/secrets.yaml;
sops.age.sshKeyPaths = ["/etc/ssh/ssh_host_ed25519_key"];
sops.secrets = {
sops.secrets = let
nginxSecret = {
owner = config.users.users.nginx.name;
mode = "0400";
};
in {
"certificate-key-config-home" = nginxSecret;
"certificate-key-todo-home" = nginxSecret;
"certificate-key-time-home" = nginxSecret;
"certificate-key-support-home" = nginxSecret;
"certificate-key-hydra-home" = nginxSecret;
"certificate-key-cache-home" = nginxSecret;
"certificate-key-doc-home" = nginxSecret;
"certificate-key-read-home" = nginxSecret;
"certificate-key-note-home" = nginxSecret;
"certificate-key-foto-home" = nginxSecret;
"certificate-key-listen-home" = nginxSecret;
"paperless-admin-password" = {};
"photoprism-admin-password" = {};
"grafana-admin-password" = {
owner = config.users.users.grafana.name;
mode = "0400";
};
"nginx-cert-key" = {
owner = config.users.users.nginx.name;
mode = "0400";
};
"nginx-cert-crt" = {
owner = config.users.users.nginx.name;
mode = "0400";
};
"nginx-cert-key" = nginxSecret;
"nginx-cert-crt" = nginxSecret;
"fritzbox-exporter-env" = {};
"internal-restic-password" = {};
"nix-store-signing-key" = {};
@ -548,6 +555,10 @@ in {
owner = config.users.users.hydra.name;
mode = "0440";
};
"gogs-database-password" = {
owner = config.users.users.gogs.name;
mode = "0400";
};
};
# This value determines the NixOS release from which the default

View file

@ -1,4 +1,19 @@
{pkgs, ...}: {
{
pkgs,
lib,
config,
...
}: let
sopsPath = key: config.sops.secrets.${key}.path;
mkVirtHost = certificateName:
lib.attrsets.recursiveUpdate {
forceSSL = true;
sslTrustedCertificate = pkgs.writeText "ca.crt" (builtins.readFile ../secrets/ca.crt);
sslCertificateKey = sopsPath "certificate-key-${certificateName}";
sslCertificate = pkgs.writeText "${certificateName}.crt" (builtins.readFile ../secrets/pub/${certificateName}.crt);
};
in {
imports = [
../hardware/netcup-vps-200-g10.nix
../modules/nginx-reverse-proxy.nix

View file

@ -1,4 +1,5 @@
{
pkgs,
config,
lib,
...
@ -6,6 +7,8 @@
internalPort = 5232;
cfg = config.services.radicaleWithInfcloud;
sopsPath = key: config.sops.secrets.${key}.path;
htpasswd_filename = "/etc/radicale/users";
in {
options.services."radicaleWithInfcloud" = with lib; {
@ -45,11 +48,19 @@ in {
mode = "0400";
path = htpasswd_filename;
};
sops.secrets."certificate-key-cal-tammena-me" = {
owner = "nginx";
mode = "0400";
};
# Enable nginx proxy with ACME
services.nginx.virtualHosts."cal.tammena.me" = {
enableACME = true;
services.nginx.virtualHosts."cal.tammena.me" = let
certificateName = "cal-tammena-me";
in {
forceSSL = true;
sslTrustedCertificate = pkgs.writeText "ca.crt" (builtins.readFile ../secrets/ca.crt);
sslCertificateKey = sopsPath "certificate-key-${certificateName}";
sslCertificate = pkgs.writeText "${certificateName}.crt" (builtins.readFile ../secrets/pub/${certificateName}.crt);
locations."/" = {
proxyPass = "http://[::1]:${builtins.toString internalPort}";
};

View file

@ -0,0 +1,12 @@
{
writeShellApplication,
openssl,
...
}:
writeShellApplication {
name = "generate-certificate-files";
runtimeInputs = [
openssl
];
text = builtins.readFile ../scripts/generate-certificate-files.sh;
}

View file

@ -0,0 +1,18 @@
{
writeShellApplication,
openssl,
git,
sops,
pass,
...
}:
writeShellApplication {
name = "generate-server-certificate";
runtimeInputs = [
openssl
git
sops
pass
];
text = builtins.readFile ../scripts/generate-server-certificate.sh;
}

View file

@ -0,0 +1,38 @@
#/usr/bin/env bash
set -o errexit
set -o nounset
set -o pipefail
cat << EOF > openssl.cnf
[req]
req_extensions = v3_req
distinguished_name = req_distinguished_name
[req_distinguished_name]
[v3_req]
keyUsage = nonRepudiation, digitalSignature, keyEncipherment
extendedKeyUsage = serverAuth
subjectAltName = @alt_names
[alt_names]
DNS.1 = *.home
DNS.2 = tammena.me
DNS.3 = *.tammena.me
EOF
# Generate private key for the CA
openssl ecparam -name prime256v1 -genkey -out ca.key
# Generate CA certificate
openssl req -new -x509 -sha256 -key ca.key -out ca.crt -subj "/CN=My Home CA" -days 36500
# Generate private key for certificate
openssl ecparam -name prime256v1 -genkey -out server.key
# Generate certificate signing request (CSR) for server certificate
openssl req -new -sha256 -key server.key -out server.csr -subj "/CN=*.home"
# Generate server certificate using CA
openssl x509 -req -in server.csr -CA ca.crt -CAkey ca.key -CAcreateserial -out server.crt -days 365 -sha256 -extfile openssl.cnf -extensions v3_req
# Verify certificate
openssl verify -CAfile ca.crt server.crt
# Clean Up
rm openssl.cnf server.csr

View file

@ -0,0 +1,120 @@
#/usr/bin/env bash
set -o errexit
set -o nounset
set -o pipefail
function print_help_and_exit() {
printf "Usage: generate-server-certificate DOMAIN.. \n"
printf "\n"
printf "Arguments:\n"
printf " DOMAIN..\n"
printf " The domains to generate a certificate for"
printf "Options:\n"
printf " -H, --host\n"
printf " Host where the service will run, required for sops operations\n"
printf " -p, --password-path\n"
printf " Path inside pass to find the ca.crt and ca.key files in\n"
printf " -r, --root\n"
printf " Repository root\n"
exit 1
}
function mk_safe() {
echo "${1//./-}"
}
domain_names=()
host=
password_path=
root="$(git rev-parse --show-toplevel)"
while [[ $# -gt 0 ]]; do
case $1 in
-h|--help)
print_help_and_exit
;;
-H|--host)
shift # past argument
host=$1
shift # past value
;;
-p|--password-path)
shift # past argument
password_path=$1
shift # past value
;;
-r|--root)
shift # past argument
root=$1
shift # past value
;;
-*)
echo "Unknown option $1"
print_help_and_exit
;;
*)
domain_names+=("$1") # save domain name
shift # past argument
;;
esac
done
if [[ -z "$host" ]]; then
printf -- "--host required\n"
print_help_and_exit
elif [[ -z "$password_path" ]]; then
printf -- "--password_path required\n"
print_help_and_exit
fi
if [[ "${#domain_names[@]}" -eq 0 ]]; then
print_help_and_exit
fi
first_safe=$(mk_safe "${domain_names[0]}")
pushd "$(mktemp -d)"
cat << EOF > openssl.cnf
[req]
req_extensions = v3_req
distinguished_name = req_distinguished_name
[req_distinguished_name]
[v3_req]
keyUsage = nonRepudiation, digitalSignature, keyEncipherment
extendedKeyUsage = serverAuth
subjectAltName = @alt_names
[alt_names]
EOF
for key in "${!domain_names[@]}"; do
echo "DNS.$((key+1)) = ${domain_names[$key]}" >> openssl.cnf
done
# Get ca.key and ca.crt from pass
pass "$password_path/ca.key" > ca.key
pass "$password_path/ca.crt" > ca.crt
# Generate private key for certificate
openssl ecparam -name prime256v1 -genkey -out server.key
# Generate certificate signing request (CSR) for server certificate
openssl req -new -sha256 -key server.key -out server.csr -subj "/CN=*.home"
# Generate server certificate using CA
openssl x509 -req -in server.csr -CA ca.crt -CAkey ca.key -CAcreateserial -out server.crt -days 365 -sha256 -extfile openssl.cnf -extensions v3_req
# Copy server.crt to final destination
mkdir -p "$root/secrets/pub"
cp server.crt "$root/secrets/pub/${first_safe}.crt"
# Safe the server key to sops
server_key=$(awk -v ORS='\\n' '1' server.key)
key="[\"certificate-key-${first_safe}\"] \"$server_key\""
sops --set "$key" "$root/secrets/hosts/$host/secrets.yaml"
# Clean Up
shred -u openssl.cnf server.key ca.crt ca.key server.crt server.csr ca.srl
popd

View file

@ -1,34 +1,11 @@
-----BEGIN CERTIFICATE-----
MIIF6zCCA9OgAwIBAgIUNJ+vpEQh/c/VtQ53LfKRt2uLkFkwDQYJKoZIhvcNAQEL
BQAwgYQxCzAJBgNVBAYTAkRFMQ8wDQYDVQQIDAZTYXhvbnkxEDAOBgNVBAcMB0xl
aXB6aWcxFjAUBgNVBAoMDU1hbHRlIFRhbW1lbmExFjAUBgNVBAMMDXRhbW1lbmEu
cm9ja3MxIjAgBgkqhkiG9w0BCQEWE21hbHRlLnRhbW1lbmFAcG0ubWUwHhcNMjIw
NDE4MTYzNTE2WhcNMjcwNDE4MTYzNTE2WjCBhDELMAkGA1UEBhMCREUxDzANBgNV
BAgMBlNheG9ueTEQMA4GA1UEBwwHTGVpcHppZzEWMBQGA1UECgwNTWFsdGUgVGFt
bWVuYTEWMBQGA1UEAwwNdGFtbWVuYS5yb2NrczEiMCAGCSqGSIb3DQEJARYTbWFs
dGUudGFtbWVuYUBwbS5tZTCCAiIwDQYJKoZIhvcNAQEBBQADggIPADCCAgoCggIB
AK3I5+PtLd0P8ObZ0VrbUmppGyxBJOmfF8LbMZ65SvpypB6Bv6QveMGFaWMPlNnJ
zs1jUVJFtxW+f0D0Sqyi1JEKs9Uv8JmsHihDB3kA4ITSlUocO1IYIYh/XLtUSQNg
XhDdh/0Zrvwuegiln45v94a4Il705hcvRexvoAjqOjt3aZZovXhz6XVtmeQXH1Rc
c6Xr26RJJIfH4n4hBoMKmj0xiQ3uYoJuiSIy8975mCf2zbehSnD4+QcOdZmpeKy/
GfEXne+kvZucNCcj3NhfQH5rzOH4zz7c4llnK0QL3Fak6ORoXt6bn6bP7E1QCOiO
btdjgmZmS55c475pxDUo/MHror02JoT9DOl/R6uVOvVAyBl5xmmuftWcSD5kQJYC
iO6/YriOHQjsmGOxgVHtlBqLisBdftgAKsaG4CbbZ0CC4H6GtDHQPhc2p25M+D13
m/NEqlp1vIwB1bBW6duCFTD3Pj/EOterUJndbYXoHIvdzf02wxFj4KW0ZiFM1Iy9
Gxc6g1C5l1xcwp+NuibBC7i6v/7up4DEbOGdnxKxW55/u9DIMImjxOIPZs9zLgzh
iA1M7iULAp9dhVScU87I2eOPkZhmg77JL9i2rqt03zw3/TMAtBS5XhIP3KghGs5w
5tp1KY15JudJOyQOkzQUQEU/2REssWUZFwyF3CLsHofFAgMBAAGjUzBRMB0GA1Ud
DgQWBBQA/fi+Ew4v5IoB80ncBxttyjsiijAfBgNVHSMEGDAWgBQA/fi+Ew4v5IoB
80ncBxttyjsiijAPBgNVHRMBAf8EBTADAQH/MA0GCSqGSIb3DQEBCwUAA4ICAQBV
Caiw52KiAqqxK+8drkmPlr52jxW9SCNMJDXIKPCa4S4SyVd/PzZogoqudVU+m+uI
OvXZ4lUwR0EJc4Cjt5zUYp9wH68JN4EHX29AV5QKIOojoFvgp3/hwBCCDHjB4AYp
BKAMwZiUn7/Z0kgvj+mk5bHU6ntqEwoXKY6so6PR7nmSSWk9iBHfza3y+O/V4+3W
1L4+3GE/qM/pC41Ns7J5zvF3JCcYNvcbHnUrP27r0UUETf1w31aoRopA/C7LwJDP
mYCNod39ra3Zt5GYv+23slyP+LC97UkHYF/e15logitK1FK8I0uDmhwjvk1Nu2vS
bJdu1msvXU04EtsFHJ/gQ57c03i682G7b074BRmIH+MZBES6wI/NCZ3/8FvHAFWS
UB6oX7DHkyMJM6EC3X/WRvvw1YG7mct7SADJ0WbjWfGvIS9mL63msP+SMgR5+isj
21CLdIkjXaZID/Fks/9vLm7ErFnMooLm7njr0BFC2FYywPX28t3o0uFXakRU2Odf
pYCh9zRS0d2+xM2x32mZZ5LVi8lI5E0VTPVBHUE75gzUUhx1Qip+SAJg3/oxd3tn
W/2JML7l3ayYNVpMVO97uvawUXIZ7LFjx/LXwQUN4T2XGAJhjoNSd0uUYASDCOUb
tga57IAQZbtH95HDJT5YiiipQfxpYY9sN0eqEYaPKA==
MIIBgjCCASegAwIBAgIUcQJpavr5n23yn+IdXpqJnIeOJpAwCgYIKoZIzj0EAwIw
FTETMBEGA1UEAwwKTXkgSG9tZSBDQTAgFw0yMzA5MTExNjI0NTlaGA8yMTIzMDgx
ODE2MjQ1OVowFTETMBEGA1UEAwwKTXkgSG9tZSBDQTBZMBMGByqGSM49AgEGCCqG
SM49AwEHA0IABD58tZJmD2sU2WBQB58SQ8MLLCaxjIQoSUr6Myv6DqBQuBm5AlTm
YhkPDsuElupYQgQiKa+Kk7JbUFiIDpZ80BCjUzBRMB0GA1UdDgQWBBTcscWEbBPe
oxgY31KawV6oMgfO0zAfBgNVHSMEGDAWgBTcscWEbBPeoxgY31KawV6oMgfO0zAP
BgNVHRMBAf8EBTADAQH/MAoGCCqGSM49BAMCA0kAMEYCIQDKX22pkg8NeSI+Zr0b
uGyYs+y9FIEl3/5WBmmtXy19FAIhAIwzG9ZkFVZO16uYt2fzA5Ai6NAE/eDlyk4+
B9w7bxgS
-----END CERTIFICATE-----

View file

@ -6,9 +6,20 @@ internal-restic-password: ENC[AES256_GCM,data:fL/kqEb4YGD3zV1IpTT30Sq3XQsQymixki
hydra-admin-password: ENC[AES256_GCM,data:fzcFWbU6AjIVP7BaANE3RhPXYKm7HxMnNxj2Trk=,iv:VvOnYhVR3EvNatNazZZvSL7XJ8DpMn+tvGi1+SVdxkA=,tag:Nn1DPlBI2RXCwz+7CHMe9w==,type:str]
nix-store-signing-key: ENC[AES256_GCM,data:T7tgY+2q/Dy/tbFlnlm9IckeJX4p/JMcXRXd83zC+wRGTG79isPOGAH0CAxYL0tWtPowef6NbefOjUBo1t2aLNakRaSQcwxIFj5joPy2nEzaTSijPWu1I7+qn/tmMmc8ZuLN,iv:Q0/7H37u4dDVanHXS/8X3tdTlZETDdH6dBGp2+l19rM=,tag:P7bwJpEIOuNF1JBfKRdoLg==,type:str]
fritzbox-exporter-env: ENC[AES256_GCM,data:xP8Ba4v2PYXuuCBl9rg6iVJZ0clMgVq3IWweuLz9WvnCu+7qcq9vEiUQ55jYQCwMHSeaJgr5SHimMgdKa7PUXQ==,iv:yzEpnDylz+xouh4rSy3RI39ByhQQMWV4jzO510ZeoS4=,tag:q7aCrPN0t85/glbCzXg8WQ==,type:str]
nginx-cert-key: ENC[AES256_GCM,data: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,iv:JpQinVYHEZtl6NOgrLPiVyAVBQAvm1Qys/wy0FmF78A=,tag:+BrHnzDiWF7y/s3u4hSWbQ==,type:str]
nginx-cert-crt: ENC[AES256_GCM,data:UC6vzdMjRqk/2vk+DAQxs0NK31wBy0a4ZiINlOwYL1NTyT41Ei5Fd04MU1hxG/lc5uQG45SOv5Nu6Ttc/Xz3cwZbTCvSpjad+9kioBN3UgPtx1ScXSGk5O+rCj2JfkjrIsDvj6cGcxvLuYDnuAl0Sz1EOSRsEWDwVQlE7+4inZl/fpkR/9moTnQOdM0Fo97mQs2eYxw86vsV9LkisyOLP7oxCyRwhtFx7PXCADN6ytAGzAAPIjbK8mBuSU2J1bRQMniKz1DlpfXe9ajkdJ62yjwBO+E5Xtv4WIn8fkWaP8+OwHczMtfHkqwCkpZ6/rGs8vTsMzgwKRq4HsXYM617lyUHOW2Ddr+rPx+Pszu+AXYrmnQLfitAPFRuIzEIefnE2/t3T3NTxBnmxmq3XwzM8GKmO2Biap+6GD9WvHMrh5VRPUp2qu/N6Q6zfetLXIS+sEXcvy2bwq7wpvsGqOXg+B9PZnGNczG4CPsUV2kahQ3AsjKnjj0OZdhvoEh1hFta7/kjFSa4PwgDM/5acxUYOXybZDOYi0MEAT1fpCpztwoPX+GxwjoAGjnen8WnXYjAs7OxjbP7TfWn7AYe4aF7LRIxyMxPXjpZJpXfr7xzWXZzYgDkFgm863PIuXicHVtenO+m/Oxbb8LYGSGWY8zbwQkvZ7c7WP/jPr+bHAKEK0rKupYp6L4Pyr4h1/kREZc1czclRFBHjMRTyXelWbZZYRzdt7RHdQ3u8C7KA0Qlaq0P03uOU8U9Z9UrDhjV1NpbaL/URjl2f3WWme6tqRMIgezcYq7oNuVQSIFz5i0mLac4a4F4Rq2eiV4qvzs6P3hLZKfMa70ovfm138SeAmTuOEZvTaDP/swsaXIbRDhyaNJBWdvNEKPoefHNnfWGTGlhhFEwI4waQOfWKfdy1ombYc9NcA2kAtCLx2dMdEK4G4X2hoR80L+aEjqYrjERW+3/NDYjCvTFPNXZlAPCFgfjvqFZ5r0gm3b/aHFZOFzIavJHL4hRXZxhb3BbODJWeTMlRv2jfR09atAVMJxx0E6tgwk+scYDiuK9LnUgEUlYXCMutcaECxnGvCevLwIv645U3bDYeBGo3NG450KwgmMNiRhg+vqB7nGkPR3M6rRblo3Cz7dZOM2SpyFXbjO26deU+Xt0zKgKOaMvRnYaZOEQT+e/VkyubOLlJNywrEBOu5HzByOE/70naOZCxSvOx5k09Gj2wu5xsI9iXLX7WF3R2KG1gF1ObMfF4tiFXHuOA4BphDwl4JB9RPwu+a5GNy/O8dhiQxjj5q99lV76iYxR7OufT9ivwBu0O+Bs3LCml0JwbeFdO1NApYF5lZ6n9FrfJihemHUgMWz+DQ/SrOkpXWoQggwzkY5BZ1L06LgKTFrGhGxTc9M9eYydLmXjVel+2dzdXMXLdgLH4YrSqXqWyZRCo1Hd1DywE47aLSwspCxU5txzZP7gkzvGQ28kx+Ojv25bjnxioYWDZgjKL4Uml4Q/SSzdFd4AMtLHtjl8o9a3/CJHVQucL1Vm4BuFedj1aFVPLnZe/2KOZGx7N2jwp+xYtqRyx4Ly6zvDfbgeth+Iog5ltqLimu9Xq+A45wr19/W/n6MZtqVlWKZfpyVimJBV17h8E13wgZJIJu3weKeixSzB/JWLtUmhi+42aC9iiUUJEFXr6fg2uwzRd31W/n/kf9gaCYzAbG3cOtPRcyjdxwkLCkZ1voI8/wm+LHvvp++IY1g+5cd1MCVGphsVNMqOlLf/gqAYePNB932RoG33apqpaHhq0Mm3qbcQZpckH8KXyUTje0VrYuEzCcT7YnE8HTBNd850eYHacYsytzg9Suu36CoraFEOc+GFhP9pH7WYKVZFa+1KMkKBqI373CSqnaocMn4ssX1DLQ1hcxITzmPVG0RuE0G7Qw9LRnGPbfK5PcvY7bDwEju9WwQGXMGA0cOSQY/AYiCrCrvOuHk7NdJEGKiPXsG5xxPFOsGrNXL7LQDQpIZKh+g5VfMS31MxUH5NfwOa33HxaiVs76rEpI339NVf+IA0YnnghSLfX74o8DmWGZLf4kRwnt78FTG9Xu9mID3xbasGFpUb1o8kmaLXGv5DdLJNw69GyQa83mTtZlV9byg4cVzGHwoNsgq3UHnyK9KuDafyNq18mSb0vcx3HLxtZ99+twPcwy63HmPrsUMILf+3ZUHhpJq35EmnDRvzsNGc8vJWqr0FEjrBXh+ptahRdlVUJXfMPFT0yFqDHlhlzTl0Y9Hp5L7oZaO9rlvEd51Yt4wSjn5GY9G+eMFmgVZ6mdzQ7HQya9RqjsRE7qnnztZWXCGjaLKlajdGqWEKLZlZpXN1ucVdYHusZCtb3gVPzY+XEP5BTAd2cqFb6gR1e9h7IoWJyEXtqQMr7zSAlkFMd7ejzGrPj8h+bUeUSME8NA7z1UwBUM/WIiIlMN4jLOoE31DlYH7Txed8DE3niP5rw9C13dRhTBqPYdUMfC9Te5vj06VpeeXE0EknB/Wt1tx5Tq17iqzQOup/xWgAVNDxHUD8YDFajWeE5oyUZuAJedYkBnrii/JyD55sz7iWx/eaHbod2ZPIxyttLxAZsyr78fxrWT2BwrxNbiVJqVyL6PXXiLs7vBd47c6gW2ZcWMWQwsT14FBpn0ZDlPHwMQL+jH2vStdkQLOwr4PWpbuyzbpwJodAmjVUaWfwA3TZQBqz8spzec0cFndFuykXyWvt/H6c6aqTBIEcPBqeDwPMppqMDq0FuwOiSLhzBdcetjsgdQjtmApFcVYq29aH8rbGPzkkQG8cs+R+SWKaGDt43Dt0eQi5uX2xQ7E=,iv:WAtCgqMXVWLJJTWSs82OsaE/9wggge3Hf2rMTXJaXXQ=,tag:J/IEXam27GD2LORlG8NUGw==,type:str]
nginx-cert-key: ENC[AES256_GCM,data:Q3Ux2q4i4dgnehK+dXW9bsXx7jpuN4+wPTqVlafx/JzhCl8Pb+4/GEGA35m1K/R8KUq/sRPQVUvVld0dQDEE1kyKNi6z/44T/2e47JlC3c7KO/W9tKM9n83oRXnzx7la/aZgE4jZvMWGNNcmkBI9/MertoUTXlYl9vRqyn6KUE5JzJc4qbYJqOfm4+jK8NeAIDCYOWqDvRoqsFrxRdvafOdwnyiuotrEiXDU3QorGarnKCfXGP52XysnS2xlNzk0r7LXEahptRtVtrraqtQnINXg3xIEdOBfGfzn1r0aK49lwcieU5NjDWoKOhPPDVrh+JbZz57SZtLdO+IhWhx8dcBXYNfmHNg+aua336jx50sxXOh0V9wlHAFvsyUSzv2w06IaESZqa0O4doCoEbg=,iv:pU/OkQ8fFGHvthSnEv772MwqinC8weQXIJM/SDoasPY=,tag:EnmJC2/QCoALeBs0Eo7tnA==,type:str]
nginx-cert-crt: ENC[AES256_GCM,data:dYiKNeynB0B8zWJhzP8SJ0JtFAVLhX9Bn5oj6HINSlhlW73taAUvTbFaMIDnGergN6IlO7/OsoF7LTDz8B1ApjGENJiNS0FfmF9joZ5+db/oPOE+VZNG8yMJXIvJv6jhlaxgkpdUCsQKjBHa4KpGqTittdNsDWnfjHghr84fXSF+NrUizxmgU4GLrcxzmBoCbo2Y97nhJeoX2n1TFBwtrVuZt0zPqfu2+mq6V2nuqk9sQ4oQKSO3wihwP0rKB4pN3ysHUs+zNOtAuERtbJn1Fnm1Fpg9ve4n3q66SC18rt+WHpCFe2sDC7NAhRV4xkWZzfdrdriNIJgQh7G6LloIvlDhwRu82oub7gQvLRlxfD7ZDFj1dKI6JxZKR3utFMdGCPBanKoYFK36kaLWKg5jRmy1TO6H5WUqvvU8KfesMeD5IL6y5EeXrXzPvs9PQy0pmPz6q7PtcDj2h3c/cV/FOqwhoYMl1BXA9/8nKNgkCJCg7pFefUzUC3xGGwRGIQQRqr71yYjzs4OegH6AtHlpDQMEl19Wn/n/zheCyT/8zIHu12rNF9ehilxyKIiYh1pIkbEuwpAdyA1agkUoB63zJEF/gMHOyjJzZn3F36Fj3fBeSYNRv0GdxrBn/aSILl8M74dzlEUc0Ts1LgGogKu/2mt2sJNgYK/ZInIids9r7X9SC7KjDdZxZvzdDqm32SFBcU8yz+zlAjEGRO7B6vzdrTfGn0pX4arEtWZgAR3yWIbzb0JWRahCOR+p+LEZoSz9Q/3ga94rt4H2OAl3xiNmpQhNt72P5mo1NGjo9bYMkrRbecpxLs8unEtHQekKgm7uexxS5Ct3wZsV8h25seB2Jr7jAh6vHHFFnU1VaP5VJZ8SEsVk,iv:uBj8Gr7E98Ae5acjwsvHQ9FFCuUUdL3yYwpv9iRx+NM=,tag:TWmxGX4TdX8hGCxBvCWf3A==,type:str]
hydra-overseer-key: ENC[AES256_GCM,data:K9Vig81zhFczWGWBrF/mllDK/+30+lkKwQoO6gSSPzyFIQQUQqiU0edaySnu9Ez75XkHecv/dJfzh3hv1uIAmolxsl5z3gt1rf+rL16SwPcfVoY0iaZd0PYG/jIPVtb7QBHT7+Px3okDoya4qWDgHkWe6VBdMFSAubGEATvdSbJ9pFm7lecex2k7sS9DLdLWI+tavPCkupS+3vJnLeNpowHCLojQ3KtIeerxLu1E7dVa7Yn50MUZ9uQxaXcXXVBQBIzhGEAhZaPH4lNkiiHzCGgY7W7Ql6LmeP4JOYstfMTF1G02hOgDmB+5hYF2Uz2FywLVbeZ6BpspoqKnLCk8FFufHaVVYaZ6OOpx0TPaNUZdgl+hnL2Ig16im5mP03aZBh48KP+E0li0/0V5jzVt3tZHe+Qzv0uno7v2QIeauojX4/p0RCKimNxvr1UX+PhGxFwTK2jp7wexfs6BIGZ51tYnylEjxAc2s+uXRItQknPuPSlagRsHgvlA18f5Ylk6hu5ghgv4Uc/QgAjMqZEsQw+kn4G251uau1xVGy3ifkKuUnZRXVjSkDmhULKKje3A9/D3ej3hMNUsfelkNwry9/+Fhe47trmE9f7QBLAGF25061zYOWUl7Z+qtcKPfOY6NwzToA9phgmgCA4wAMSRGWeYP4kU7Q0dhrnkBjO/irZEhqXNXURN9rhGwRte98GwDTj4ckv5O+jbxRf8rTpEoLrPKSHz5f/cu9cDbVXuxRqvGpiV6XOy5U8GhCC4HHjdpHVXm9lodJB4jagWE4gxpjYsgBRxaSj/ssaSb+sbK9CMCmovEhKeh9QnHhYD9Jt4ekVB5297KJfbI19yADhE8f6/Er6ljs85p9aq2iLXm08YW7aWev1uMoVV9qGXqpzAS1DUab8vWpWSJ0aMwOW75zWFix1M1KlLnzFPX/urzdZEqVozeKsSFZthJVVkPG2yDb44aK2YWHKes3BIakuXJMBmGV5PvCLcFMMlXVUCk7p2CGax1Wxfgcg/NcJ8ofd0PyYI+3/VnIW0CJ2QoWzyNjyWVxXqxoJsh+a606Q285IHVipI+jX/Z1yVDNfObmZV/5N7PfC9uunB7bjvOXNlzu0lc3UrYQFBgr1pmPeb6fZjKaKMjAFfyEa9SpjZUUOHfWwkbicYxMNAGZ1+U859+OlfOAn0YLCbioUoI8yo3EhG95FVJ0hSRNG6ikpSYdIfczJUmnpRDpFtE+1LaJliGgi1BlqzKXweVbx/PYcmQrMTccFXHrW5HZlmZ3Dfe3VVH57DHqzBg/c1f408gZ921GMG889j2elncBJUUgc5O5LLyQ0X2QMa/5GIGwI/cyvzg+c8FWgxZ0O+zUmFMOPbseIyVY9hhp4g3l8Gayuc2L8TI6EC4aSyGq2749lQUteVMrUXKczmnsjpTbYWHSNUJljg6uMm4KDUnXIXMShWwxAHitsJQGKEN3g/mV7FTs94Zg7uRakSBUlepKydZIpjmz3GR03PXmSvnYvtIjSuPbFrstqWEjV/nNw9PVES8T7caR8SOwGRNu2ffpj7UqD/7jgMJkwIFEaftkb9V/+AUcEanIpmEg0H3162xq5/jeI/Inmu9AXM3Od0jfoEgMi6yt+aaMZSm5eiIO54mFEFk9JJroueYV9rX9PDzWd+iNUV5NxuyUmwl72GTC5Lfzq/WwChTLWkY9P8YFH/hKUMv84FFtW7YC6HOy7TJnIlJ0M35F5Q+6DRCV52yxC7boBbAP/jbLHNng/iLMYlJ574cHF2VrKqjsYW8pt057MwN3Q0ckNawOymwp/TDXaXy1nf7NXWHxZUPEWV6TtMBNctpNLqQuePuZY8NIP4cDc3S0BgHQyYfPZnn3uxrath60SKlT0F42sn9NQDgOp5kbtjfBIAzYz1O/88kMDx0wSdIYPrgcHb0H/sCGbtaK6/zOYuNw76K3JeVv8QIwbO0YLWjcjweWERfVwJxPt2tucaD3wVkzYHMcabM4tU69oJSFALE6onVX2b8UzWraeSOZAUPV+yH9s7IVywJBNr7WWzDMnoo33HNm1SftnFF02eoMFRto9313WiwayOie6jbbIhCaRh7zlinOKEiYnXZy9ID8RmINtmw604QqeZBhee1C4kczvAn9Sj4QQUs12vr+Mlz6AVhG3jqG616lnLW5yAJZEwF7LAAbTXsJOjb4D/qUNfoML8o/Ib3g76aduDhqyJ9oCY5HwPnIimtH/Hkgwk/fdxD/3g8FR7WaDCD0xZ7Q/8WDL8RUkqru54prJcOh/v3ammFnl2IjsVyGAwZqvDvOnKAZMfKi5IinzQq1Sh7O4n2xgkjGOf59t7RPDu+jLaFzsViBnWbMKhZvYl35xO2/+N8/OFkNGITfxCIi74K7uucTRHia67ytEW7n73C88XBdZJ3LoaY55fBepynn6vQSTZG4roJHsPFa+sixC7NJZkfJfnfh+cwfbb3jJil2H2KQNV143sH1B1ehWFcHOeii85yXbH3JjZf9+tVYcQgrtB5yp96kKP3U8zto0ZLC5VnuXiwYcdd3fPec5OwySjUZQzRGrbCuATKbIpjlpK5K06F4SgGai2gkx32REYa0y4sjF0d3FlZH1Fpr2DHaVL77QviD5mzLG0/BeU+2RL9/wZsEDKAP/Gq5/6WZo9zIa/xXccP8Nxwx9RwVc/QlpjxQ/3zKskHFWzrrm7SULM+bPXph0DTK8WrCYLxpcJmao4NvzoOw6crxJL3ORzJcYNDhv3N3HtEkagkhNQ2Sm7qT/zrO84ILBGIrIxVqyxOs6DGlBjV/CnRVjDFFxtxw5ztLZOm8OyJ6ydwwtOhFi1bD2r5ik5Dcv25fRJ7yFJ1eofN/16NhgBayZaz8y2URe5mJpsFsPYLpAUIGzvtoMYlNu74qHHqlJuVhrNAMJSEjdGI6SsKhpuutdGvVySVuAXzWVMYj/FPVITasT66gMj8MsLdAJ1+Y7OZ5FY3BraRb7hNcSMaVeaWdgNxBziiiOz7Bz1l7NhoEWaulnqFAjbYN/zj7vczB/wDt8bGgdWt5CxDBPN0/Sb5Onb+LeqV0bLg762GJ0DwYSCdWNQfXNEDbdP+jBYuIZFwfyoKdrwcebY/vXirwoiGgz5EGKLf276ZHRQ/+lORE1s/V5nDa65uJM0IOSRISZUpjVJb4G293yiXJketCoBOx0wWaiawiV6Nd2B0lVd9crOx9ik3F1F5Ei9CD0ft6pM9NSim7QOOgdyMe3dV2r+Bfv4jNOpJwb6wFjdSdMbNj93PjmaRSUwpuuzhpMTd0RpJVgMBKxtr5ckgEZGiNhvAMRg516zq4FB9YsfdbI/70JLKTJLkiqO+HKY2qeDeiU3WI+pwzXBDj0LHyWrcDpvaiWytwV8r4lh7ZEWCEqFUB5n5SjVz8AiA82WM6wWLZqZ8F7frTvp7gRjXB0OtJU3Gqs4bJ9R8KPA1Zu3Vj6RIweOAhBC/M8EYkfkR6lrZvjOuBvbuRFdSBdiaUy2Bq9i5dvLhwikO16+PM6T7Jw38mxVHGpd5dhGA5x9guSZHv2PKG11D1Ef9KaYsFxIO95pJ4UhaOsTTTKxcQPiN9uUV5zOfnAH1BdXIFI6YfoeTyNRywel2saE2ADuhcA7Dg2ogBYnJbI7tPihiizGdN6qFGqvRsGN8YqLvnuqJwF60mqZbq8xI/f1Fj4npXG2leQcl23ulEb43f76B3LwCch1JXzW7qFdObnG3T1sXNn8TO9HvKpDXNBeMaHv0VZHaGTze7F35dZu/xA3Vs3hjNdRZ/pT0t0wwKZDq/BI/ZBIhsfL/cqa3zbXkVyi6qceYmdx1ziX+cCDy0/VoT2xlSYTDBwc6x3PkHQ74dzfhn7wBcQbiX2MSNRaEOCDiJKC9lQmJj46ORzKBl4PII22Rpb6SSDSMYG89IiM1gILrmPvpHHLarvv/roBoNKFqUowccmvztxex65mqtNEc3zCLkHj0zzA7AgEmM7SYnT9racmdJ6rkkbuKc5GXf10GDozwCSq0Qvd034wN9hcAUg7cbDXQ54JM/s5/Edj4OeFu+UAi2NQGb0v4RiV2Y+6swvRhIspUVoHiT1LS2ueu0HB5o2/UjFJhvAG6Cx2VToPiN7bm2n4vvMgxJBAg517/3uYIW3tj4JRY1EWiBMseA2zyyKmq7oL4YT/RxXozU/Gjob2m/2Q0ZlKjBnRaQEBR9jWtgNUu3lJlQDAxRl8Cpv1rxiXWEQ+Gdl4Kf3USS+XWLmx8DU9doJMGU20WLkkt9+TmlIZbn0gK8QzE3/z+/f+U/vzhtTsd5mtsjFHaL6F2UqhfE7NXwn8+yF/OjXsU5hoLAEV2vhjh0umx6K30r7a53SpVv+X88ubQJi4NIIXiI2gzSclbaxt6fIPXRnMgnqvmWO3PZDkaUYbkqHWAN7AnRED/2sviZCGk3GwD5C0itKoHyzfiQnN97CpGIaZEq1+KCg4+2XVWjh7aSya9vT2rn7kLj4aVkbbDa+MABpWVlyFHqIy,iv:Yv6NrjQoAo+bM8wmsG8jV5JaSItcerUZJ6h1R4LtSow=,tag:WTazq3jdfnNpg42p20iXZQ==,type:str]
certificate-key-config-home: ENC[AES256_GCM,data:kybuVzRZfDldRjpjNbc6a033YKWvCNb/WTKuzhAufM+xwtTiuBDLqwKFPI8UmtiPxhZyc7Cb+HHxs/vxQJlQrqZgRfrIXahuZJatxKjtUF6+EWc3Jm+7wgAyJWbYQMRAQLN8/hj9D0tknQcKX6Kf7J/MsUEV08E7PIyD+DCgtQ8TCYjvGMV8vK9C/nUplmulS8T4FFU3eFMUYsRZKA1qiSx2hymlUSCOCKagmJ7TwFFRb79KShvqcRw14Ab6Sjmbm+f8ZNvAt8YA0jnJISxEgx3NZjVPLXaP0eSilTAZvcOptjGb9Iy7thUs07k0Vpqxn2gfp3yXLTlYv9KEtNPvEEGrt0xiFhDVYwB7jl26MBZS8La47KWVfTnRO6lQohEz8Rxq0WvOEFK4Ewj0MnI=,iv:tzKyfTnp9PmmKB//yHhTAgHwiFpve0nlhIbfZpjbZ28=,tag:O57Ys0zlIJfdikoBxACczw==,type:str]
certificate-key-todo-home: ENC[AES256_GCM,data:HUaHZazN7KmiUfeEX+NTwvVCW7BMpPS7s3kHwXQO+N6aUmHpEIdSrChkXL4wCb7h7bsJb7Ujoe8jQlmFStrSCygCgb4b7DXWJYhLkznfbK7ZtpC59bztNd16BaNj7HDlHevDlyq4o3abClA9Cy+B9zMDdIvRze2pEK1iGwHs8cBZ2cgvrnlGMGM53iIOsvnZtDCvzdvB1/ycgx2xP9SzCEWvwsDnFMI4lhgO6odjsmDz66qbuRIFZ/8+dPbiE5p5PxtbVonDmBz2My2BGEffLtWBIqIdKj15Re0rwiYwKU8N4jNNy89K7S/kEtxaYfmVbsTC0axeZfm4bSPPYHmxRi0sQzNGqmnoD0ZEsG3IJ2NuzxRN+lv4GW/PG4shKrjwX3NdtagwI4HmvGJ84I0=,iv:10WOd7zvhZrO4P4Xt0ekB5vgwCp9LTRunukv+dA2yFM=,tag:xhE3/hDZX3WGVXlkbjbgyw==,type:str]
certificate-key-time-home: ENC[AES256_GCM,data:snCu7p9MTTS/S2W8WKcvOxTlNlstlv8mLKfxvc/LpePiB1arnNM5bP4xW4HwPXTcWrFWQM+qYKJP7DTRd39EUAQZswnYlkII7GD1PMe9fXpGhw1s33JKsOdHBILWaFfp3rMjAfuZCBkxaYQg2Xkry3d9GKfBQgeJD9xNiuVi/Dgs/9CX+W0BBvtEpZ/pccCmQVDFLiRkBdgmDaO1XXm9Uo/7s7+njk1JkuO816hfERs0cDSraqz3x9MmCMrNVkwg0THjrN4K4KJFwqped3cOc1IifqWlljK89MkoCYq4PAKZ4jvNOPwN3wF8KpLOclVVTTmEOsTUeMRYp8oj0ESsiYhW9rHZ0/gdUzr5GveJqbnjUYJmv3Jb7507bIwGNaKq3Ww3VDzcjTJFWKBBOD4=,iv:DG6jBsmNQQmdqUyTmUUrvtEQ5F591scjO+/lqLlMIB0=,tag:BdUxqCiCClscuXhOTwoX4A==,type:str]
certificate-key-support-home: ENC[AES256_GCM,data:ZB4+GWz6TJYgmcex94e/951Ccafy0M8M0TtABiz+H8hX6/8BG7JkulqHvtRfx3nmv0NFlPTBGOTbXatAesWV4WuIlUkAq5+Q2DlGfO0sH/SskDIB0T99cfp6cn89bqJj6Tc2vNmNQrXGaDjqLUqg5m4qmecPgWToTumk19plOcu+FJhhkBud79l4Mwn9XwPW6qrWO0DTv7UvuvoXaJjSzCGJnvjkLdVaCkH6jY2u9SL1d7fkFRd11gqgLBQ50jdew22FIDec68PJFtCefp4Z7NlDXUbiCBoFHnI4/arG4CtfpnIh9tcBaRoTBWRWvYFQW0rYu5Wr/3Jg7RQ7gVtmrUUYhDptSPbKZ0EBvq/KM3yF1bPXzoujoAlMOg+8JKQWGdjzRAXVlfuAG6wZhTA=,iv:l+54IbYtbuPwAbfsKtXmSWwD+QX1Ommxd/fLh6A2yrQ=,tag:6476T0VbhME7S530SEyT6g==,type:str]
certificate-key-hydra-home: ENC[AES256_GCM,data:0UHZ7jfgW8aj+PaBs38xJwpYkNYCCfGLBuEEwXoxksg811gdXBrFCATukczeXHgDblHgRt6lOWP/7sivWW7P/iRPhoUp4px0uX8pygU4auRsq6ObpgfDnQ6+cPH7kvz0gph53+awY3uCylDj+VtFw4prx6dw2AcLtCjUErumkyA6qWKtyj0EFJIdf+k5Wz0a1QjTVC1LgeQ8iutqmEZh6MTpKt1Lo/A7lkp0OiqRnw0l9g6WsmRVpfpMHEPQDvHyESnBokD59otIwZyDq3Gdm8ZYtukyfJzPQD9e6btTiQa+3QkdReBdbe9dIeKIk21H0NBE/pkdII8sXSyh7xYYYR9/1005XP2ylAip/gMAoorxTFMwQDlOxczr0gjQyBcaLCjh9OcFl4DwF5aDOMQ=,iv:IYJcNBHESA1eWZWDbzmbh568zZw+uVtw3nPLStCBuxk=,tag:58S85gizeuyAfRGnRn87cQ==,type:str]
certificate-key-cache-home: ENC[AES256_GCM,data:WX7kHusv7c6fSE3rKIfZ/hv01VNSBgRehIqdx+j2bkzaLGhbMAq4Gzn3efzruhIRO/t8A/X6Ug7utppXyn+CGYLjF87Ubfr213LjnX7Tj2ZSoM8rEYbfz/wxzdPQfNOGDnvC947rAKPRgIMyn4pb9eRZFXWv/rRC+yEuoL+407hJcdizsxacfAYYw0sPOEOxpSZjQuAEicHCftz3QmAtBsgDYambF6N1AxfFVSN8+BZXTz0W6RK6O3tTdYCLyT/1ETM2wNVj7cS6GPq7EcI289XYRjhN5cDOPcdJ+inu8t3eeKWQx1EgoqHDJVK0+wyf5OXhJAhA/mH8lxos+MbXtN0JMQvoxFnVts12Uk0h7Oiytd+SmXsOFvOIUnzd4q+iAaUJ7Ik08MV/lmSNWGk=,iv:9TO6uMkHdMaosbVNVT4xRGXwedrhEGnP58fFc0LQpZY=,tag:KPkhdpjA1g03yO9/HAY9yQ==,type:str]
certificate-key-doc-home: ENC[AES256_GCM,data:eQV63/saEaQRh2yUoP3XIPOWpTo8kLY4G8YNXlYqqNBHvjfKABBcACJvoj/x2mHTgWNTfyOWzBjjHFk8UPYNRrvLWJyjxC55UPEyfKKNj/u0erJpu8zLYllH+nrTHWbbA895CRHHVjLWCBkj8goIh2wEZa4fovaoaloHmWUhVJ+KlmzOeIuHBjK0ZhME1sODTfKNAZM44IitpdJN+ME03tFcKXuI9v+KKa3ZCI9J4lsqeYGMKWXJSuwssETKshM9mcXSj04Ju1t/lIe8Hcp2DiWahzkhH5socXK5KlQop/i3gzRQgVxgftv9TIOcmzLjQnNg29dNF/ehfiYyPxgzmACNq/zCWosJqoImPyhS/yZ4CUxkS0oZoavOdMgvXhhAflYwf9Mt24vbk+qgE0o=,iv:wCeTaRa4F67mFmsR9OU54xdPhvNmSYCsn+n8hK3nFAg=,tag:J6mfHyfzJLS4ppT8sqAZyA==,type:str]
certificate-key-read-home: ENC[AES256_GCM,data:gmOZltlFX1MnD2O9MvImBfHXSFOCoRwf21GNge4xZxJaH6hm37ADX8LO0sI2xASa0QFbxvV5D7K5IdElC6dqWS+Qe28acH/RqIJXuEz6QCfo3PQVE7abqfE/ldHGTFipGtOMNN+CPfH4loc8Ggbintk6RfaUzh2eq2kytN/sUp4UiNGIj14UoAG+hCgRkUnV5/s0M5F0hnksPZSBxk7ZuHP4xE5WBbdAA/C8yJvPfEm+e1bW1SzJeJJmg5f2BqJbXk4Hsk/80p3SsYrjRRBZM+G6Y6pfbV/lbRmwzjBraVIdEkf/osR7W5Znn8INeiDEZxUQY6vSToyReibtDAsD5VlpUHbht8ybJ7IcrHyaH1g8SQA9vG3021joWPRVBcLL5BQPSoiMP/vYuOg6flU=,iv:AZ+EHYsE7QWHv+j5LMt7vdZ/cz8Tio78Bo9QQZ/3H3c=,tag:A7XiaxQVnXvtgN3nDEhGVw==,type:str]
certificate-key-note-home: ENC[AES256_GCM,data:3o14rUIbQnO2zsWZ+2HOYeUj9bCwAyDnCTJnqPFeUoycRNof72adOQnXD55zkRjvmTCKn+eUAftMUmKwLh6igQBUDfaa3LR4vrFIFxGU2yVc05HCtkNoH8DDbaNlh2qUEXxRhdHOOH8H9+owKC8vdI3lg0jQCOCohyh8DXzMBlDwMrRt4GEdCf9SacVFSAwYjBcaY5QiGno62cwhIopOqrDEgDjX9DqSXdMldWPJAhY+vKqkQw3s0TEP6VKUWxS1dsk5iUWLCiwEluapUlkNe8pl2IS+edfMHs6r5VjkvREZgnVlYG/E7KZxs+RXZHH6hqC+QVQwb1Pyvg1pNrgRgYglQjGEk4Hw2KYLPiujvA8Gh5g4FXLqOqb0D+1e/L4KmuuRJj4NFSJva1BlMXg=,iv:CzTsAY13qJ7QuLxAy8hR25eilH1xk2ZeMm1n36jXhr0=,tag:EF58EugYcdZmus01rYU4Og==,type:str]
certificate-key-foto-home: ENC[AES256_GCM,data:fBu0O+jgpvquYLm8pkATyJc/htIM9K45O+ORLh6BZ3sU4KkzHxhxwgmGirt+KmuPDfpXKpXZ9JnR6ZzQ8fx+SKy65RLN0NsFYgmtmkLft0x5yir9qODGSFcEfAbF8ytr2+TvjLJxm44uutuwuedM3npfM1Ix8kJctTbDDsDm+O1a6yHwYMzdNMvG/wzYwcLfkKYVAmJ7NSDhWn0EQbMuiYE+Dr5ELpLBRrJ+9jLRSW21coK3vsjWPdDNu53HJhm3tXMygShrfMnbizCS+usHDaDPmyR6FNsS1+jc6BosVD/hK1p/eXkLKYwnOyMZdpnPiVQVr1E7Sa0P1RgOoDkWx8J+ltj1UqqDtWaU6caqALOXE++oowXJski1HJWZtPyra0TkbZXNqrUA2Pwyxns=,iv:/Ssx11gARoOKrO4slcd3h839qyrzkuYWF2yBUpD+QCQ=,tag:qgZauUmp6Ry5RGsA0uPqZA==,type:str]
certificate-key-listen-home: ENC[AES256_GCM,data:B0sXmMgBnBc2T2rimUrsx77uLcKeMUkMIOCuI1eGR/HJdGmDlD3fTu4OHEBi/dlcDhka7sEw3at2orZtn4C7vaT0xvbvQTNtHnXSYIsKJd4lc/5UGugAi7uL5yzv6GlgJDsD6hy7sxRgiZzvk5fqlPZ6IRn2olMV1fhEAqHYQuyYca4Jx8M0s/lfnW1IzxZkykMrxXAWgCccC8JwtAbFmGBIIJATR+sIbK6w2eT/c/6DuqVlcqpL2w81RHn5nATUOsqTMuAxNPFOsQ8hkhohi7i07UJ9zHTbgd1Joxp0UnilW7eNKevySXSpS2K5D/lpNA2TXVImC+mKf2vw9Tq0fLbh3AtoWkKMKvDMe65SnnKs7w57SKNOHwcImMEiEr33xaj9SuDL9pbuXp5j84E=,iv:xxXKfCd1wbuXh+PfLkBuE+hMtrqwGPETHqHP+Ym1Kdw=,tag:midB+J8LvwGhTBpZ6z0ajA==,type:str]
sops:
kms: []
gcp_kms: []
@ -24,8 +35,8 @@ sops:
cUZZQ1N4dGxpR2VLR1ZjTlFmTmwvTGsKzvsg2Uh2LzE5vXrdxW+H3ACP9kbFO1Rb
XUyEF6E40UGTR40J8CqV7IvnHVvaLVIekW51MyKVGNyBG1phOne10w==
-----END AGE ENCRYPTED FILE-----
lastmodified: "2023-02-01T16:37:38Z"
mac: ENC[AES256_GCM,data:fnCqrU6llnCbrPvRE4MfG11xJOMQ4hFhv9nMY+yo4Ue75K90ZdiLxe6+KxPUaKSfQHDVyYFP/YRjzNb0iDLvISymzosaWf0fvSY8aQXbismKB6hS6DFyPVceKSyJYYx+eA+LqBpq9KYnkgt4qQkJfRalJD+iCth+xSpFK5HSyng=,iv:d+S9pfQffgjnUS0xg/LYgYwh+WHGGNYBlEnFv7j8Rlg=,tag:Akv5vhW9VYW6WqaUlpS+rg==,type:str]
lastmodified: "2023-09-19T15:35:58Z"
mac: ENC[AES256_GCM,data:qFEHyZEkfrIgB/5oVO3bLmR9NbFKKxUeSEL9nGbCkzREKxECWwBwpY8fMZM17DE8XG4cP+AmpkT56eOEd5tbr3JYqbn/LzMvjEXBEyv15dg4/4XPyLO22uKk/E0EtOgVZaFiX+joDhFVDnvlcntuJobH0xEYUDCA00jMXRBS19k=,iv:JjZMKF23lXa1y2zAbyd+9X8m7gMOvX2n2bThVj4WWmY=,tag:D9fG0sDtPVWz5FlmAbX+2w==,type:str]
pgp:
- created_at: "2022-06-04T20:24:49Z"
enc: |

View file

@ -1,4 +1,8 @@
radicale-htpasswd: ENC[AES256_GCM,data:lO0vCY2WbFlOFR4lTe8BLxq3dT40Ik45xEp/JGhzAhOAcndcD2y7oXSlVHNUwbPj5nf0LvfWxuVmjxdlLsRAp8mr,iv:EMYn7nXcToCv7P+v5XuMOUODbUT+5J8gaNE3KcDzQoo=,tag:LQx1dH8lCutQaqGJYuJq2A==,type:str]
certificate-key-config-tammena-me: ENC[AES256_GCM,data:Xi/ZOiUmDDTJSICxCrWCUKlXJG3R1FMih2E4Rk4dYu/peEgefoi13ExJptN2X6UeCKsYlwHKFv7/lJglP6qBGDYYsuHg+1IJVZO9o7CEMZc0o0WJQxPBj8ZjMQra3JMkesErsZwj3FjIqaHrcy34BoxL3hmZtGD+bUVUiog6b/Hz+Xc35TlN4vk5TMWPwwzCP2Tn+rilEDc+Wj6QOZ8xzjNUsm+H2b82+BqJi2VBqHdOpK6hjdICRXVLiesYYM9reUiiH0UkZj+nwCicFctFJ7wSGHZEfGjNYfSwLjVxy0t93oeIDeTKJ0jXZ8nCbcaf9r61Jpby1mVQ/5qHusgTCkmpYUoIENEm03pZCqVUVkIjM0rIgtOQAKQ7dNYvhkoW3iGC4lkJgSPk8/qW/M4=,iv:nHTYV7ebr7/iiapHaLZpoe0wDRaOymJItxSGirdNuio=,tag:2Mo4K+YrNRU7LOYm5jR33A==,type:str]
certificate-key-todo-tammena-me: ENC[AES256_GCM,data:rmuVdlxUxURygFB+JCijuPQkKOcr9mUmmkRJ7edxsIkyo3K/YSwGf8AF7jJF43f9Dhf2xzRSK2CveSDFOVI6NzNXkZvth1yySQT4QDpbWjlU4fkk9Jo64fYANUMPcakRyHHQiZN0pSCWvtP2WUEM66pr/94ihH6KyQ8SRsLlUbXdMXPzNI9Ydgk5Px3KMx2qy7MXRVsFgsSA2fI0C0+PFXVuNAflGXmDqokWIQdeSgHYmHXItIbVnPuCMr/GW0N8hQ4TkxKqWrijrgTA6FoQx2NEscQelV2eZKxzucE/0YbNl5O4a8jP5l5C245Ypsp4N0XP79RTVALMUA5ZoPBKQsR/dL2c5VRyqI8iVX1PtSBOt6HyrtrZ3UhC4vmXdlkiXb8AnMETRgn1zs36fMU=,iv:yQcLBF1tJ4+Gut6h8xVc0HJ4rIQk/x2Xw6e0QilNd2A=,tag:f01qLt8wqiWw9fauObPqvQ==,type:str]
certificate-key-time-tammena-me: ENC[AES256_GCM,data:b5UCTT/QwuoU0ami+GAUWFSdWtZGmFpK03SbXMs1NDspIs2U88lKrUp+kZ0S6Em+IFBRgwTzwia3ljLuGPEDSIdwS+utLSuJhfUd8m95IH8XDVfpmY59tAcWzmWuMSDjCQDBAVUVowocnO+DZLGvofny6306uIXu0Kd4RVG0O515dHGh2ynkAhOZJClqt3TLYUVzdMG7KQWCDoHhcEQv6YhPTaHHp5+1wsICSxZkWz5OSNkadPrZgGBfDpGMUz2laJIfbI/EfDJ+KewW4m+N5LOiTtBWTJivO+fEdoGo5MQxBaaXP10zpu/vNfaxe+QMfNJrzXR3sfdmpe/YF0miUf5SIqebW34apopQ1n9MAI3qneh3NMoQwj48FrHUjM0fMSRISImEuKN28vCDbSM=,iv:ML+a2gCM5Iq2N27Zzt210DURqEnMyjAzn2EJ6VfCxsc=,tag:2bWZmsdoOGeEgBYCAhluhA==,type:str]
certificate-key-cal-tammena-me: ENC[AES256_GCM,data:1vLOI1kayAfQKv83ZPLZdqeUZGE5M9uTCPVKL9jC45gqXL9FmNtWZIAucttY1pPZGLxD9f9FU/NDnVpUxOz7tJKMI33HMyhJ+io3zf+hRk5rQN6qIBt665IHH36wHMr9hxy/mD7sSeKsMKjLyLTL6Jn2DucJEupRJWvZ3y9uv/7BulhQfpOngMPj4kAX33eZOVrww1AbrZXeUeuEiFiV4aa74BuXNODHq4H2qq1L1EwHNuI0IdItWTniFAoKdpGJu6bLL4e2N1Jj3NTeEUOhsR1iM/lrM/qjfQNUcg92iAWUd5j6WNfRVR4YcWYlePizx0/LTcBHh4ouTFupye87rDANGsnFWs6YqiM/qWoFKbncrf9t/de5IZklmoFlLmb92k2oyXvt3OKpL598Od4=,iv:un+TMKF01AiTWXyNEWtF25ELXUmBzBf060gdtx7FdKc=,tag:AsTTJ7gTrb3+4AGD+tTTmA==,type:str]
sops:
kms: []
gcp_kms: []
@ -14,8 +18,8 @@ sops:
UW4vM0c5aUQyUDlGZEhERTdhdnVmQmcKA7UK+a+CbqPXsz24QZwo7fWbRlh0peKE
qc90P8uofufse9XJ/6ReF2ypUPjYfXbPq1c5vIrZYk/8Y1wS/+Z9xg==
-----END AGE ENCRYPTED FILE-----
lastmodified: "2023-01-15T16:19:15Z"
mac: ENC[AES256_GCM,data:Jr4KgqSslyCk6NAdwECcqCh5I+0j22eJzT6rR+aJjihecz0zvp9Ki1INvmp+SvHXr3aPYJVaWUBA6avVpHJnKL4Lj5/UYbUgJ1QzZbplXnZlFUU5X2uWQ6D5Je4wv4q3ArSkLibWFNz/hwe/FKrye8Vq2e6o+2lJ/ensBcwzLdo=,iv:lmHELEiTB1yhY7WssZYCvFOyx8vYKyT4pMcdwcATp3A=,tag:rE/qnTFyrxcFDw8NFXfWnQ==,type:str]
lastmodified: "2023-09-12T20:12:32Z"
mac: ENC[AES256_GCM,data:0G5L2koNhB0OMLYTNc+1AjG46TCVtwYqXtLhdW9ey7bEm8ZyJqyV3+Thtzd7fycl5HAHtFW3hu+/1FLs5IC/oOtr+7XZsGOvusMGhsBoHrJC5NSqRmRQUwm3ZFMDPWnAZ4n1Ua8+ai11tunNih1Bv4YA6F25GQe6UOMtdB6tgdQ=,iv:tzmKAj1DTRCUO/qQq1gvJ8GHgSAli6pEMvRUYbx4D2M=,tag:f/+ZLqG7gu1NDICVNb6i8Q==,type:str]
pgp:
- created_at: "2023-01-15T18:09:59Z"
enc: |

View file

@ -0,0 +1,12 @@
-----BEGIN CERTIFICATE-----
MIIBtzCCAV2gAwIBAgIUHotJn3qAU1pps5Mta9SypnSua1cwCgYIKoZIzj0EAwIw
FTETMBEGA1UEAwwKTXkgSG9tZSBDQTAeFw0yMzA5MTEyMDU5MTdaFw0yNDA5MTAy
MDU5MTdaMBExDzANBgNVBAMMBiouaG9tZTBZMBMGByqGSM49AgEGCCqGSM49AwEH
A0IABIXM8jffH6nt36QmRDGEnX0kgXacUAEyW8PLIYF07qhKMYRy5fPvcOoEm8FU
fC/dZJR6cWwnuAHqcVAo6LRzBdSjgY4wgYswCwYDVR0PBAQDAgXgMBMGA1UdJQQM
MAoGCCsGAQUFBwMBMCcGA1UdEQQgMB6CCmNhY2hlLmhvbWWCEGNhY2hlLnRhbW1l
bmEubWUwHQYDVR0OBBYEFDjmuPR5Qvf5PaYNhc5KMHeRv5EzMB8GA1UdIwQYMBaA
FNyxxYRsE96jGBjfUprBXqgyB87TMAoGCCqGSM49BAMCA0gAMEUCIAkqYqncKuSr
1swdPd9ZiGWBT1NHL0cuzCum5VH7TY50AiEA7R7AuiOCf2zyI03BeHM2DdnAScw2
nscNsb75A49ct2w=
-----END CERTIFICATE-----

View file

@ -0,0 +1,11 @@
-----BEGIN CERTIFICATE-----
MIIBqDCCAU2gAwIBAgIUQa2ZmmXahdiqkCA/g6IZXPlwNvcwCgYIKoZIzj0EAwIw
FTETMBEGA1UEAwwKTXkgSG9tZSBDQTAeFw0yMzA5MTIyMDEyMzFaFw0yNDA5MTEy
MDEyMzFaMBExDzANBgNVBAMMBiouaG9tZTBZMBMGByqGSM49AgEGCCqGSM49AwEH
A0IABCFuKYGHhoHiUq++iFuBG9oSCxYjkN5dqfmQnB3HrFuEToaa8pP6Qa36ocfk
7RHHoCIL4wMNj21NTZhvl7BP+oKjfzB9MAsGA1UdDwQEAwIF4DATBgNVHSUEDDAK
BggrBgEFBQcDATAZBgNVHREEEjAQgg5jYWwudGFtbWVuYS5tZTAdBgNVHQ4EFgQU
z+HnPqUiOwfyTBfN/RIYeZoK/1EwHwYDVR0jBBgwFoAU3LHFhGwT3qMYGN9SmsFe
qDIHztMwCgYIKoZIzj0EAwIDSQAwRgIhANWOT32gtYScCkiKOUfqspr1/d+kF6Y3
tPO3Td+GznSYAiEAnIcif4BOuB8GyK6C36mPpKbc6YsE8vqYDoQMCItenOE=
-----END CERTIFICATE-----

View file

@ -0,0 +1,12 @@
-----BEGIN CERTIFICATE-----
MIIBujCCAV+gAwIBAgIUY2RPCdkbG4Ra28jfpjnHs4RWZkQwCgYIKoZIzj0EAwIw
FTETMBEGA1UEAwwKTXkgSG9tZSBDQTAeFw0yMzA5MTEyMDQzNDVaFw0yNDA5MTAy
MDQzNDVaMBExDzANBgNVBAMMBiouaG9tZTBZMBMGByqGSM49AgEGCCqGSM49AwEH
A0IABDuujNC2lwlJCGcrkECtOnR+d1Z2y1Yrj6RHrZMi1/49zZ2K99GRliZwSGCR
BEQYYjF3Ds1IHric1PiIMQb71YajgZAwgY0wCwYDVR0PBAQDAgXgMBMGA1UdJQQM
MAoGCCsGAQUFBwMBMCkGA1UdEQQiMCCCC2NvbmZpZy5ob21lghFjb25maWcudGFt
bWVuYS5tZTAdBgNVHQ4EFgQUKM7cMhHJgd64/DGp51fVBBPS4sMwHwYDVR0jBBgw
FoAU3LHFhGwT3qMYGN9SmsFeqDIHztMwCgYIKoZIzj0EAwIDSQAwRgIhAIm/j5jV
U5xbQNFeqcIns5ABbC+0GiHCADfYpDaFFC8DAiEA/alS4rD7xBS0ltmvQI4CfExi
FKIQwb4zb8U9G6qlIEw=
-----END CERTIFICATE-----

View file

@ -0,0 +1,11 @@
-----BEGIN CERTIFICATE-----
MIIBrDCCAVKgAwIBAgIUUcTbkv0KKcHJxaJ5HIUc4CeZkvAwCgYIKoZIzj0EAwIw
FTETMBEGA1UEAwwKTXkgSG9tZSBDQTAeFw0yMzA5MTIyMDA5MTVaFw0yNDA5MTEy
MDA5MTVaMBExDzANBgNVBAMMBiouaG9tZTBZMBMGByqGSM49AgEGCCqGSM49AwEH
A0IABOhOkSo1ukuMMtThP1rxkIlGF9bm1wJkRaKP7KgbEorQBJDoqcMB7EYevDHd
4xd/XrMohAjfznwoIaty9kECtjCjgYMwgYAwCwYDVR0PBAQDAgXgMBMGA1UdJQQM
MAoGCCsGAQUFBwMBMBwGA1UdEQQVMBOCEWNvbmZpZy50YW1tZW5hLm1lMB0GA1Ud
DgQWBBTfYCnPCOHktV1Xh4v6xE+uU0CZaDAfBgNVHSMEGDAWgBTcscWEbBPeoxgY
31KawV6oMgfO0zAKBggqhkjOPQQDAgNIADBFAiAiUJ8QctwE2GnQ0GG/TR47Gw0i
W19yS+8K2ducwjuZswIhAOTvlVkJwxSjzbX1wtUyHcE3ShPdoN1UgHq6eIVa7uH4
-----END CERTIFICATE-----

12
secrets/pub/doc-home.crt Normal file
View file

@ -0,0 +1,12 @@
-----BEGIN CERTIFICATE-----
MIIBszCCAVmgAwIBAgIUJc9SAX/NKQGxgtKayUkNCyPgXdgwCgYIKoZIzj0EAwIw
FTETMBEGA1UEAwwKTXkgSG9tZSBDQTAeFw0yMzA5MTEyMDU5NTBaFw0yNDA5MTAy
MDU5NTBaMBExDzANBgNVBAMMBiouaG9tZTBZMBMGByqGSM49AgEGCCqGSM49AwEH
A0IABJyC/HdhScGKL+N/EW6oaDpkCsWgE+H02nHforq0a6NIb8HG6melH+wIYkP+
3Swaatmm35fAm5t5KFoV1FxCbJ6jgYowgYcwCwYDVR0PBAQDAgXgMBMGA1UdJQQM
MAoGCCsGAQUFBwMBMCMGA1UdEQQcMBqCCGRvYy5ob21lgg5kb2MudGFtbWVuYS5t
ZTAdBgNVHQ4EFgQUQ2HU8OOXhZJUFPRqTWIe1S1w8xcwHwYDVR0jBBgwFoAU3LHF
hGwT3qMYGN9SmsFeqDIHztMwCgYIKoZIzj0EAwIDSAAwRQIgFcATRAf4HJf/DHWH
Pn+9Yxxsu+pQFrnsjC8RQ+mUM3QCIQCB2vqi8Mp/eFDvlgRYCBdBDPJlY79cUbab
6xGWjMelRw==
-----END CERTIFICATE-----

12
secrets/pub/foto-home.crt Normal file
View file

@ -0,0 +1,12 @@
-----BEGIN CERTIFICATE-----
MIIBtTCCAVugAwIBAgIUcwmcS+3zemaiwdZaaemvaxATqvAwCgYIKoZIzj0EAwIw
FTETMBEGA1UEAwwKTXkgSG9tZSBDQTAeFw0yMzA5MTEyMTAxMTBaFw0yNDA5MTAy
MTAxMTBaMBExDzANBgNVBAMMBiouaG9tZTBZMBMGByqGSM49AgEGCCqGSM49AwEH
A0IABFKu9Xet/q0Y+CCI4YIkjCYR1rAjrJFlCs7sdi9KosRKDjO8TCqt3VDqrdFz
4S5+O3i2pbiBo8Ks2brUJ6kfbpmjgYwwgYkwCwYDVR0PBAQDAgXgMBMGA1UdJQQM
MAoGCCsGAQUFBwMBMCUGA1UdEQQeMByCCWZvdG8uaG9tZYIPZm90by50YW1tZW5h
Lm1lMB0GA1UdDgQWBBS8Ey/oY+7AYkqoIQoeLNGosbfwwjAfBgNVHSMEGDAWgBTc
scWEbBPeoxgY31KawV6oMgfO0zAKBggqhkjOPQQDAgNIADBFAiBFFR/q9ourO7w0
Ph7ZFT9CsBEypnFkNL16rc+kXpGCmwIhAIG5AfHjIc+iHV9NS9JO/IZ1g8LdXzsS
C6ljd/TWJHvm
-----END CERTIFICATE-----

View file

@ -0,0 +1,12 @@
-----BEGIN CERTIFICATE-----
MIIBuDCCAV2gAwIBAgIUWmBx0F4R+u1yiOV+uV/KjYvcg2IwCgYIKoZIzj0EAwIw
FTETMBEGA1UEAwwKTXkgSG9tZSBDQTAeFw0yMzA5MTEyMDU4NDZaFw0yNDA5MTAy
MDU4NDZaMBExDzANBgNVBAMMBiouaG9tZTBZMBMGByqGSM49AgEGCCqGSM49AwEH
A0IABDrWRpMOMjO+8OQ4FfPI0zazvn+U7VTv1cpHSGLKYqkpLSVaZk7RG/HWYCpk
Gu4UpKYDsaRuh8c9MghAXgb7ihyjgY4wgYswCwYDVR0PBAQDAgXgMBMGA1UdJQQM
MAoGCCsGAQUFBwMBMCcGA1UdEQQgMB6CCmh5ZHJhLmhvbWWCEGh5ZHJhLnRhbW1l
bmEubWUwHQYDVR0OBBYEFKFSNgf1IY3Qujb9H6YpHuljdHLNMB8GA1UdIwQYMBaA
FNyxxYRsE96jGBjfUprBXqgyB87TMAoGCCqGSM49BAMCA0kAMEYCIQD6czyqmeZR
7Y2UqAVJ8sf8AXH9BaC5bm2ULrgj2ST3fgIhAO9mMGGm74Ja7mLslQr9YYZ5OsRj
qiUckcTvq103Y88d
-----END CERTIFICATE-----

View file

@ -0,0 +1,11 @@
-----BEGIN CERTIFICATE-----
MIIBozCCAUqgAwIBAgIUO04kNUY2A8tnfXOZvpmAmdhHGk4wCgYIKoZIzj0EAwIw
FTETMBEGA1UEAwwKTXkgSG9tZSBDQTAeFw0yMzA5MTkxNTM1NTdaFw0yNDA5MTgx
NTM1NTdaMBExDzANBgNVBAMMBiouaG9tZTBZMBMGByqGSM49AgEGCCqGSM49AwEH
A0IABK/MPQ/QLUfr+9t7YviG1/rcPtf/934LIvHOfqUeGrJXGffoRzFtCXWn1x53
LVnHbGrEVMOyQU9OxXI4KDUIEfujfDB6MAsGA1UdDwQEAwIF4DATBgNVHSUEDDAK
BggrBgEFBQcDATAWBgNVHREEDzANggtsaXN0ZW4uaG9tZTAdBgNVHQ4EFgQUgD9D
12rOh8EDhNOK+8ub8j5G0jcwHwYDVR0jBBgwFoAU3LHFhGwT3qMYGN9SmsFeqDIH
ztMwCgYIKoZIzj0EAwIDRwAwRAIgXeZNJkAJCmkk+l7hJwzQwoSNPFRDs7gEkSHo
oaenNXQCIFMGsPzeId+9YqRE3cLdabrNzlT18Cjfc1yIITu7na27
-----END CERTIFICATE-----

12
secrets/pub/note-home.crt Normal file
View file

@ -0,0 +1,12 @@
-----BEGIN CERTIFICATE-----
MIIBtjCCAVugAwIBAgIUXN08epvZag+/nGI/ZEM4tGUXfjYwCgYIKoZIzj0EAwIw
FTETMBEGA1UEAwwKTXkgSG9tZSBDQTAeFw0yMzA5MTEyMTAwNTRaFw0yNDA5MTAy
MTAwNTRaMBExDzANBgNVBAMMBiouaG9tZTBZMBMGByqGSM49AgEGCCqGSM49AwEH
A0IABE1Vxl338d9ySJtgtH78NIZRJepuP0FVgrAFsyUEPHdKUdMAdh+7sFggyK6p
SAx9EKltFSxGFyG4G17lkBKyRIqjgYwwgYkwCwYDVR0PBAQDAgXgMBMGA1UdJQQM
MAoGCCsGAQUFBwMBMCUGA1UdEQQeMByCCW5vdGUuaG9tZYIPbm90ZS50YW1tZW5h
Lm1lMB0GA1UdDgQWBBQAB6pGVPHG41SSJCCEN8twdC8yyzAfBgNVHSMEGDAWgBTc
scWEbBPeoxgY31KawV6oMgfO0zAKBggqhkjOPQQDAgNJADBGAiEA8LAifV0QPVdu
GT9AHyIpf6v+wD4iAgWyu6d55alZxTgCIQCrwbE1DWeNH6K7KCptx/DQvT4IdfPp
naLgQDeyNJ6XVA==
-----END CERTIFICATE-----

12
secrets/pub/read-home.crt Normal file
View file

@ -0,0 +1,12 @@
-----BEGIN CERTIFICATE-----
MIIBtTCCAVugAwIBAgIUOg0RjIDCOvyChdDlzX3mC5PPEtgwCgYIKoZIzj0EAwIw
FTETMBEGA1UEAwwKTXkgSG9tZSBDQTAeFw0yMzA5MTEyMTAwMjRaFw0yNDA5MTAy
MTAwMjRaMBExDzANBgNVBAMMBiouaG9tZTBZMBMGByqGSM49AgEGCCqGSM49AwEH
A0IABD4uSonzNQZdPXfq/NzKLenJesYl072GI6bP7hOsKQtNBAVNk0pyZT1c4eUw
YQicdZZVHj3LVfbs6Hj1KZfKYI6jgYwwgYkwCwYDVR0PBAQDAgXgMBMGA1UdJQQM
MAoGCCsGAQUFBwMBMCUGA1UdEQQeMByCCXJlYWQuaG9tZYIPcmVhZC50YW1tZW5h
Lm1lMB0GA1UdDgQWBBQirv7Sy4v/XkgyKxSLKgxk3UbyzDAfBgNVHSMEGDAWgBTc
scWEbBPeoxgY31KawV6oMgfO0zAKBggqhkjOPQQDAgNIADBFAiEAikKZW7DeYQkk
YetdV5zA4aghMg1pU6JKRUQ70aAD8kICIBbGg4zxBsD+5zN9VFB4HbRcTpAN6PM+
k6vm3VLEG7Tf
-----END CERTIFICATE-----

View file

@ -0,0 +1,11 @@
-----BEGIN CERTIFICATE-----
MIIBpTCCAUugAwIBAgIUQ8Eqp94U1FXdTYOO189xvsztY80wCgYIKoZIzj0EAwIw
FTETMBEGA1UEAwwKTXkgSG9tZSBDQTAeFw0yMzA5MTEyMDU3NTBaFw0yNDA5MTAy
MDU3NTBaMBExDzANBgNVBAMMBiouaG9tZTBZMBMGByqGSM49AgEGCCqGSM49AwEH
A0IABMfz3k3p2OJfthi/4Vu6C4xt3tmer/gntU1nMhMSC46j2aB4G16n2+v1+y6o
TVRgt3koEQ0G2tRF5y1vzSv3dE+jfTB7MAsGA1UdDwQEAwIF4DATBgNVHSUEDDAK
BggrBgEFBQcDATAXBgNVHREEEDAOggxzdXBwb3J0LWhvbWUwHQYDVR0OBBYEFAzB
/BA9Eay0ImLytNHttgtyEAKjMB8GA1UdIwQYMBaAFNyxxYRsE96jGBjfUprBXqgy
B87TMAoGCCqGSM49BAMCA0gAMEUCIQCXnWV9z35YeZ632ckSRcxJETtjZ0Fd4O2M
pqHwZsZ9AQIgKjkeRytB+wm/0Ok0oU9G1n1ebJiv1pfg6Dv194nLcs4=
-----END CERTIFICATE-----

12
secrets/pub/time-home.crt Normal file
View file

@ -0,0 +1,12 @@
-----BEGIN CERTIFICATE-----
MIIBtjCCAVugAwIBAgIUd1yXaqtMeNbk7paeDtIWZdLu4vowCgYIKoZIzj0EAwIw
FTETMBEGA1UEAwwKTXkgSG9tZSBDQTAeFw0yMzA5MTEyMDU3MDBaFw0yNDA5MTAy
MDU3MDBaMBExDzANBgNVBAMMBiouaG9tZTBZMBMGByqGSM49AgEGCCqGSM49AwEH
A0IABGIrgPKaVeivHhUXcDoqSi6B8ekG8bKKFfv3eiCqn9F6whQQGnsMfYU83QKW
cCoPlYoi+XBDn84L9eGxSeGD5/CjgYwwgYkwCwYDVR0PBAQDAgXgMBMGA1UdJQQM
MAoGCCsGAQUFBwMBMCUGA1UdEQQeMByCCXRpbWUuaG9tZYIPdGltZS50YW1tZW5h
Lm1lMB0GA1UdDgQWBBQHCqEcZhumvbdAjx2kTvV3nnx4IDAfBgNVHSMEGDAWgBTc
scWEbBPeoxgY31KawV6oMgfO0zAKBggqhkjOPQQDAgNJADBGAiEAr5LIbJDW8a8D
DdZELftZtnwItpEvH7tWCBi9YoXH8SACIQDs6AT73I+t3hv7CIdFwg102kfbmP0r
Wk5GBhaULhsQ3A==
-----END CERTIFICATE-----

View file

@ -0,0 +1,11 @@
-----BEGIN CERTIFICATE-----
MIIBqDCCAU+gAwIBAgIUNx4MjjGLBPmWgtM6k/fpCiRGjhIwCgYIKoZIzj0EAwIw
FTETMBEGA1UEAwwKTXkgSG9tZSBDQTAeFw0yMzA5MTIyMDA5MzVaFw0yNDA5MTEy
MDA5MzVaMBExDzANBgNVBAMMBiouaG9tZTBZMBMGByqGSM49AgEGCCqGSM49AwEH
A0IABJRKM1JGygO0OsKgXM78NCNO5hs8C18O6bGZ/fFQT6g5t1Q2Xoifce+cz762
yPLdxOa0TUY+V6yOof4xzJOwA4ajgYAwfjALBgNVHQ8EBAMCBeAwEwYDVR0lBAww
CgYIKwYBBQUHAwEwGgYDVR0RBBMwEYIPdGltZS50YW1tZW5hLm1lMB0GA1UdDgQW
BBRzX4jkv3ZoWj8jJhesuvw2VASLnzAfBgNVHSMEGDAWgBTcscWEbBPeoxgY31Ka
wV6oMgfO0zAKBggqhkjOPQQDAgNHADBEAiBmKNNSIRbwN0FL+yQk/6EHj/mkxkXJ
e8VF/sumjovX2gIgd9/op8+wre2p03AW7ySTrI62Z19AKG0hCi/c/aDwNYM=
-----END CERTIFICATE-----

12
secrets/pub/todo-home.crt Normal file
View file

@ -0,0 +1,12 @@
-----BEGIN CERTIFICATE-----
MIIBtjCCAVugAwIBAgIUKYGxBoZ6WE8weKTvfxv5aLjWtycwCgYIKoZIzj0EAwIw
FTETMBEGA1UEAwwKTXkgSG9tZSBDQTAeFw0yMzA5MTEyMDUzMDlaFw0yNDA5MTAy
MDUzMDlaMBExDzANBgNVBAMMBiouaG9tZTBZMBMGByqGSM49AgEGCCqGSM49AwEH
A0IABMf8TA4m5TSD2Dacnw6HAOGztS/4N8C8Zf6qvkaxFnb1/u3RRyWDbvftwPaU
xrgPDRRhv0+mV3vhoAmR0sXtu/SjgYwwgYkwCwYDVR0PBAQDAgXgMBMGA1UdJQQM
MAoGCCsGAQUFBwMBMCUGA1UdEQQeMByCCXRvZG8uaG9tZYIPdG9kby50YW1tZW5h
Lm1lMB0GA1UdDgQWBBQrzfQU0RcxJL/WZIp85GsvrghM/jAfBgNVHSMEGDAWgBTc
scWEbBPeoxgY31KawV6oMgfO0zAKBggqhkjOPQQDAgNJADBGAiEAr2yCON2HkujZ
Apaf225rY9gUoKrE82sb/wMO6B8XO/ACIQDht0XCzaIz/GDC5UNregZf/ClgeZR2
4N056i3x2+9DUg==
-----END CERTIFICATE-----

View file

@ -0,0 +1,11 @@
-----BEGIN CERTIFICATE-----
MIIBqDCCAU+gAwIBAgIUH1iB1XlZtZB8VUHRkOG8cVJfgbowCgYIKoZIzj0EAwIw
FTETMBEGA1UEAwwKTXkgSG9tZSBDQTAeFw0yMzA5MTIyMDA5MjVaFw0yNDA5MTEy
MDA5MjVaMBExDzANBgNVBAMMBiouaG9tZTBZMBMGByqGSM49AgEGCCqGSM49AwEH
A0IABCJq+/a6j4dX76vsu7/dNPamrPsW0c/BjSNKk3vJ/WikKuqP2JsnUTMjkI0Q
cGtNa/af8COfuGdEFwi7Qocd5yyjgYAwfjALBgNVHQ8EBAMCBeAwEwYDVR0lBAww
CgYIKwYBBQUHAwEwGgYDVR0RBBMwEYIPdG9kby50YW1tZW5hLm1lMB0GA1UdDgQW
BBTf8QscirR67SW/ZMzxQR4QAFDT2DAfBgNVHSMEGDAWgBTcscWEbBPeoxgY31Ka
wV6oMgfO0zAKBggqhkjOPQQDAgNHADBEAiBpuJrfXv2V10bLSQ/0jF6A04ciiLWU
T/Ass/vxGMiOTAIgJlgL6HwIMfYmhgvY/Qjm5SNKS35+Pf2HXVWprHJizHg=
-----END CERTIFICATE-----