diff options
| author | vin <git@vineetk.net> | 2026-04-28 15:46:27 -0400 |
|---|---|---|
| committer | vin <git@vineetk.net> | 2026-04-28 15:46:50 -0400 |
| commit | be281ea8291bd94acf31883b5a84d12b6a89066b (patch) | |
| tree | b21789d7e9ad2d2eb939658b7001efaf4c5748c0 | |
| parent | d6ea4ce49907527a7f0981426b640e7b73bbd7b8 (diff) | |
hastur: add wg2 vpn for tailscale bridge
| -rw-r--r-- | epistemia/secrets/email_13f0.age | 14 | ||||
| -rw-r--r-- | epistemia/secrets/email_vinbiz.age | bin | 383 -> 383 bytes | |||
| -rw-r--r-- | epistemia/secrets/email_vineetk.age | 13 | ||||
| -rwxr-xr-x | epistemia/secrets/rekey.scm | 1 | ||||
| -rw-r--r-- | epistemia/secrets/saklas_smtpd_dkim.age | bin | 1997 -> 1997 bytes | |||
| -rw-r--r-- | epistemia/secrets/saklas_smtpd_passwd.age | bin | 861 -> 861 bytes | |||
| -rw-r--r-- | epistemia/secrets/saklas_smtpd_virtuals.age | bin | 778 -> 778 bytes | |||
| -rw-r--r-- | epistemia/secrets/wg0_demiurge.age | bin | 367 -> 367 bytes | |||
| -rw-r--r-- | epistemia/secrets/wg0_hastur.age | bin | 367 -> 367 bytes | |||
| -rw-r--r-- | epistemia/secrets/wg0psk_demiurge.age | 13 | ||||
| -rw-r--r-- | epistemia/secrets/wg0psk_hastur.age | bin | 367 -> 367 bytes | |||
| -rw-r--r-- | epistemia/secrets/wg1_demiurge.age | 12 | ||||
| -rw-r--r-- | epistemia/secrets/wg1_hastur.age | bin | 367 -> 367 bytes | |||
| -rw-r--r-- | epistemia/secrets/wg1_saklas.age | bin | 367 -> 367 bytes | |||
| -rw-r--r-- | epistemia/secrets/wg2_hastur.age | bin | 0 -> 367 bytes | |||
| -rw-r--r-- | epistemia/secrets/wpa_supplicant.age | bin | 917 -> 917 bytes | |||
| -rw-r--r-- | epistemia/systems/hastur.scm | 25 |
17 files changed, 49 insertions, 29 deletions
diff --git a/epistemia/secrets/email_13f0.age b/epistemia/secrets/email_13f0.age index 3735767..5765c83 100644 --- a/epistemia/secrets/email_13f0.age +++ b/epistemia/secrets/email_13f0.age | |||
| @@ -1,9 +1,7 @@ | |||
| 1 | age-encryption.org/v1 | 1 | age-encryption.org/v1 |
| 2 | -> ssh-ed25519 KXd7pg JA+X0qP4lZHscj7Ab0H6WnsCxy9gEkgonP6H6WtF1BI | 2 | -> ssh-ed25519 KXd7pg 3ynY12E0LLLdLSRgCzO09VphQeBJNdIQmkI2o2TWQR8 |
| 3 | p4wWKg1f5EcKarC2TVOkhZCL5W6DPnGn992CYErST/g | 3 | j6mTyDW0Q5bztnwpWx3+pp/yBEbHDq6xk+hLcLuUYSM |
| 4 | -> ssh-ed25519 AaF/mQ UfWdAg/v4ZHheetWWhowrRycjhtmVDA33coPteQxgFg | 4 | -> ssh-ed25519 AaF/mQ bW5AHW9v+qR90tl33Vi18bnHw6CpcEORHZHwtFPeths |
| 5 | V9AjDexq0Fn9TDX55d2IEEIB9KvHcjIUW6K1VxNseMg | 5 | wwAoH2Tq6xZacVb6Z6f1/NkceNj9cnXDUPzxfVd/Bww |
| 6 | --- npGLxhYw6SHfQMaRQpbPAicNuGpBIuRZruDLfLSurPQ | 6 | --- 6ELNb4Arc/FnxV92/H6byhQbS4+4tpLvYepUWknrN8c |
| 7 | [LeAKv9?Z;&9f^)h3ҡs[A,+M'w> | 7 | *w[nЮT8jY"DVcdRuA"wڨ1v?XGZ>>(StjTzqw>APkx/L \ No newline at end of file |
| 8 | ]{L>Jz | ||
| 9 | $5Gb;V \ No newline at end of file | ||
diff --git a/epistemia/secrets/email_vinbiz.age b/epistemia/secrets/email_vinbiz.age index 9217199..2fef9d6 100644 --- a/epistemia/secrets/email_vinbiz.age +++ b/epistemia/secrets/email_vinbiz.age | |||
| Binary files differ | |||
diff --git a/epistemia/secrets/email_vineetk.age b/epistemia/secrets/email_vineetk.age index 53bee45..4aff283 100644 --- a/epistemia/secrets/email_vineetk.age +++ b/epistemia/secrets/email_vineetk.age | |||
| @@ -1,7 +1,8 @@ | |||
| 1 | age-encryption.org/v1 | 1 | age-encryption.org/v1 |
| 2 | -> ssh-ed25519 KXd7pg MJmX/dmIv7JQ+snLvnhmAgiw6T1EkjCoYKmXiBBOwlo | 2 | -> ssh-ed25519 KXd7pg ojjTKqcrvwYGyWUP+NHl3x6ypIMx/PFS7b2sczUyxEI |
| 3 | cj3y6LLsFWiG5ExZAi8bNcIjSiBTZgEt8JpTTVBB9Xc | 3 | uq2/4eOfidjq+Fj0lefjSWuPzotmYR1A48/BiC+qQgI |
| 4 | -> ssh-ed25519 AaF/mQ LLgXnyqiGnTTGKD6e1bwu/YULJq5qEXfzqAG8Z/awV4 | 4 | -> ssh-ed25519 AaF/mQ AyHpcN5Wsz2kh9U4ENTm+YtQoiScsAMikePd62LiGWw |
| 5 | s/660BRmbahOXMR8VVCyRXY0kYTWXRGVcy7K+MZRoTk | 5 | PYORjQ9akT1Kcq0Onx6zPm0A6p4wxPNuazHdf4LCdWU |
| 6 | --- BDSl2ZiQKBMeGHGlQ+gIksrGYFph/jIA1T86qjwZYUQ | 6 | --- Sv54CL3Cf9+1UlEs08tDS5SVcBqh3Q9Me30uaU5QSyE |
| 7 | 1g0 bV@{!_v\_k``RYCo߫6_p?y~ׇZ$쓪(t $&[ΦY5< \ No newline at end of file | 7 | 7BIZfVw=[ |
| 8 | ;wPGqfNN%zݝoorܥuw~^87 \ No newline at end of file | ||
diff --git a/epistemia/secrets/rekey.scm b/epistemia/secrets/rekey.scm index 5a7f051..36b0063 100755 --- a/epistemia/secrets/rekey.scm +++ b/epistemia/secrets/rekey.scm | |||
| @@ -27,6 +27,7 @@ | |||
| 27 | ("wg0_hastur" . ,hastur) | 27 | ("wg0_hastur" . ,hastur) |
| 28 | ("wg0psk_hastur" . ,hastur) | 28 | ("wg0psk_hastur" . ,hastur) |
| 29 | ("wg1_hastur" . ,hastur) | 29 | ("wg1_hastur" . ,hastur) |
| 30 | ("wg2_hastur" . ,hastur) | ||
| 30 | ("wpa_supplicant" . ,hastur))) | 31 | ("wpa_supplicant" . ,hastur))) |
| 31 | 32 | ||
| 32 | (define (run fmt . args) | 33 | (define (run fmt . args) |
diff --git a/epistemia/secrets/saklas_smtpd_dkim.age b/epistemia/secrets/saklas_smtpd_dkim.age index 351e0a5..a5e1417 100644 --- a/epistemia/secrets/saklas_smtpd_dkim.age +++ b/epistemia/secrets/saklas_smtpd_dkim.age | |||
| Binary files differ | |||
diff --git a/epistemia/secrets/saklas_smtpd_passwd.age b/epistemia/secrets/saklas_smtpd_passwd.age index d93d80e..b6a4c51 100644 --- a/epistemia/secrets/saklas_smtpd_passwd.age +++ b/epistemia/secrets/saklas_smtpd_passwd.age | |||
| Binary files differ | |||
diff --git a/epistemia/secrets/saklas_smtpd_virtuals.age b/epistemia/secrets/saklas_smtpd_virtuals.age index fab8aef..8cef3ac 100644 --- a/epistemia/secrets/saklas_smtpd_virtuals.age +++ b/epistemia/secrets/saklas_smtpd_virtuals.age | |||
| Binary files differ | |||
diff --git a/epistemia/secrets/wg0_demiurge.age b/epistemia/secrets/wg0_demiurge.age index 8838c7d..5b930b8 100644 --- a/epistemia/secrets/wg0_demiurge.age +++ b/epistemia/secrets/wg0_demiurge.age | |||
| Binary files differ | |||
diff --git a/epistemia/secrets/wg0_hastur.age b/epistemia/secrets/wg0_hastur.age index 92822fa..4106089 100644 --- a/epistemia/secrets/wg0_hastur.age +++ b/epistemia/secrets/wg0_hastur.age | |||
| Binary files differ | |||
diff --git a/epistemia/secrets/wg0psk_demiurge.age b/epistemia/secrets/wg0psk_demiurge.age index d27971c..260a12d 100644 --- a/epistemia/secrets/wg0psk_demiurge.age +++ b/epistemia/secrets/wg0psk_demiurge.age | |||
| @@ -1,8 +1,7 @@ | |||
| 1 | age-encryption.org/v1 | 1 | age-encryption.org/v1 |
| 2 | -> ssh-ed25519 947m3A Dh919UZSR7b8AjtEjXM6KeZTIDSGQWYCef+8IiTk+yg | 2 | -> ssh-ed25519 947m3A UgHVFVeQDm9j/FIlqCp8PcQ2/yeArslKFhdldFoL+Rk |
| 3 | Bwu8OFPT/sYl5IBW2OB6yR6PE9gbZtKijJRdVCpvFSg | 3 | JUvVep6kqYNPQAd0SqjeE4CNzjOqlHw+q+ZSrR7riUk |
| 4 | -> ssh-ed25519 AaF/mQ E2hpAaLTepKwIrwORcgsmlYAyG1i568NbLVdQKIkNUM | 4 | -> ssh-ed25519 AaF/mQ g3X+bGZDBvMyt4OyIyYargTQCl+oYZ+4aNS+0WJVyAY |
| 5 | w0GOzGfmd7s/mi3b1QTAl1ug3P+yUDRtpsWVw/ZSQEk | 5 | jYmVeK+mcqqNh+4Y4FU7UyFT2BW97i6JLGoNzcxzSAs |
| 6 | --- B9oYTFIRG8+V+Kk7/vr6B0HaklmJwF/Uzsq8iHDvNBc | 6 | --- QXFnxxiwsrJd8fQQr1w07SwLfqQBmOQcEdpuRBanOKg |
| 7 | 4uKr | 7 | 8 &~w "*YFp@ˇO犜PcIZ7U3esk(z18W6XPQ!^nRwHs \ No newline at end of file |
| 8 | ћ3㴂)V\P2ୠPgrӌ8kEת<D"˲+r:&3_BQ \ No newline at end of file | ||
diff --git a/epistemia/secrets/wg0psk_hastur.age b/epistemia/secrets/wg0psk_hastur.age index aa4d44b..4d04866 100644 --- a/epistemia/secrets/wg0psk_hastur.age +++ b/epistemia/secrets/wg0psk_hastur.age | |||
| Binary files differ | |||
diff --git a/epistemia/secrets/wg1_demiurge.age b/epistemia/secrets/wg1_demiurge.age index 980fb4b..153052d 100644 --- a/epistemia/secrets/wg1_demiurge.age +++ b/epistemia/secrets/wg1_demiurge.age | |||
| @@ -1,7 +1,7 @@ | |||
| 1 | age-encryption.org/v1 | 1 | age-encryption.org/v1 |
| 2 | -> ssh-ed25519 947m3A p1oWAwuUJIijt7GotoiOqeqFHKivz97kJyFjQkp0RgQ | 2 | -> ssh-ed25519 947m3A XeQVp+qvHY/AdBfeRPZFm+PMw1zqARFE2nM0MHLBeV0 |
| 3 | +ZTwOWtNBO0o1et1frJdrLZ/tsUBdqzzgDPQjh5SYBE | 3 | 1XUz1PU/AmieRcKKgczPv8Uw/Rk7rdG1hbc8iTtf3/s |
| 4 | -> ssh-ed25519 AaF/mQ 2CuYuqUgygv0ZehtY4v/m8XIaqznJsJswjinPFPgtW0 | 4 | -> ssh-ed25519 AaF/mQ oLsTCKN7OfqAWJ6vf7UL6hUXleoiPMPyRgipANUuYU0 |
| 5 | F8kcda97DjtN86gM7XjGdRjeOrMYmVhZvrNRDGitovU | 5 | 8AZkb3sMwdDf6yIdXGwz6pczraf3/lzih/LG/4hUsLM |
| 6 | --- EIlaID8dIcmQi9BWCiWwFfAL+dSHwNDxPRG8HWn6xds | 6 | --- tpy8xoo5+UO15V13cclmO3PKEBNtZnvnKDwB6KUnglU |
| 7 | /q7_sڭb@1pz\2jcGɿAn`F^OA*~2Z}xLϝzA \ No newline at end of file | 7 | n^Jϝ}U&QOPDV&aH2Y8_CUe6"Oھ&7DK((E/qAh \ No newline at end of file |
diff --git a/epistemia/secrets/wg1_hastur.age b/epistemia/secrets/wg1_hastur.age index b71103d..38cb976 100644 --- a/epistemia/secrets/wg1_hastur.age +++ b/epistemia/secrets/wg1_hastur.age | |||
| Binary files differ | |||
diff --git a/epistemia/secrets/wg1_saklas.age b/epistemia/secrets/wg1_saklas.age index a25bd40..be7391e 100644 --- a/epistemia/secrets/wg1_saklas.age +++ b/epistemia/secrets/wg1_saklas.age | |||
| Binary files differ | |||
diff --git a/epistemia/secrets/wg2_hastur.age b/epistemia/secrets/wg2_hastur.age new file mode 100644 index 0000000..1929871 --- /dev/null +++ b/epistemia/secrets/wg2_hastur.age | |||
| Binary files differ | |||
diff --git a/epistemia/secrets/wpa_supplicant.age b/epistemia/secrets/wpa_supplicant.age index 6f39ae6..91d7803 100644 --- a/epistemia/secrets/wpa_supplicant.age +++ b/epistemia/secrets/wpa_supplicant.age | |||
| Binary files differ | |||
diff --git a/epistemia/systems/hastur.scm b/epistemia/systems/hastur.scm index b63e0b4..3f74a95 100644 --- a/epistemia/systems/hastur.scm +++ b/epistemia/systems/hastur.scm | |||
| @@ -111,7 +111,10 @@ | |||
| 111 | (file (local-file "../secrets/wg0psk_hastur.age"))) | 111 | (file (local-file "../secrets/wg0psk_hastur.age"))) |
| 112 | (age-secret | 112 | (age-secret |
| 113 | (name "wg1_hastur") | 113 | (name "wg1_hastur") |
| 114 | (file (local-file "../secrets/wg1_hastur.age"))))))) | 114 | (file (local-file "../secrets/wg1_hastur.age"))) |
| 115 | (age-secret | ||
| 116 | (name "wg2_hastur") | ||
| 117 | (file (local-file "../secrets/wg2_hastur.age"))))))) | ||
| 115 | (simple-service 'zfs-loader | 118 | (simple-service 'zfs-loader |
| 116 | kernel-module-loader-service-type | 119 | kernel-module-loader-service-type |
| 117 | '("zfs")) | 120 | '("zfs")) |
| @@ -188,7 +191,7 @@ | |||
| 188 | (service wireguard-service-type | 191 | (service wireguard-service-type |
| 189 | (wireguard-configuration | 192 | (wireguard-configuration |
| 190 | (interface "wg1") | 193 | (interface "wg1") |
| 191 | (addresses '("10.0.13.3/24" "fd00:b0ba:cafe:babe::3/64 ")) | 194 | (addresses '("10.0.13.3/24" "fd00:b0ba:cafe:babe::3/64")) |
| 192 | (port 51820) | 195 | (port 51820) |
| 193 | (bootstrap-private-key? #f) | 196 | (bootstrap-private-key? #f) |
| 194 | (private-key "/run/secrets/wg1_hastur") | 197 | (private-key "/run/secrets/wg1_hastur") |
| @@ -210,6 +213,24 @@ | |||
| 210 | (allowed-ips '("10.0.13.2/32" "fd00:b0ba:cafe:babe::2/128")) | 213 | (allowed-ips '("10.0.13.2/32" "fd00:b0ba:cafe:babe::2/128")) |
| 211 | (endpoint "carcosa.13f0.net:51820") | 214 | (endpoint "carcosa.13f0.net:51820") |
| 212 | (keep-alive 25)))))) | 215 | (keep-alive 25)))))) |
| 216 | (service wireguard-service-type | ||
| 217 | (wireguard-configuration | ||
| 218 | (interface "wg2") | ||
| 219 | (addresses '("10.0.14.2/24")) | ||
| 220 | (port 51822) | ||
| 221 | (bootstrap-private-key? #f) | ||
| 222 | (private-key "/run/secrets/wg2_hastur") | ||
| 223 | (shepherd-requirement '(age-secret wpa-supplicant)) | ||
| 224 | (pre-up '("while [ ! -f /run/secrets/wg2_hastur ]; do sleep 1; done" | ||
| 225 | "while [ -z \"$(ip route show default)\" ]; do sleep 1; done")) | ||
| 226 | (peers | ||
| 227 | (list | ||
| 228 | (wireguard-peer | ||
| 229 | (name "abatur.epistemia") | ||
| 230 | (public-key "OOpc1K4S56FdJkCaqHx3DC4aIO+zQCAo8ACwCboLEjg=") | ||
| 231 | (allowed-ips '("10.0.14.1/32" "100.64.0.0/10")) | ||
| 232 | (endpoint "87.99.141.145:51822") | ||
| 233 | (keep-alive 25)))))) | ||
| 213 | (service pam-limits-service-type | 234 | (service pam-limits-service-type |
| 214 | (list (pam-limits-entry "@audio" 'both 'rtprio 99) | 235 | (list (pam-limits-entry "@audio" 'both 'rtprio 99) |
| 215 | (pam-limits-entry "@audio" 'both 'memlock 'unlimited))) | 236 | (pam-limits-entry "@audio" 'both 'memlock 'unlimited))) |
