From 05399c268abbd05bdcf63365f1b509fa69cb1ca5 Mon Sep 17 00:00:00 2001 From: Noratrieb <48135649+Noratrieb@users.noreply.github.com> Date: Fri, 21 Mar 2025 23:12:14 +0100 Subject: [PATCH] mail --- newinfra/nix/apps/forgejo/default.nix | 23 ++++++++++++++++- newinfra/nix/apps/mail/default.nix | 24 ++++++++++++++++++ newinfra/nix/hive.nix | 1 + newinfra/nix/modules/caddy/vps1.Caddyfile | 5 ++++ newinfra/nix/modules/dns/noratrieb.dev.nix | 18 ++++++++++++- newinfra/nix/secrets/backup_s3_secret.age | Bin 662 -> 662 bytes newinfra/nix/secrets/caddy_s3_key_secret.age | Bin 661 -> 661 bytes .../nix/secrets/docker_registry_password.age | Bin 233 -> 233 bytes .../nix/secrets/forgejo_s3_key_secret.age | Bin 277 -> 277 bytes newinfra/nix/secrets/garage_secrets.age | 23 ++++++++--------- .../nix/secrets/grafana_admin_password.age | Bin 282 -> 282 bytes newinfra/nix/secrets/hugochat_db_password.age | 11 ++++---- newinfra/nix/secrets/killua_env.age | 10 +++----- newinfra/nix/secrets/loki_env.age | 9 +++---- newinfra/nix/secrets/mail_git_password.age | 5 ++++ .../nix/secrets/mail_git_password_hashed.age | Bin 0 -> 272 bytes newinfra/nix/secrets/minio_env_file.age | Bin 397 -> 397 bytes newinfra/nix/secrets/registry_htpasswd.age | Bin 278 -> 278 bytes .../nix/secrets/registry_s3_key_secret.age | 10 +++++--- newinfra/nix/secrets/s3_mc_admin_client.age | 22 ++++++++-------- newinfra/nix/secrets/secrets.nix | 2 ++ newinfra/nix/secrets/wg_private_dns1.age | 9 +++---- newinfra/nix/secrets/wg_private_dns2.age | 8 +++--- newinfra/nix/secrets/wg_private_vps1.age | 8 +++--- newinfra/nix/secrets/wg_private_vps3.age | Bin 257 -> 257 bytes newinfra/nix/secrets/wg_private_vps4.age | 10 +++++--- newinfra/nix/secrets/wg_private_vps5.age | Bin 256 -> 256 bytes newinfra/nix/secrets/widetom_bot_token.age | Bin 272 -> 272 bytes newinfra/nix/secrets/widetom_config_toml.age | Bin 4006 -> 4006 bytes newinfra/secrets-git-crypt/mail_git_password | Bin 0 -> 60 bytes .../mail_git_password_hashed | Bin 0 -> 82 bytes 31 files changed, 136 insertions(+), 62 deletions(-) create mode 100644 newinfra/nix/apps/mail/default.nix create mode 100644 newinfra/nix/secrets/mail_git_password.age create mode 100644 newinfra/nix/secrets/mail_git_password_hashed.age create mode 100644 newinfra/secrets-git-crypt/mail_git_password create mode 100644 newinfra/secrets-git-crypt/mail_git_password_hashed diff --git a/newinfra/nix/apps/forgejo/default.nix b/newinfra/nix/apps/forgejo/default.nix index 933fe24..1874cd1 100644 --- a/newinfra/nix/apps/forgejo/default.nix +++ b/newinfra/nix/apps/forgejo/default.nix @@ -1,6 +1,6 @@ { config, ... }: { age.secrets.forgejo_s3_key_secret.file = ../../secrets/forgejo_s3_key_secret.age; - + age.secrets.mail_git_password.file = ../../secrets/mail_git_password.age; services.forgejo = { enable = true; @@ -34,12 +34,33 @@ MINIO_LOCATION = "garage"; MINIO_USE_SSL = false; }; + + mailer = { + ENABLED = true; + FROM = "\"Nora's Git Server\" "; + PROTOCOL = "smtp+starttls"; + SMTP_ADDR = "localhost"; + SMTP_PORT = 587; + USER = "git@git.noratrieb.dev"; + PASSWD = "Meowmeow"; + FORCE_TRUST_SERVER_CERT = true; # lol. it's localhost. + + /*ENABLED = true; + PROTOCOL = "sendmail"; + FROM = "git@git.noratrieb.dev"; + SENDMAIL_PATH = lib.getExe pkgs.system-sendmail; + SENDMAIL_ARGS = "--"; # most "sendmail" programs take options, "--" will prevent an email address being interpreted as an option. + */ + }; }; secrets = { storage = { MINIO_SECRET_ACCESS_KEY = config.age.secrets.forgejo_s3_key_secret.path; }; + mailer = { + # PASSWD = config.age.secrets.mail_git_password.path; + }; }; }; diff --git a/newinfra/nix/apps/mail/default.nix b/newinfra/nix/apps/mail/default.nix new file mode 100644 index 0000000..14b2924 --- /dev/null +++ b/newinfra/nix/apps/mail/default.nix @@ -0,0 +1,24 @@ +{ config, ... }: +let release = "nixos-24.11"; in +{ + age.secrets.mail_git_password_hashed.file = ../../secrets/mail_git_password_hashed.age; + + imports = [ + (builtins.fetchTarball { + url = "https://gitlab.com/simple-nixos-mailserver/nixos-mailserver/-/archive/${release}/nixos-mailserver-${release}.tar.gz"; + sha256 = "05k4nj2cqz1c5zgqa0c6b8sp3807ps385qca74fgs6cdc415y3qw"; + }) + ]; + + mailserver = { + enable = true; + fqdn = "mail.noratrieb.dev"; + domains = [ "git.noratrieb.dev" ]; + + loginAccounts = { + "git@git.noratrieb.dev" = { + hashedPasswordFile = config.age.secrets.mail_git_password_hashed.path; + }; + }; + }; +} diff --git a/newinfra/nix/hive.nix b/newinfra/nix/hive.nix index 6f8f97d..b724da9 100644 --- a/newinfra/nix/hive.nix +++ b/newinfra/nix/hive.nix @@ -178,6 +178,7 @@ ./apps/cargo-bisect-rustc-service ./apps/killua ./apps/forgejo + ./apps/mail ]; deployment.tags = [ "caddy" "eu" "apps" "website" ]; diff --git a/newinfra/nix/modules/caddy/vps1.Caddyfile b/newinfra/nix/modules/caddy/vps1.Caddyfile index 7a6ea25..f195c85 100644 --- a/newinfra/nix/modules/caddy/vps1.Caddyfile +++ b/newinfra/nix/modules/caddy/vps1.Caddyfile @@ -65,6 +65,11 @@ git.noratrieb.dev { reverse_proxy * localhost:5015 } +# hmm. maybe for getting a cert? idk. +# mail.noratrieb.dev { +# abort +# } + ################################################################ # redirects diff --git a/newinfra/nix/modules/dns/noratrieb.dev.nix b/newinfra/nix/modules/dns/noratrieb.dev.nix index cd9a438..1f0bebb 100644 --- a/newinfra/nix/modules/dns/noratrieb.dev.nix +++ b/newinfra/nix/modules/dns/noratrieb.dev.nix @@ -69,7 +69,23 @@ let }; uptime = vps1; does-it-build = vps4; - git = vps1; + git = vps1 // { + MX = [ (mx.mx 10 "mail.noratrieb.dev") ]; + TXT = [ + "v=spf1 a:mail.noratrieb.dev -all" + ]; + subdomains = { + _dmarc.TXT = [ + "v=DMARC1; p=quarantine" + ]; + _domainkey.subdomains = { + mail.TXT = [ + "v=DKIM1; k=rsa; s=email; p=MIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQCjY7PTXNR6CcLiBrv7oiJtXmtRwJC+aQQL4mLMGLCEqtBXA74NiXvW0AP0/BKtVnoWlDJRXWfnB70T9SQerF/BWq8kjlyMmkxex/QuiSDZWLLRpmL4AZ3y7CQY0r++zROwIrNTX95mWAeAlFd8Ug3gXD9lCml5jwM7C3YyATkKMQIDAQAB;" + ]; + }; + }; + }; + mail = vps1; # this needs reverse DNS as well # --- fun shit localhost.A = [ (a "127.0.0.1") ]; diff --git a/newinfra/nix/secrets/backup_s3_secret.age b/newinfra/nix/secrets/backup_s3_secret.age index 33cf4486ea5d963261a83d10f81dd6e0ac9cf2b0..af7bd7f93737ee3209d62d8486d56c5c154fb29e 100644 GIT binary patch delta 569 zcmbQnI*oOLPH0u7WkFJuiFZL@s)ePInRjwZNv3aMo_kqHMY3~1X1-;*wpnRlVQ{EZ zI+ssTNML55Ux0aNx?^sNhf`{$L0*M_Wm-gfRl2uvQKq3+cuu94Nnq&2M#=C{lLD8N zoFtzVM>k^+5C4qviZJtJqac$+XQTYIP#259tZ*ZME3ahx!ynxOqgGng@G$T7+7dM|mb1Cg+A`m$_DXIeNP0=GRB$XPOxK zr#NyM{;l*?**C4)b`y)p4kMja*;SA7s~($_S(@nFJvNcGHDzME_W!$z?JopS>aJy>XvY| z>?Y?NH|u#tm#cqgeCv5Jd0%3T-iZjMt9_dTlplHjpVuhod{plFzk<~@hY#j%TVwP> ME7V~sTi1!x04844N&o-= delta 569 zcmbQnI*oOLPN;iTVW34-hI?R=d1-l(fk|nRk)M%QR<=i8sHL`BNSTRIP*qW`Q-o=- zBUeyrwzhd?ioR=cl~<{2Ws*~2cw&fuhKshduSsx0a;RIVnSPX)NqOrz(@2OqZl`AJ2air4F#8)OF?dU!acn5DQBRQcuUmu4mf1(tZ4`FmQV zf4GB;_S} z7**uuMRMut>MCTI1_mZahF18S`UeN;hn9qw>3djMMua*>mX^5{2Rj>-nbn6Sr)InO z7G!g=^8DC-W`o-N;P86!+v`O2TA#;Fj}7natlWC>>N?$w>$YcVxJ*nx&T|N^*^n|v z>xSpaqP0715*Qwzu34>ElbLvGwoT*)QN7=~zgHcZcUmmifmwOFv0re0V3kXnc0{IYfO|@qb74w|c9^GMp@CDNcT`?safzX4IhU@TLUD11 zZfc5=si~o*LPV9Lb5x*$e^IzwWq`YHh)JGyfJKR!rJIYhyIDzuyLX0JvYTI~XI56G zfunO+Xij!9SAJ4tct}-oma|z(qEnQMc6e!Mc7~U^MO0RDc!YO&N`*yYiF>h`NkL)q z#E;_Pj%ATSg`NQh6(+7FQKi921xb}Tm8nVTVd?3Gq3*s07M1#D`hitd{@M9l{+>CW z&IM6r89AQGd12`xS)tw;g@u96K5mtvsRhNZCHm>%mBj@qo?gk5;~B;4Elq<0!gBKi zeA6>ZOuP!KOr6aubG-E{QhWkkj17wY{DOS){R-UDQyl}j0v+{@O`W`pTwR>Ci&HJq zQ!-4olPdJH{S1;^{qhUUe3QL$oxFU!%RTeCbaizVJd8|&gZ)ejlfsh|J>5-%!b?MP zy{d}blPx1XqH^<7UDE>VL&AMZQ$4~>xF&3nUB!LmkF7a7e{ddmC4+qM0p{ZmZP?j9 z)q2iM{Ackec@y8FmoKFbCeFCZb^e>!(OJn++}A%RuTkxY+dkJ&Innj7d&QS!_D#>E z7xb^QWtL6Sue9ghk;|hn`>22 zIhTiJh-<2AX<&wVXjx!reqN-Ji@TwAYM^$mNp5ITgm#o)V6vBgNT|DCAeXM4LUD11 zZfc5=si~o*LPV9Lb5x*0s&<7>xKU=XMW$I)p>t)LlUr1PqlJE0hL?#!SX4?#T3}YT zxo23ue_mBGSC+AVh`FzEkyl7$v1?XUNwHC2pj)J|Tb_T4rE7(@u}@A_rLlQHXh~xE z#E;_P!5-Qc-T|g1X_c1Q&Ta*fxygoM=00u(g+T$%+R3JF1wJW}5k^Hx`5u8>=H|}n ziG`l7xt94Bp(O^n!Cpp&ZZ1`ZmO-vQX1)~_B`FmqW}(^szFCoz;~B;44a2-F(hE%7 zv$G0|ee=?jQ!Ko*3d76{(o=lWa*cvYQq#-Q3$t>}%tBnbLW&AYGJ@QFz0Av!BeF_7 zgUSjrDh!H}B9aSD(!;%j3M$eIlOhZ}%Dn@*baizVA~Q29jB~uwJ(5!bt3spPl2c2y zlgiUwi#%LB^8yNr^NRE9ODkRSBh16IxeA!_AFon>*N`+L@bKR-ol{5DMb<@MwE1QE zUf}S)f`6Jv8cjP}*%o&`Gd?BQE4^z$_L-l1Z8lDK-hVK|NpqK6^~41)x7KoJGaNo# zc>2NOvRUW*FYZ-e%Q^GL_rAkAFC$-d)tsrysgPJOm#PMVv!pM`Ujv7@;`h?i%uZ=j{Aak)vdaj}z=Nsxb{MQMn?Ym$kp zCzqFrQ<-0cg}bRyYEgirQFwkl(tW%z5&<7%dhviwk>L~ zYrEIE(0JQPf%+vb{`u9B*&P-?na6zB6-!h_M|2AB#tu delta 197 zcmaFK_>ysgPQ7ulenpB&y0?Cjb48-1TZm^`R9<0uZe(FZu32(bNR&^JX?RkxU$Tjj z30Ia|si%RqZ()9BczJM1R${tixv7z_d$>VZs7pXzm0L=7fQNs+VYq3!374*}u7Zbw zWqwY9dq#+-M?iT%vQN5smA-*%W^q-vv2T*UnMGN7shvq#lBaQgX)#yFoQ#yK27JXP yx_Qf$(;QsY96I7>@?;)YZ1s&{&7rMan_UvNfH zGFMqih-t2ckFQ%*sfBY?PDoj3l6PvTQDtgGuz8?|ab}sTnY%%-X<&+5GMBEdu7ZbQ zUQs|;R7j$Bn1xATXrQ;VbC9uHREd{YN}h96QC6zEPnL(NZ>3k7mnYXJ7dH79{xM;! zk7hk7vACYN((gyi-c><7y26a&Jc*$TAJ2`RpWI&3d7#(OeD76-yV2YJ-^yZ>|2Hkf t?svjf#r*!l5T083lxn%=ZIMn6Gb7AaZJ%}3ddmvSqfejxx4sdrzlWE5IhU@ku0l{` zO1ihdYpP*Nimz8mK)H`^Kz?L)V7hj2h+m~wajJf3NLHn#Ym&J^wgK0DcH_s2SzlJN zq%Rkbv)IC+n!j9-F*&2?Z`+rByjA}?)DPwA>LPCYZ?-~ tyC#@(Y}{#4e(8AogV5x@>kLaTFS_?;-Kzx)TpW|O9Idsz7~!n{69DMcT@3&L diff --git a/newinfra/nix/secrets/garage_secrets.age b/newinfra/nix/secrets/garage_secrets.age index b9bf376..242b911 100644 --- a/newinfra/nix/secrets/garage_secrets.age +++ b/newinfra/nix/secrets/garage_secrets.age @@ -1,13 +1,12 @@ age-encryption.org/v1 --> ssh-ed25519 qM6TYg SovdMEtsuAN3HnwyoGcQsVtcpYObyh1N/VKbw4rN/B4 -neYvPr3H7Z0n42eXSacdJ2syK2tX4ZG8dVzdXYKMC3E --> ssh-ed25519 XzACZQ O2zwX8G4Ladh+jlPtzvGKBJUCZwRdzEFBZMjQ6utlic -EuxJbsnCtMU3iPGL+rtNPiA+r6h9IBHQGOo1krTSGMs --> ssh-ed25519 51bcvA +ytU9agDEYXwSkjGXqTuGJFNX0H4gVg3NrSq+irpqR4 -WqB9xcniSoq+7MPZkeujE+Z5Et8q3u+/yEULeSU7Ka8 --> ssh-ed25519 vT7ExA NHrhD8lzaN2QUvnU5obIGFsFdC1tvADd7cfNONcvdGE -egoyBBL9r0XV0bGOq+686PoOPICvYnE/erlZvQMJ4ps ---- j+CR0XGs/Z0D/f8PJVUu5m8ksetR0X9UgX2uLgRFGtY -qRKSDE**ѸW672Z(}vҷ+Gj|'?_o(uͨ! +\gg`dIr{#d;(U(M(hkr6Qn!rB_2) -^b8R\·a -]jBD%2`=Hz \ No newline at end of file +-> ssh-ed25519 qM6TYg a01Mb8F1M4wvxfMPgiblbRIwMF8fmfNJL6Vg8/YVB0k +RvtuLzhlAlOas/csoqOILvMWLmd9nUZHn8CEVRiVVVA +-> ssh-ed25519 XzACZQ 84YS7OyQwf6CnQR1DE59MkFrtFuPPG1Fxo7fRTQxuxM +Js2crB6+BrhZD3EBMYhvkYA2JIA6Abu4hCn9s6Y+XH8 +-> ssh-ed25519 51bcvA uZOqMPJ8PfnbvGN4Ng0xdAVp7PzwYceTbY5gUFmF1RQ +BLWEi+9mkVts2YGbWM7Pk4m/CGlI91Z2woCWVLjejhM +-> ssh-ed25519 vT7ExA H81EQWjjh+yhmMKkyoAJ6HUIPCKgo+zWiYu9KU8NWgg +Sx8ZEAI+AwKR2GB/HN4Uh53U4m3ijuVHMKaHTXYaKL4 +--- VvqdE02fxeV+wtdgB5nXH5lGrjeVC67T2s/yfefX2fo +S=]mñXTIN?ʮ頴v%ՐIwN_*7$]e\]H PMB@&'GgeB`]*tRʩ~G(ud71PJNI^rm07Ow@HYZmx;E!k7d4leom&bb5&AgR%vLtn_+6Hkz0^yxpzuf zAXlK5eu{BeSW&u>WoA-9Sb369sCI6pep;Smn44#SsbN}>XGoq|wqIglB$uwPu0l>| zl$ohxzE^mvX=PMqq60KBNnH9 zE;38>w;Y<7B3i^?lrGJF@RWk+#j=*Oos$y9dS|8nneUj*V|J>(vg*1<%k9?Ur2j|X xu5=G?57sF<$>MJu+1PMYH*;=2Pv%__JJaZP@0-Q)8lgIQ(-ywfmNbl&1OO8=Sy%u7 delta 246 zcmbQmG>d71PJL0Ddz6clXQ{ELS%puzepFP1V`79~NwQ~3MTUn(hNnwaQdyKia=vAV z374B|j<0iYu2X?mNQtSbrF&p`dU?8GepXguWLT(^nPaF)Vp6!1OQO4xE0?aWu0lzM zUqo`gfoZtDxtD85o~ciqq)~yswkwy0OM}{?j}yy!xuZQIqmao0pQ-`VaqX`7}*G;Mwk!GrhC^#eF+fl>f-> yg2{`es*E$W5+1H(Z}7-8Sn9W2VCP4r3qh8;dwKeIo)4Jaw}qvL=d53N-g5x34PCzg diff --git a/newinfra/nix/secrets/hugochat_db_password.age b/newinfra/nix/secrets/hugochat_db_password.age index 68594dd..da33ec9 100644 --- a/newinfra/nix/secrets/hugochat_db_password.age +++ b/newinfra/nix/secrets/hugochat_db_password.age @@ -1,6 +1,7 @@ age-encryption.org/v1 --> ssh-ed25519 qM6TYg H4CAhH2tiZgtdBLnIT2NQpwbuuJIhX2fku6ukjFHonA -jqQ4SKoyG+lIN6nFtBkUPsPLbQtQG1McRrH5BSjMmbk ---- Gxbst2zgWl8yZrCCami4TA7/bXRE84sI6FBjnzpPsiI -ȅr -T6[ksiĖ\'~K I%|hƆ%NSt YҎvS`*3_;fɰ/*!q-^CkA7R <64h*vjYVS22ʮRE \ No newline at end of file +-> ssh-ed25519 qM6TYg /d5HdkEI5g3P4GS7g9TfU5BlaoSGhsH24LltCJPWjxQ +skmJHnOEUBeuGGG0MTrXwm+vZ2qhHZ7O5Jlkw26zsyE +--- syAIyV5No00292U+MKrUCW2oAVovXPI7w87+cLhA14Y +fa;gO%<? +۩}{p"G_Hn~S}EiV2Ce&.o! +rz{OsU?THpg,)+G? OZmt,)O/A/R=TAw@Ik|\; \ No newline at end of file diff --git a/newinfra/nix/secrets/killua_env.age b/newinfra/nix/secrets/killua_env.age index df30832..831fb74 100644 --- a/newinfra/nix/secrets/killua_env.age +++ b/newinfra/nix/secrets/killua_env.age @@ -1,7 +1,5 @@ age-encryption.org/v1 --> ssh-ed25519 qM6TYg PhsRpnRNKtBDBgPzuz2WR1xnYYeXmaKRXJkuDXs0/kY -CEGO4vHUCcdmjEAspcJwcvytCjWoYC0IJ6WdMxvWfnY ---- +45DrLBwIK2qjumiVVbDYoPUxzNMLkDTOWToh5JiH18 -#%-IB -xoI΋įf?bmep#ve"mSD ނqRNG|*үU* -bI!8M;$;Ū`d!#ױ^{ \ No newline at end of file +-> ssh-ed25519 qM6TYg Ljc/q7DzP9ArvolUWvU38h5gaIflWWSlBzIbHFogqAU +U5nw0yFT/3cquMvWWXnxHsiwYl5r7oF9M2OfSATfC3o +--- K0sRjFv6dEc+SA+N7w4mBuW4ImeaFoyAX715KUjv7pU +$fOŋmakjnхN*RBkP=޿ZF+'>U]fU46N/#"vpq(6&u)= \ No newline at end of file diff --git a/newinfra/nix/secrets/loki_env.age b/newinfra/nix/secrets/loki_env.age index e2ecddf..b5cc250 100644 --- a/newinfra/nix/secrets/loki_env.age +++ b/newinfra/nix/secrets/loki_env.age @@ -1,6 +1,5 @@ age-encryption.org/v1 --> ssh-ed25519 XzACZQ eBMqugfTB9wfhD2TgF2svakZ0tDdXjfIlurhXBf0+TM -vJoHbSZT6BdvWfwcQVtjBUBa0x3b+Va6SyOuSL4soKY ---- eQQWdfE5bnx0EOu+4IzdlGwPLBEN6AAC8xA0u6/wXhE -}2T? ;1t7kJO{Ǹ$ -3uBAd>tfrX _=jR>^!Q;`[F!VrΠʍM_SDGvaT;PhiͿ ]O< \ No newline at end of file +-> ssh-ed25519 XzACZQ 9FVUVdZgKOJ0V8F13YgZluLb2DUB65Kos60TwnqwjDY +Y0Rr8I8HrOWh4u7meJ2TMAI71BwD2a9im1igfVQbE4E +--- 4HaBTgUQ1Dteil435vb/NdUm5jrLnrsCuRkv3Cn7KY0 +b*VEY[Jl.L)ziDYJ" ,8N֧)J -}uKԦ괓vm΍)0?D"{e~FP χ~R[H 3cD!"_rwê-:'M \ No newline at end of file diff --git a/newinfra/nix/secrets/mail_git_password.age b/newinfra/nix/secrets/mail_git_password.age new file mode 100644 index 0000000..74e58dc --- /dev/null +++ b/newinfra/nix/secrets/mail_git_password.age @@ -0,0 +1,5 @@ +age-encryption.org/v1 +-> ssh-ed25519 qM6TYg uAqVnSxmOpnCA38XN6oivgsD/lyG7ykusArboDTrRns +lNpNjvxm/Mv5eduK3ugSPFRv8TbXFt2LyalXpfMGyz4 +--- Dyo4Q5YEjqsO36Q0k/V33qmPgJwDlthpEWA+hWcKI4I +a ,l9-Y0[7kNLmk!dSWo)98%R`x \ No newline at end of file diff --git a/newinfra/nix/secrets/mail_git_password_hashed.age b/newinfra/nix/secrets/mail_git_password_hashed.age new file mode 100644 index 0000000000000000000000000000000000000000..266aae5927f7698a7ddf1691c7b163d26b066305 GIT binary patch literal 272 zcmYdHPt{G$OD?J`D9Oyv)5|YP*Do{V(zR14F3!+RO))YxHMCSH^fe2KOjjuKHb^lx z&Gs#CSfmed8#Wr+9soU+m8npFztzp!sw XNk8SaYNxM=N>k%}tuVRD_54x*5E5jC literal 0 HcmV?d00001 diff --git a/newinfra/nix/secrets/minio_env_file.age b/newinfra/nix/secrets/minio_env_file.age index b44c59b9c3d949416d5bcbe25cc1550bffd5be1c..df2fbd9d8fc2041a4e2c177bc89a3d06c64432f4 100644 GIT binary patch delta 362 zcmeBW?q!~!Q*Rg?R$-74m>ZVnVdfDY>YtvYU+kX|;+9$zR%K-Anc);@S?nAfRbFIZ z!e!y^Q(m6x6zP}c7g}Lvk)7t@6>98ck*Dur7T}lUo@AMB7-d@J9$9GU%cX0lP+Xj$ zo0?)|YHDby5K-mm92KbGmuX^ZSriswl;obD=*9qZE0NYooJA6 z5t0&W;g(a(m2K>5?vtDD9iE$$QR?Vx8IWikQdm}86d358nU`$nT2WbOT3YUv7MbeH zrK_u};NfAMo*(6GUTm73o}6Ui?&Ke7k>=qXmTKu*{aR$ZWQF3pOoUu6*_6R z=+^&J>XThU7}}mpiz>W*>ErJFn9G7UjwsGMoucco($ccDw#lw*%AUqb?fdH=OWauA zxJHF9a(7y|$$x*TwX6Sd^{0j1UAg2)#wxSf-(u%qZma&Ky0>a#m+IeCk-D#^MQSgt Ly}sIO*V<_S8k>pv delta 362 zcmeBW?q!~!Qy-aDY?7uQ7F1xFTxgn_7UUbI9TjBamhN4i;c9Gdl$)Dxky}z4;1OgH z%4KAnXq;nd?iAu~?p+b-?&5D!=x6C{lxY~{=v5vSr0rOiUFcI0o}cCu$fawiP+Xj$ zo0?)|YHDby5K-mm92KY#SWs!{ACwxdZ5)zo7-?=AQg4}@85-ha9_*c8;uls{UY6(U zpJD8goe~nsv3ZtUn+R-EKiUY4n^onCHeq#bBjRg@aZ zrK_u}5LxIFYT#OyZQ`DipI#6UUY=xPoEPkro}L!&;p~%`m{gvX}ZwzM%5CIQQ>;k93Wb0p^?iqBd78JNiXjpvbu<@QUd%^Va{oYd-g_ z?5cgWMUS^!#&vJ3PQAW`Z&6`zN`SwknR$MsOL}%{u&Iw%Zk|(KW>T25uZ5d;cuty+e~w>h zGM9c~h_RzbSz&5UT4I@*zfpv_W3rz`WqNjDX=R{^X>ORQS4Oa7hEtw*AeXMLu0mmQ zfJbOhK!iz}M}TX(UwVLxzDrn?S!hsNPHK*kSzbVeUv`**VV-kIkO7xcVYO4qljR$ uJaOjagx_nGBV#u{RSMVa+Yxo+%htt9j&WF7)iFFxvZvJ3PQ9yFcz8vCN1|y^dAVh2d8TW*M}W7tQ*yFtaAvt%PC=$mmP=4XQC?c5 zBbTX*dq}=XTCrPch(%a&X-Tq4UT{RAp`S~BPF8SUXjo2eS*BNVlv|j0AeXMLu7XFR zzNe3)VL?t_o@05Dv0F-3s&{5`xQBOnnny)eMQDL#Rdz;sW=3{;wkKD|>NB7De;@i9 z=ON|6Vr29u?C|P!9Qi`rt9t@2++J^EQ7krbxvp=3+Y?{ccXx`u#pca3&ip*_Vd=*n u-9v&iy0_hrRF~^ul44VS=CI*){T#Q5 ssh-ed25519 qM6TYg +1+lVyRzlcwO+TvDJ3KqRwVzLrKN6QcbeplcJufO2A4 -tXc9NbF/9R+O0NN1SRGWFc1rClgWMm19EXwzO6YeYmk ---- tWIhucD14hJ/tIclvObWwt1a/ImmiGoCNFacoUkYLeg -c_βVgF>'U&H9O㜖zkҩTڄC%/kҖMg5:/J3jPC|v^3Pw/ߔc% ?Z<0`ݴ0x@ړ)hc0=r&. \ No newline at end of file +-> ssh-ed25519 qM6TYg yDDOCWqwZ0A0Jzrc8SxnHiDqk+k9W3n3IiBGMe6jIXg +nr7QkM3n5VPWLdaa7ULm/fECB0dIbNj5HI0rzZJ6Rak +--- 475p+3qWPouhETFhSWC1Y6qilwbEqQKePX3ggzX8Kx4 +=5],3CgOe+go$b̐n郾aapF +Ut'@vxRv3 $a$ G9JYɢW ac, +R}|1doP>ż|ʱVpl1]/_~兵Zz \ No newline at end of file diff --git a/newinfra/nix/secrets/s3_mc_admin_client.age b/newinfra/nix/secrets/s3_mc_admin_client.age index 77cb7be..13a6f17 100644 --- a/newinfra/nix/secrets/s3_mc_admin_client.age +++ b/newinfra/nix/secrets/s3_mc_admin_client.age @@ -1,12 +1,12 @@ age-encryption.org/v1 --> ssh-ed25519 qM6TYg FkczCU/BfhftxpEV9ss9j6bzva9SYzsQXfS2HIPE904 -QPsvkT9e+lGp8RHXkk7Xi5aDnJ7SRoXtZYUHxrLv5+E --> ssh-ed25519 XzACZQ bgFJ0eG0NvrZmpMNcw1w9F4IHIlLnFGzYDQuss9zBzc -37D3BzLM2c8liEJ62Cgi2Ujrn8s/HuFooi4W4efTVF8 --> ssh-ed25519 51bcvA ya2YZ58aFvoZ4RSAIvcTxHs2mi9IQ6GLBBIdd7u+1AI -he/Zml20KK0SCcl+yPP07rVTm3ZfNrM++BEg7DN3m1w --> ssh-ed25519 vT7ExA acQVs42HeDArkdfjcKrSSKIyqGUo0A/WOFsXwC5XfhM -98Orc6jiGZkJBtRfivoDUT+sQKEsX9VhpuE09iMkNmE ---- VUt5MXChYk8dXHeZ8YpfXhRE94BftWknhqf2RI2z77s -,1` yGkqvY˩x#3ދw/WnkG +[wRR.nsT! .2rXJZNQD~d}" Mt " )v X? :]-ʱx#e` UFW>F3ڋe0;:lf-5nU5^N:9'ediJ 3;W R)A5,ժAqyGNBxԐQr2515RsqDwѾ ]e9h O -1e8 \ No newline at end of file +-> ssh-ed25519 qM6TYg 8oHVtbvlnyyCt27qGnpFVmypqIcOlR0DUuJvyMS79QQ +12LwAXfZerltpMV8p1fxQDFrAsT0anEFHnCflYlpVQ4 +-> ssh-ed25519 XzACZQ JCedQ77yU0L72s99WlxyqOrvE2oQpILCzT+Wgl/I1FM +KMJz03/cK1G2rTyAqLtXd9UqbJsNL4hlhNrUy4O7+34 +-> ssh-ed25519 51bcvA FikH1IoTgILH/r+cUFDOKatPEJJ1cgQaq9tQPUgNzAY +w0A7GG7xtPdidDxU6+pruVBqIJXZg8c2l7TnIN73T7k +-> ssh-ed25519 vT7ExA ++vWs+ssMLjAN6+Pc71XtrKYfsn6uUzF8RAj8ZEVg1A +VnweoDKsFFLuH4PB6ciwhFF5qCkY5I79yQFaku6YvTI +--- 15jqxRdKGbvhLQH0IECslHLRfG7ubREncsEoYNLAPQc +g[%B7si\ +4bKvoo\ ڂ>cbsb>;N5Q : EYbqK|k{&mIy߶-a3]_ 3ߌ)Q{,D* c}aR\b,qZ ~"ݧh͛eJUI S%Us"#$ta;s'iEiHJ]G0 @K Q|&/g$O pϻy=7(yH`!g \ No newline at end of file diff --git a/newinfra/nix/secrets/secrets.nix b/newinfra/nix/secrets/secrets.nix index dcb12f3..4f631ed 100644 --- a/newinfra/nix/secrets/secrets.nix +++ b/newinfra/nix/secrets/secrets.nix @@ -22,6 +22,8 @@ in "s3_mc_admin_client.age".publicKeys = [ vps1 vps3 vps4 vps5 ]; "killua_env.age".publicKeys = [ vps1 ]; "forgejo_s3_key_secret.age".publicKeys = [ vps1 ]; + "mail_git_password.age".publicKeys = [ vps1 ]; + "mail_git_password_hashed.age".publicKeys = [ vps1 ]; "wg_private_dns1.age".publicKeys = [ dns1 ]; "wg_private_dns2.age".publicKeys = [ dns2 ]; "wg_private_vps1.age".publicKeys = [ vps1 ]; diff --git a/newinfra/nix/secrets/wg_private_dns1.age b/newinfra/nix/secrets/wg_private_dns1.age index e56c44a..803f5f8 100644 --- a/newinfra/nix/secrets/wg_private_dns1.age +++ b/newinfra/nix/secrets/wg_private_dns1.age @@ -1,6 +1,5 @@ age-encryption.org/v1 --> ssh-ed25519 LZU5Eg C/Xxl6xmqJU17rLrtktvdLeRY5/bF3bjftHo4mbl1iI -dLiactDlpelKogeTFl2fD6YjAK1dfFd7jnvrgc7m4O8 ---- LARr+mBHSH1Hn7gLprVSZdL5/MK5zEmwWnkAYH0Q4T0 -2+V(s -RP>azZ>y>rJ瑸!>KEAap y~ 艸SCW-& \ No newline at end of file +-> ssh-ed25519 LZU5Eg E6+nwA+8+AV8LR3I/ElJZhquSqsQyO7frN9jsbgytzU +sJ1+1K50iqMTp0pzDpt21nX51puxnDZyHO7GsmEADrU +--- FR6LDD8Sctimyq+6yWGqYid3bLHn5c/73Wc723Axpho +atEQmZ녳g"qPwYҀI._*STð$S1gϾ \ No newline at end of file diff --git a/newinfra/nix/secrets/wg_private_dns2.age b/newinfra/nix/secrets/wg_private_dns2.age index 3640ef1..67e98f5 100644 --- a/newinfra/nix/secrets/wg_private_dns2.age +++ b/newinfra/nix/secrets/wg_private_dns2.age @@ -1,5 +1,5 @@ age-encryption.org/v1 --> ssh-ed25519 5bWSnQ LZJ3IeeU2FcoStl7FVMbL0zttZEWy1t+E25GEqXdznk -hMIVGygEe++AfccTi15wj6rWaqtwsOabUugtiuR5GWI ---- /YFZvkG8jK+vVp+edwEpbkDiAe0yPvwzml6d1HOynI4 -LO_'cݏ畊=]Qڗ[?٭o3MN6dV?RAW x5kc \ No newline at end of file +-> ssh-ed25519 5bWSnQ z5r7U+NKzZ4ucf31ROA2Ovq7D1kRmMs+Y/LX/ArLij4 +kMHCxu+ZfE1qfV9i6wZMwbWX/BycwrmB9yykLq6Av3Y +--- 5PYzMW6WzLKk/rBRLja3rziFDIRsJV1a3UC5fd3eW58 +pk{@F5Z+֖OPK2k x[˫uǂ1ދ쉷b]A}ۇ1B[=ǥ] \ No newline at end of file diff --git a/newinfra/nix/secrets/wg_private_vps1.age b/newinfra/nix/secrets/wg_private_vps1.age index 152a0ee..14265f2 100644 --- a/newinfra/nix/secrets/wg_private_vps1.age +++ b/newinfra/nix/secrets/wg_private_vps1.age @@ -1,5 +1,5 @@ age-encryption.org/v1 --> ssh-ed25519 qM6TYg wMMdxXZc1yZiD9oS6ne/7Ne29uz+Q97kYYjZtyhR9Qs -hNwS16RMdvb7hNfjRdUow/sYtUcta4YPoe4qh0jAEOE ---- 30m6ILfUyjxm/nindgNcujh4bGOUvMbrcArSLEd2NuI -0f-1T_s>?fI[LύmL4#,qwPY-[n$ 4 \ No newline at end of file +-> ssh-ed25519 qM6TYg CWXbbkmqJ6xvFW1QH/WXMz2yyqrufcny3u2IVhQcTmY +EPHQm64I0DsM7wM+QDVsTxFD7+RTTBuPLBGp56PwZLw +--- xMf8HUGOwVESa0eJG2QY9gzPX4uMax9zKj+M3VTRTRs +ƣق(U,̈+0q> }ey0Q#\_,в*Xr< \ No newline at end of file diff --git a/newinfra/nix/secrets/wg_private_vps3.age b/newinfra/nix/secrets/wg_private_vps3.age index 80bcbf48be6d464fd9ac6f61146a0c60501edbfe..f2df3dc4202e4637d99dd66f60e06a4f6ec71ba8 100644 GIT binary patch delta 221 zcmZo{e#(?i`};8Jt_3QI_Fi5oGFAnqQTjZSIxge3%cZNUt6*I2 zogNhKYLVw%T2MeYQZ%%#>9HA;lves z`L$fD+3V~XraV5V!|na}x7c6r+yj@T`}X{c=$g3b@}2DpY74p5_ov@&;dmb?5fbaL Y!HA7(cF(o8+S28pZ7pObn5wM-02O^ufdBvi delta 221 zcmZo-?;mbjn(O11=9-e`S?H3V;uMw{=vG#h z%#~eP;N+9-Vr-O@>Qo$3;+pSV>0yv$>0{#VSdm{8;+9e9VVswd?Qd>W&ZVoXtB@F) zl$o3FZWLBf;A83>;BH*v8mwJapr7pNS7H{G<(F5I5mx4$Tu@?AUe48>{h{^ci8>*P z%)?5D?>o)-9=5}GqKoU#Ez<(OIdzpz5d7pV&l|A( ssh-ed25519 51bcvA A5RlnDQ8XJQK5KqxwrvVsrfJKVzb22/c/J/EPvfhtRA -ByXVkK+QIuGV9bCgcqYOAj54k/O6SrYBLrJIQMec0nA ---- S+1ZbskI6F3pIT8Pm9qjoHpHu0BmihvC1c9D77sghVY -{XwG*KD_r;9O"s<әCb6#lQa ssh-ed25519 51bcvA pmuYvcNSDbQQGppe1oSlOjpzgTZsIWdnDIWAwcWOhj0 +TTWgR+OI5SaRvxaXc4LKBXQtMVYc6Jp+r4jNDlI5igg +--- GSEVCJz6eYrGnFbxiQSkZR1Fp0Fy+nga1zOe6Z6LetU +yHT|2| +B,"~艤xIGxDQDƢ|b< +)hd‡ \ No newline at end of file diff --git a/newinfra/nix/secrets/wg_private_vps5.age b/newinfra/nix/secrets/wg_private_vps5.age index 079f000796887a0f7898aadf2fc1cda98983dd28..75e4636bcc72f11b6c7094c35e51fcfd6b251ff9 100644 GIT binary patch delta 220 zcmZo*YG9h6Q=b%;R%RZY;}hhao|0MQsqd0xVHRZ);uMi)U|bQ9=#&*!V&tFiT^Qoz z%T?lEm=aa#Rg_d^V(3$lnO*3a7@k>f=pI~XoR}3=?3h(*R+;T=kXVsZ&ZVoXt59s@ zlp0pz7HE*=URfUISCU#-5ai)uQC1e5T$iS6*WR1<&Uq)l+C{Dt4T;x>c5?P$79g!AM=ospgA6{Z!nvt91 z$mNq>5$G9i=@RI#9q5;w>|g3@R#lc86jYEFXrAtz7ZjGBnr2{DWNr}{$fc{Rt5BZr zlA0V4Vq{tn5g6ziQ5ogo8MSMiMO9e zC|6ckU__!ZdqPMq>FE|E0?aWu0olo zr>TBgc1D12q(ziZNl})+QD{X6a837H!o#th3_4TJEen8T@l2lr5iB*1g$YeAL3@ o?DaV-*>3%N&d3nOv{c_lN@&rG5Sc00N-r&6B0oR9`^Ac400v!L0{{R3 delta 236 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 H>xFdyPvgPJ diff --git a/newinfra/secrets-git-crypt/mail_git_password b/newinfra/secrets-git-crypt/mail_git_password new file mode 100644 index 0000000000000000000000000000000000000000..733b7215ea7cffa7bc0527c4e756da6d5b285b6a GIT binary patch literal 60 zcmZQ@_Y83kiVO&0IH+*?&(c2Tw_Kc@e?u7lnEnts9$Uiv>G7$hfug2yvAfx>SX}e9 R@?1Il*fL9A&&-#nQvmIu8dLxP literal 0 HcmV?d00001 diff --git a/newinfra/secrets-git-crypt/mail_git_password_hashed b/newinfra/secrets-git-crypt/mail_git_password_hashed new file mode 100644 index 0000000000000000000000000000000000000000..b3eb55bbcd242e0e7ef50c32c1f39c5d04b98693 GIT binary patch literal 82 zcmZQ@_Y83kiVO&0I3wI-GxO?RzY0g^?;o3Qr9Qfx6)mhg$)_%>t8HPOT*18SuWw!} p-+ip&?3F_{|7~LDWJ`!OZoS#6w{XIx{rfg2b-wc4=XxOfI{;7xDw6;J literal 0 HcmV?d00001