ssh key reroll

This commit is contained in:
KoenDR06 2025-09-30 23:24:10 +02:00
parent aec7763929
commit fb781d6e8a
10 changed files with 191 additions and 42 deletions

View file

@ -9,5 +9,7 @@
networking.hostName = "luna";
networking.extraHosts = "127.0.0.1 koala.rails.local";
system.stateVersion = "24.11";
}

View file

@ -1,12 +1,13 @@
{
lib,
config,
inputs,
pkgs,
...
}: let
inherit (lib) mkEnableOption mkIf;
cfg = config.horseman.base.secrets;
secretFile = path: ../../secrets/${path};
username = config.horseman.username;
in {
options = {
horseman.base.secrets = {
@ -15,12 +16,35 @@ in {
};
config = mkIf cfg.enable {
environment.systemPackages = [
inputs.agenix.packages.x86_64-linux.default
];
environment.systemPackages = [pkgs.ragenix];
age.secrets = {
wifi.file = secretFile "wifi.age";
personalSSHpub = {
file = secretFile "id_personal.pub.age";
owner = username;
group = "users";
path = "/home/horseman/.ssh/id_personal.pub";
};
personalSSH = {
file = secretFile "id_personal.age";
owner = username;
group = "users";
path = "/home/horseman/.ssh/id_personal";
};
githubSSHpub = {
file = secretFile "id_github.pub.age";
owner = username;
group = "users";
path = "/home/horseman/.ssh/id_github.pub";
};
githubSSH = {
file = secretFile "id_github.age";
owner = username;
group = "users";
path = "/home/horseman/.ssh/id_github";
};
};
};
}

View file

@ -14,25 +14,17 @@ in {
config = mkIf cfg.enable {
services.openssh = {
banner = ''
==================================================================
=== ==== ==== ========= ================================= ===
=== ==== ==== ========= ================================= ===
=== ==== ==== ========= ================================= ===
=== ==== ==== === === === ==== === = = ==== === ===
=== == == === = == == = == == == = == ===
==== == == === == == ===== = == = = == == ===
==== == == === ===== == ===== = == = = == ==========
===== == ==== = == == = == = == = = == = == ===
====== ==== ====== === === ==== === = = === === ===
==================================================================
'';
enable = true;
settings = {
PermitRootLogin = "no";
PasswordAuthentication = false;
KbdInteractiveAuthentication = false;
AllowUsers = ["horseman"];
};
extraConfig = ''
Hostkey ${config.age.secrets.personalSSH.path}
Hostkey ${config.age.secrets.githubSSH.path}
'';
};
};
}

View file

@ -7,7 +7,7 @@
}: let
inherit (lib) mkEnableOption mkIf;
cfg = config.horseman.users.default;
homeCfg = config.horseman;
username = config.horseman.username;
in {
options = {
horseman.users.default = {
@ -18,10 +18,10 @@ in {
config = mkIf cfg.enable {
home-manager = {
extraSpecialArgs = {inherit inputs outputs;};
users.${homeCfg.username} = {
users.${username} = {
home = {
username = "${homeCfg.username}";
homeDirectory = "/home/${homeCfg.username}";
username = username;
homeDirectory = "/home/${username}";
stateVersion = "24.11";
};
@ -30,6 +30,12 @@ in {
gh.enable = true;
git = {
extraConfig = {
init = {
defaultBranch = "main";
};
};
enable = true;
userName = "KoenDR06";
userEmail = "koen.de.ruiter@hotmail.com";
@ -41,8 +47,8 @@ in {
users.users.horseman = {
initialPassword = "1234";
isNormalUser = true;
openssh.authorizedKeys.keyFiles = [
../../config/ssh/authorized_keys
openssh.authorizedKeys.keys = [
"ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIPpt0NisTZPYDdumMXhxaKv3JygSE0EKE6OiYw4A8ot7"
];
extraGroups = [
"wheel"

View file

@ -3,13 +3,21 @@ let
terra = "ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIPb4xCSo9JDflQJs8CsCjDWZSFXdavI9c9aqqozkL8OM horseman@terra";
solis = "ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIA/X1pzKCThxxIkrb7ooBN+eJW8BKr8vJT7c1L7UjSfF horseman@solis";
users = [luna solis terra];
horseman = "ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIPpt0NisTZPYDdumMXhxaKv3JygSE0EKE6OiYw4A8ot7";
users = [luna solis terra horseman];
lunaSys = "ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIFu+XwTX1vF8Xqlna99Tu50TBT0cmOatb2LLwnC/33DU root@luna";
solisSys = "ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIDKepQ6sJahN0VQTMowIiga2WZBCaNBTadca+OxCV6T6 root@solis";
terraSys = "ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIN6Mog8ujGXnEZ3lXm4zrYclh/0xx4LhZV2U5zqqxALE root@terra";
systems = [lunaSys solisSys terraSys];
all = users ++ systems;
in {
"secrets/wifi.age".publicKeys = users ++ systems;
"secrets/wifi.age".publicKeys = all;
"secrets/id_personal.age".publicKeys = all;
"secrets/id_personal.pub.age".publicKeys = all;
"secrets/id_github.age".publicKeys = all;
"secrets/id_github.pub.age".publicKeys = all;
}

29
secrets/id_github.age Normal file
View file

@ -0,0 +1,29 @@
-----BEGIN AGE ENCRYPTED FILE-----
YWdlLWVuY3J5cHRpb24ub3JnL3YxCi0+IHNzaC1lZDI1NTE5IHcraE1xZyBmTGVj
Y2xzVW1LQmR3d0xMemRRM2g4eXdYQ0wrN0p5NjlxbU5FREN4cVZNCmFWcEorY0Zl
eFY5bGpNWkhwUzZkWUkyTVo2ZmN4ZUZHVVh0S0x4VGpwQXMKLT4gc3NoLWVkMjU1
MTkgRkhGc3p3IHdCdWtCRXJVaytwblNzNjQyeUkrSWNSTXc4QnZUY3M3Z3R4NXYv
SUxDd1kKQUFwdlJlZVN2Z2F0Sm9Nc3NteUxwRk9sOGRSMnpyR2NuckxpaFVZdjJr
cwotPiBzc2gtZWQyNTUxOSBGZnZ4d0EgeDBDRk1aTEphV1dPc0xxQTJkM1gwQ1Y5
SGUwNXFJZm1YVHhyRExSSXVYSQo0N2FBUkJrbyt5dzQ4Zm9TZEFUamwrWEVzWXVr
ZDhmTnFpaVRlQkZGVkhnCi0+IHNzaC1lZDI1NTE5IC9tczZkdyA1dVg2NFlMS3pv
bUQ5SWs0S1RENWI2OVUyekZwOFRuYXNTeWpxcGhwZjBFCmwwc2xXbEZ2L3JWUTND
R1ZzY3pLTlJYMVFJMHRVOUgyTWJqQXFFSGVpemMKLT4gc3NoLWVkMjU1MTkgZ1BJ
ZFpBIEV0ZW1pZ084azl4QWdPSzlZcXhwRm03akVJWUk0Vjdxa3lFZ1NPRFFnbG8K
MTFTQUYyblpBajg4bGdqZndEREx1NFdKOXpSdTkyMDdJbmZPQ1JWMERkWQotPiBz
c2gtZWQyNTUxOSBkYk9laEEgdVdWUzFZOWttQVJlbXNKQ1NHWENTRzNpNGJ3TXIy
cEpDeVU3QWFZdlFWOApPYjgyQlpUU3N2NGF5YlRZMUVKZlN1a2UzMDJCSjFmTUIv
cGNnRGlsWmtnCi0+IHNzaC1lZDI1NTE5IHR2L0N6ZyA3aEFKVHl6dGc1cXlpTS9n
UEdxWGtKVFFuZ1VZNzUxREowNTlNd2EycXhBCmYwaVNzTFR2K1A4SFk1RHpmcnp3
eHdKeG4xTVcwbG03MnlmK2kreTVPOGMKLT4gJj5rWWFOSnstZ3JlYXNlClB4dwot
LS0gVTU3enpIUXNHb3d4MUlHdXpyc1N2UVcvSjBFNXRXSzRJdGVXUmlPeS96cwoi
OZ9mzF0pxijvLBPf+OkxEvnGRY5n92boppe8JZtIrY2HM9Y27O7NnUUGGZn7iPBh
OU3c0wq25OHOfVHBmj+W7zlvreIn5Gztgox1XWQ+xTFC3pv6obXf76f9LgrtbprB
fD6u0i9VkXiY3PyR4gTb5M8eMLIGqC07dsnIt9rZiu15OOFz4a5Q2vTPRYJ4cNBA
bVXz7oSowHFQ0hYejdKqDglDr+U/Ya4/o79oFjJ41x8k22NFjCpp0WmvcK/sVhEw
iuoiKa6f5KQX+K0h8nIq7hDJeMBIEox922fsgAFKAODM7GFGyXNYmuJmT9x73+rO
xzL0nBhzIZqAllIj+7KsQ05U3qR9dJ+KvFtuJSwCgpr9veM1Ak33p9SgZFuvBSmC
02z7yNOB+WQJszAdHgF6SRPP6sVUlKcufgHR1UxMW1IwCgCzJ1FF/k/PWMkfs9Fr
TWZGfiE2WAbz3xrgQBVzNEPi6EXo1LbqX+5JvljXGTYQyv27jB5172hdaSJnw8Vt
6XBfPIOsoq6BeAOeD9clkBaCE94jZ1Suxtkaay5DrhchKoCBpvVlTC9+MiOW6A==
-----END AGE ENCRYPTED FILE-----

25
secrets/id_github.pub.age Normal file
View file

@ -0,0 +1,25 @@
-----BEGIN AGE ENCRYPTED FILE-----
YWdlLWVuY3J5cHRpb24ub3JnL3YxCi0+IHNzaC1lZDI1NTE5IHcraE1xZyAzVUpU
c0pIWE5ySFFiV0w0eitla1RocS9UVkV3clZCM1lRcWVsaU5aclNnCjZQUDdWU015
bnlHd0orWVZ3MGloZnMvb3oyNU0xNDVxK0drcnc2eVhnVjgKLT4gc3NoLWVkMjU1
MTkgRkhGc3p3IHptRzdCTnducm5FOXkzTjhObEFIdm9GemtEQzVzQ0srd0lsNkxw
ZlBzWEUKNGRnSEM4R05YQXhuQ1dFUzNacTFKa0hJOXpRSXR6RXJscHhheHRnWnFY
dwotPiBzc2gtZWQyNTUxOSBGZnZ4d0EgbWZ5YzFoNmpxSGNOMThmWUF1V2pQN0Zn
SXBYa3A1U0YrZzEwK2owTG1tdwpYUkQ4NTQreVAwMWgySUdXNDdNa1Bub0FSeTha
czJjYVZEVVliWHFlOFd3Ci0+IHNzaC1lZDI1NTE5IC9tczZkdyBKMWRyMGhlVkxz
NFhqdkJkWlZSTG1adFhzNTBQWlJCWjZrem9TSS9XajNRCmh6bXZFbGZFR1lWU3lD
R3RXdTV4KzdDeVE5UzRkZDFFd0lFZy9UR1ZuNU0KLT4gc3NoLWVkMjU1MTkgZ1BJ
ZFpBIG9BbUFxTTRndkdKTVJJUkRLNjZGWjRSZGo3Sy9mRGxGUWplclBxaEcwWGMK
L2wrZnBhblB2eG0zRlJSb3FWZ3JIejlPdXJtbXFzdzhyZGJIeU45SmprWQotPiBz
c2gtZWQyNTUxOSBkYk9laEEgVVZSZFl3djhoZSs3U21jOWlCMFM0TnptVHcvQlQ5
UTA0YlVBUHQyT21RRQpFZkppaDBUUlg2Z2l2SW1TU1RGQ2pEaStaYmp1QmFCWUhp
bll5SUcvVitJCi0+IHNzaC1lZDI1NTE5IHR2L0N6ZyBZZW83OHArZGlSRjJ3YnR5
b1NxbmlpaU42NXNoTEJWNzBudE8wOG9QVFRBClpDa1NLNVBVbVBUemlLdTVYem0r
Umh2ZFdHVVdqbUFQS095N1BoME5vVWMKLT4gXG8tMVIlJi1ncmVhc2UgbGpcN1BI
LiBWMlBbaFhrCmFkTTNoUVBwYm1INkZrTGYxRXZFMWJ5SUNnYkcycEY5UUZwS3hM
OEtJVnF2UExLTHhmNDFNS0dNaTVrNkRsYnIKWG9qcVVLVUFKU0hiRHRCRy9neEhR
eU5vY2l1eko3RnUxRWNrZWVZCi0tLSBaNGNxczd6ZWR0M2RzbGFMcG5jRUpTdnFR
bkdMWjg3STljeXY5RGRYZmNZCnRotMs8DempyiOjBlOZSLNq20oc62nW0TSg+zqW
AeE5yvwoB7UqO24xv8lTFWJkymYW1ud7blRLvwGdDAcvlias1VL/RcJKmt++Hpas
HMlevfBaMLK17MzFB1sQWi3iN6/542jnLjQYRdgZA7FRVjcz
-----END AGE ENCRYPTED FILE-----

30
secrets/id_personal.age Normal file
View file

@ -0,0 +1,30 @@
-----BEGIN AGE ENCRYPTED FILE-----
YWdlLWVuY3J5cHRpb24ub3JnL3YxCi0+IHNzaC1lZDI1NTE5IHcraE1xZyB6MnN6
NnBYeStrcWZ3VS85QlQrRm52K2tkY09ibWFHQjdtQmFjc1VndFE4CnBIWHFWb3A5
MDFvR0ZHTjdHMzZlOTN4R2xzY0ZTU2VnWHRITUtyL09ZODQKLT4gc3NoLWVkMjU1
MTkgRkhGc3p3IEEwWFdud3hqUnVZOVNtWENhMFZVZ1U4bGFIVWpQOStSSk5IMXNm
MzZ3aWMKeFFlS0lHbUEvZnhGQ0tyemc1RkM1QWIyOGU4ZFNSUHFpSlhMYUtrK1dG
WQotPiBzc2gtZWQyNTUxOSBGZnZ4d0EgbGRnOXFyc1JDZnFIVWlycS9UWWZwRzR1
b2FDWFcxeEoyQmljRXl3WGdROApZejU5U3dMK3FXblkyYk9KakMxQTlvWitxWVkx
a1NVNXZocHRWUzhhd24wCi0+IHNzaC1lZDI1NTE5IC9tczZkdyA5WWNiL2UyS0ho
WndOYlpGM28rZFlMTmsvQmViU1Y5K0N6WXloN3lOWGcwCnQ1UUZ4M2YzSHQ0LzNM
cUwxcXd5Y0Q4M1hDVk51bmtkS2RVcHJZVXJrcVkKLT4gc3NoLWVkMjU1MTkgZ1BJ
ZFpBIFIzM1Z6SnFuQkJvZnAvWjhrMFRyMHN6bCtzMjlGa29PRWRRWERZakFmd1UK
Y3grekRMay9wc3lMWlo5RHJZRWZQU2RqRmtpU1czdkU5d1R6TUswRkgwZwotPiBz
c2gtZWQyNTUxOSBkYk9laEEgeW0rZElPY0hhbXhlU1NnYk5lRkhqQlNjaW41VGF1
b3M1Wk55TzM0RTIxNApjQ2NqL1pUZEx6THRXd1M3NXJkTFJzRGxENDIxR3lyL04v
WDIyK2xrRTdjCi0+IHNzaC1lZDI1NTE5IHR2L0N6ZyBSMDF0bzFDSkdlVm4wZ2Z0
TVBJeUwybFhYR2JkaXFVaU5LMGJ5a1VGOFE4CnJJRXJlbHhFY1JYR0ZBVmNmdmhk
dDM1ZVZxdVdIZTIzdEJMNmNmU2Evdm8KLT4gR2ErMS1ncmVhc2UgezV9IDUlNyBr
VXl+ClNzWQotLS0gaEpZVHhzSXR5a1pKNkw4VjVIN0pNWnZYaTQ5eW85SEx3M3Vl
ZjFJNWwwUQokSt6b2lIoqYtdX9INf4sVnsECNoXCU8SO7CxvSHlzcEZ8KKp9RLom
6J6wUTNXD7+GQwPGavtdlW8m5/gUJrk6MDodJCPo7jE3onBZ2KmfDqQnBRB0nGDZ
PsBM5lWfrgfyLO1Nyq7i3Sqsvdi2/4Ye+T6qg00ZYUBO+fGubsq0cWYe/AnSNxkX
KxF5/e6cHbHYjab9exEm+hIRN71/UCjs/MJTPDka1m6aUGuo7gOVdl1xLDc/9N4r
2swPMN6k3R0v5+CuYh9zVFpUi2SCncRjAyo/OxaKdO4O8qgsJthJXEGJFN9biJ6j
ACjSABv8Pt3HcC8NHAQyLRrsgzPMf8jlEwfc4Wx0mobcQopeeeDYQgtH7m8jgROU
N+3CoGJ019WuHnZfOCzYKv+4OAPr/y0e+S4lOvr352gf5Hf5JIV1X1WTR84SyQoH
S4m0cylkQDVHHVubPaC2ru6ZukVpOQS8Ee7T7FYu+yzKKkSPK/u/K5Hg9a9JYBzG
3G5wjnV0yLt7PY2NtMgi4EXsVPv2gFGSmlSuJSMknSmiyJmKAwv8u+xpcBZWy6XR
affIGfFWQwbTeHDvZVo6+rz8Yg==
-----END AGE ENCRYPTED FILE-----

View file

@ -0,0 +1,23 @@
-----BEGIN AGE ENCRYPTED FILE-----
YWdlLWVuY3J5cHRpb24ub3JnL3YxCi0+IHNzaC1lZDI1NTE5IHcraE1xZyBOOVAz
TzlwWllFUUhlT1loSzliZ2VEc013VDZ0SldIYk91dk90d0prbG5FCkVWTW00MjhO
ZXVwazNod0hsLzRjZ2RtOW41OHJiUVpjSXJGT1g5QzBkd2sKLT4gc3NoLWVkMjU1
MTkgRkhGc3p3IEpwbXFlQXdjRTJyZlg4cGtJME5CanBxejBFRXo3dWQvOVFIbkhi
MS92em8KQmgzUkJnczRmOFhZN2RQUHNnSTBzNHNpZm04V3d3WVJCTUxEMDJxdXh5
OAotPiBzc2gtZWQyNTUxOSBGZnZ4d0EgTUowaG5hRDJQdDVlSi9pcHJNcFVxbTRL
NzZNWitzMUxPeW5acGYyeVlCVQphT3J6SGVhYS92Mm5CNlhZenh5Q1FZRGcveUlY
SHp4MTlvWk9KcDh1V0owCi0+IHNzaC1lZDI1NTE5IC9tczZkdyBQdVIvdm03b2ZQ
YXlBTHBPQ3BrZjViSzZJYmZKazROOHBSN21wQ1hnTkVzCjU4cFo3UjkzWkRIc3Jr
VE1odVVLVUlPN3hha2pYYkJPc1lLNWdYOFhCVkUKLT4gc3NoLWVkMjU1MTkgZ1BJ
ZFpBIGNWQWxQTVNTVHo0NnlXcVVHc2RUaTVPKzNoWUpvTWlUaDBkS1dUZlE2SGMK
Rjh4bXZSVGVwMXlEOXUrOGZsUkNWUFBoSkxSUlJHUGlCV1I1YlpKOXgvcwotPiBz
c2gtZWQyNTUxOSBkYk9laEEgM3pveE8xTEM4MDV5RkhaaXNjb3MzTHJPMUVObWhi
bGpIVWpUcjVrWkhtbwpRTytMMHc5WXo2K1l6R1pDTFpJaUdXR0dKOFJwSlhXcjB0
V0I2QlFneFNzCi0+IHNzaC1lZDI1NTE5IHR2L0N6ZyBkcXo2R0N3aE8wcVRCdlE0
bk5iNXM1Y0h4SHNkcmdBSkJ0bDhNdjE2L2xBCmFiRlJYRHZrbE9Nd09ITHArUFNC
dGs3NVhYU2gxUEpENkdrSjVFRVZFaGcKLT4gI2srQGNYQC1ncmVhc2UgZS4gQU5N
CmxsdklVZ3NNcEZicm93MW9ZSHI4Ci0tLSBXRFFQZHVNYUNnMFgxTFVqUUxVcGZk
Y0l1eVhsU2ZsNmNpTWt0KzdXeU5ZCs75BoX2Ruvhb3nGBFl7OEXf9x0qHkOC9Z7T
a75v8ThxuFlFW218+HRjrHm71wb2EUr+CApKNUi0oKuumcZKRu3VRAC9QI60cB+n
R7xCLpmep9Fyt7VKiJPmhZjHWby7QrYp6xXvV4sh1kTKAQPcKGKl
-----END AGE ENCRYPTED FILE-----

View file

@ -1,16 +1,26 @@
age-encryption.org/v1
-> ssh-ed25519 w+hMqg oeaZpl/4qlAYqwazEBiUE/DLf5DW+Z6ULX4ayPzl7XA
VgNDwtxDfdhKApS6is58P89i81H8rqkU8kALMghUem0
-> ssh-ed25519 FHFszw 6UtA3qlpQXq3OcsHJGBHmA+V38lDj6Nlq3/Oir+gv3I
IDh2juQXVX7aoRIGrhAq3VKkjP8Qm4MHS6ynl0N4u0c
-> ssh-ed25519 FfvxwA Ob/Xj/wWiEjDlqgr/I56qnzNO43SW4zppsV33p00vT8
LNExEqLvCVCB+Qd8ly5CZApuxEV5mbj1lgqaVnihdQM
-> ssh-ed25519 gPIdZA xQVoWPtcLPl3BkCyjhCY4AN7evbnYFEyfqjsw40gnhQ
Y1Mqyh2fwtfpWBtSbG2Kc/aIA22iQehprXxYfpedtEk
-> ssh-ed25519 dbOehA ub1XM3ycdJfFw1NPkqsJaQi38+DcasDKBR7iYp+lEG0
UsewvfSiVJAw1INxthjFcACO3kn1WV8RCH0ZbmMli3A
-> ssh-ed25519 tv/Czg UQx00vHI/dRAZKVt3PExMPB6ovpRYBm3RCP0tyvHZjU
1JjVG7nbqVBduHjdQclEPxOdAQwXUDv2YRHczESYvQI
--- jjRAfELLOWYen+lu83Nxf3jC3IkNMrmze1oZeudz044
b%e±à>†T¹­€Íï¦Ê;‰Ø¥R¡”1ü •ÖNˆ7¾kóFû;S0O¨lN,mhÆÐ)ó6ÁLa1è™øDs\»S+!¯¶ Ý@Y÷IM?•^ V¬í¢YÛ?¦Â':
.ýú$³—›Ì¾Ä–-«3ê¸Ë‰«­¥˜k¬nÆH§£EÓí¥P*Öüß³Å-ÈJW{wš¯=.¡Æ))2ß™ù¦|n´‰=>ê÷}Ç¿K ª
-----BEGIN AGE ENCRYPTED FILE-----
YWdlLWVuY3J5cHRpb24ub3JnL3YxCi0+IHNzaC1lZDI1NTE5IHcraE1xZyBkS29z
U3VqZkFZcHpySFMrVUNseWo5eWlSUGpFYTJ3NjRwQmZpcExzd1JBCk1JMGJhUk9L
WlV0a2ErL0pFNytJaFhoa0NEeTF4VjBWTXI2NlZRRE5Ra00KLT4gc3NoLWVkMjU1
MTkgRkhGc3p3IDhobitRTXZybjI0Wms4UkNYVEpnZEVZYTN3STYwdHhKOWpWMVVN
YmIzM0kKamZJLyszM3J2bVdSeDFSYVBWVHh3THFsR0dlMVZQSWlEU29mSXBpQ3NW
UQotPiBzc2gtZWQyNTUxOSBGZnZ4d0EgYThjOEJuMmFnRE01M09Zc1hPWXplRGlN
N3VveVFOYlJEdWhMOGZvWndRWQpSMFQ5Y2FabXRnK29JbEZqdFFtNkhsbjNSNDVa
UWlPVVhYYS9YRTlxUlVzCi0+IHNzaC1lZDI1NTE5IC9tczZkdyA4TWxFbkh0MUhO
N3pzdWFGMFFmY1FEYVpJYndndnVHWDdydDBGbkJodlhZCnY0NXJXRGwyN0xRRk1n
MXFjMVJWTEV5bUNlTUlWZkV6TTVhUTVrVGdpbVUKLT4gc3NoLWVkMjU1MTkgZ1BJ
ZFpBIEhFODFxd2pFRVYzOWtyWGN3YU5PcFo4ZjE4Q0dyYlI4ZC95RnhoY1FMemMK
MFpCNUNPT0ZTUVB5MllWSDdMemdJeUt6eEg2aEI4bUE1L1ExMzlaSUdUQQotPiBz
c2gtZWQyNTUxOSBkYk9laEEgSkI4eUZldGwxbkxrVzBXSkxRUmo2SFVrVDZITlhw
NHZyS3d4eFV2aHdSdwpEdUlKMk9vWE5wdVRXZ0RtODB0ZEVUNm5ZcVFHa25YZlY3
TXFkUFVQbG5RCi0+IHNzaC1lZDI1NTE5IHR2L0N6ZyA2ZDhyNlNYelZWT0ZqQU14
aXlrR3VFWUZUNzF4bEwzYVNRUDFRZENKOG1FCnpwaDR3RkVPZi9hT2NYOVBUbHdS
QXRFYTV2NjZHNGR3a1hISFdTc3pvUGcKLT4gIiZ0Zi1ncmVhc2Ugen45WDNRYAoz
Sy9OU05wdHFTbDI3aGg4dDdzeVAweVpXOCtHMXE1amRJMGxLLzZtV1RGQTNia2dX
MXhESWxvUm1DRzlVVUJCCnUvbEtkZmFGUkZCNDZvUDUzTWFJMlp4eFFOZwotLS0g
ZE5LVWRwSWs5T1ErK3k3Q0lEZ2lSSXMwZVRad2Fad1dRTDBIbk1GNFB3UQovo/1g
EFlHtIey6GQO1prsHpCFZ/+u8kOvDta5m06CufU8zZxX/k0f7p0LgtT66sIdkXQm
dVKXA/DTqGtR6eafy/FceGKD3qziHp9NFgBri1rrsaupN19TJnlkNP/m914vPcsh
eEDElhyxj/rcxDxE1cQCqu+cxg6E5fuliV3amfbYcRz6V7WI8TnyPJsj70CcuQth
dFKMzg+TPzmczSJVlq7NQEYrqCiZ8fXTuYKzSNo3bnkCnlOfhbMd/e0=
-----END AGE ENCRYPTED FILE-----