about summary refs log tree commit diff
diff options
context:
space:
mode:
authorsefidel <contact@sefidel.net>2024-04-05 08:42:22 +0900
committersefidel <contact@sefidel.net>2024-04-06 00:04:13 +0900
commit128b2f3703dce93d8241165e003f2bfc42cd2548 (patch)
treec457764bc5f51bdd9f1948c317de639e60150183
parentdf7d9f91d484f1388b8929cd033b06d961ee8c3c (diff)
downloadnixrc-128b2f3703dce93d8241165e003f2bfc42cd2548.tar.gz
nixrc-128b2f3703dce93d8241165e003f2bfc42cd2548.zip
feat(nixos/kanata): use wireguard for interlink
-rw-r--r--nixos/kanata/configuration.nix66
-rw-r--r--nixos/kanata/secrets/secrets.yaml9
2 files changed, 39 insertions, 36 deletions
diff --git a/nixos/kanata/configuration.nix b/nixos/kanata/configuration.nix
index 323f6ac..8a4d46c 100644
--- a/nixos/kanata/configuration.nix
+++ b/nixos/kanata/configuration.nix
@@ -96,9 +96,8 @@ in
   sops.secrets.grafana-admin-pass = { owner = "grafana"; };
   sops.secrets.cf-kusanari-kanata-credentials = { owner = "cloudflared"; };
   sops.secrets.nitter-account-jsonl = { };
-  sops.secrets.interlink-password = { };
-  sops.secrets.interlink-ovpn = { };
-  sops.secrets.interlink-ovpn-creds = { };
+  # sops.secrets.interlink-private-key = { };
+  sops.secrets.interlink-wg-config = { };
   sops.secrets.proton-private-key = { };
   sops.secrets.attic-credentials = { };
   # TODO: insecure?
@@ -294,9 +293,8 @@ in
     privateNetwork = true;
     hostAddress = "172.16.1.1";
     localAddress = "172.16.1.2";
-    bindMounts."/run/secrets/interlink-password".hostPath = config.sops.secrets.interlink-password.path;
-    # bindMounts."/run/secrets/interlink-ovpn".hostPath = config.sops.secrets.interlink-ovpn.path;
-    # bindMounts."/run/secrets/interlink-ovpn-creds".hostPath = config.sops.secrets.interlink-ovpn-creds.path;
+    # bindMounts."/run/secrets/interlink-private-key".hostPath = config.sops.secrets.interlink-private-key.path;
+    bindMounts."/run/secrets/interlink-wg-config".hostPath = config.sops.secrets.interlink-wg-config.path;
     config = { config, pkgs, lib, ... }: {
       services.tailscale = {
         enable = true;
@@ -306,35 +304,41 @@ in
         ];
       };
 
-      networking.openconnect.interfaces.openconnect0 = {
-        autoStart = true;
+      networking.firewall.allowedUDPPorts = [ 51820 ];
 
-        gateway = "133.242.23.15"; # JP#11
-        # gateway = "133.242.17.239"; # JP#1
-        protocol = "anyconnect";
-        user = "sk146241";
-        passwordFile = "/run/secrets/interlink-password";
+      networking.wg-quick.interfaces.wg0 = {
+        autostart = true;
 
-        extraOptions = {
-          servercert = "pin-sha256:42cxGem/A2lRRPLefN3tSlPHFD1mK0BLh7tbUJeXvhE="; # JP#11
-          # servercert = "pin-sha256:OvJIFf7gPPbnR7tdG0Uj10GET5eynt+o5pfKBIEA+ws="; # JP#1
-        };
-      };
-      systemd.services.openconnect-openconnect0  = {
-        serviceConfig = {
-          # XXX: On initial startup, the service would fail with
-          # 'No route to host'.
-          Restart = "on-failure";
-          RestartSec = "5s";
-        };
+        configFile = "/run/secrets/interlink-wg-config";
+
+        # address = [ "***.***.***.***/32" ];
+        # listenPort = 51820;
+        #
+        # mtu = 1350;
+        #
+        # privateKeyFile = "/run/secrets/interlink-private-key";
+        #
+        # peers = [{
+        #   publicKey = "*******************************************";
+        #   # Exclude 100.64.0.0/10
+        #   allowedIPs = [
+        #     "0.0.0.0/0"
+        #     # "0.0.0.0/2"
+        #     # "64.0.0.0/3"
+        #     # "96.0.0.0/6"
+        #     # "100.0.0.0/10"
+        #     # "100.128.0.0/9"
+        #     # "101.0.0.0/8"
+        #     # "102.0.0.0/7"
+        #     # "104.0.0.0/5"
+        #     # "112.0.0.0/4"
+        #     # "128.0.0.0/1"
+        #   ];
+        #   persistentKeepalive = 120;
+        #   endpoint = "***.***.***.***:51840";
+        # }];
       };
 
-      # services.openvpn.servers.interlink-sekai = {
-      #   autoStart = true;
-      #   config = "config /run/secrets/interlink-ovpn";
-      #   up = "echo nameserver $nameserver |  ${pkgs.openresolv}/sbin/resolvconf -m 0 -a $dev";
-      #   down = "${pkgs.openresolv}/sbin/resolvconf -d $dev";
-      # };
 
       system.stateVersion = "24.05";
     };
diff --git a/nixos/kanata/secrets/secrets.yaml b/nixos/kanata/secrets/secrets.yaml
index 3bac365..a32a80f 100644
--- a/nixos/kanata/secrets/secrets.yaml
+++ b/nixos/kanata/secrets/secrets.yaml
@@ -8,9 +8,8 @@ cf-kusanari-kanata-credentials: ENC[AES256_GCM,data:whwnxMT9JS3iDHbGTk2FoeDBiug2
 nitter-account-jsonl: ENC[AES256_GCM,data:a7nSbFcG+E5xXnY4moLAu1ULujjZ8czGGLQNqaLZtFISG5Fc/0mMwRxKdArp9pwdUrteSUWzoKlkeTfsHsoS4TmPMuna/nLKSjBV1bvPdOuBEIi6IP9o6zb9izUvcwTAcMiWPjeRYNyLy5p9tvdIQ0MmRmd5UW9WUILLs7r5dmIK/ssNgYf89jJsdhBRpzOmjOtBbzn2uTA6+3s7ldswSWhAP94654Hrbg1IKxvefAgAqm+/2aNvY1Jxh71bNlWH+/WNBtH7pC24NeNWjiNHKzGhix2UecmcQ5/CEo8DBa6mg4gpe9i+VxzHhl3NJoFrfuicFT2ebTEjv8p7ZXLF3ZRgscXXb9YJ5CjmVILiUh/yYqM2jzSLbGHKIetlNFlmNkAYXN3j+A4w4Jiu4lVA3jwFPVxk92pSHi7hhib5gP3P20Zfbr89zk9tGIBQVDWo4p1LrwumH6aCq+XaIPAHOspFheIteZUJ1q0V2vylrBfkrj+ISDQ94aWgSKC74dynGL4joH4DJ2g6xSh26FMNlvBR7Mwg1PpfmJKx0I3iROoEc3RCPdxaoPiJNL7gpRlHV2a5H+ZCgpuWxcQ=,iv:joZcbUidniBqGu9Lkg6wd+mBdmgU/inbPEOlXewU5U4=,tag:y8Uv4zxuTAsTKB+OB4S6Xw==,type:str]
 acme-credentials: ENC[AES256_GCM,data:6SIuFH3sRcz/Z855br7VgFKEEA1crztKmhVd3chK7ERJpfG9pTxxX0mAxG3aK5OhXwZpDMp0YkxtEphdkb5m0ZU=,iv:bUMtK0SvtrNwlhuY1k0dNVIOcJgM1OLjmbl+X+Zj01E=,tag:x6kdGrSsImZlpHrPnEAmXA==,type:str]
 invidious-hmac: ENC[AES256_GCM,data:uIw4aQm6oYd5heSxrJnt6Nvc+fTPLMSEDtDyZ/ayogl6qx/gPg==,iv:8AVzwO9peE0UC70nLxBxHKzTcitrzvBvy120fdQD1+c=,tag:rr7MOqgOFFxXN8W+9MKvLg==,type:str]
-interlink-password: ENC[AES256_GCM,data:yAAKVyB0LmA=,iv:iSqCQuYyLA1uMLDf80li+Iqts5r+4sXsjlrIRXlTAOc=,tag:Ard+JQnRMPquRsEe2UTETQ==,type:str]
-interlink-ovpn-creds: ENC[AES256_GCM,data:Dy4QLcfPhwqDa4+8YTUZjxaU,iv:oGe91cJVKnw6roEdSut+iA2UCIToxbkOiF9grXDVSkU=,tag:oxnjMZq4GZPwFaFKuVjohw==,type:str]
-interlink-ovpn: ENC[AES256_GCM,data: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,iv:xRA4Q0zFdJLXSg/jGVdXJrG5KCiYM/2+26oZ1jNn6kE=,tag:7ufCLQD/PP/K2PxI8t49Dw==,type:str]
+#ENC[AES256_GCM,data:c0B2RqGRFmyxyz93TCWL5wMTYiFmnvWU9aQwZszQ137fhL7bQdENPLWQkoiWyW6o3GXTyuL2bni1VnO4eD5idWzt7dw=,iv:147La8vNPRLMnK992cQD1NmQgbDrDBLwSPEX4haeIS4=,tag:hmGGslH4O9dlTSoDTWIdIg==,type:comment]
+interlink-wg-config: ENC[AES256_GCM,data:zT0yr7O4JhpmnI5++cK7aJEKkLM9rxcWGyvwJ7Q4ZR6wWLe0LnNIzEpjjMAvh/If4NYOU8qpVOUgxaREij3hIhJ1QzyAb/nF80msZWDmmMvtVLZmC1wNw+p88UKrPwRBbLIwVbwCyWJtIdnZTHzscktfSY+mC/mB8fESh8XpRXH7YW/W1+nyrSQCmJ3LGopHBukqJstLunu7qW34xZ5k37/TKToyqW4JLUxamrPsBycR1ZnfTvIHluOvXhQLOleBEJN+GyduRqPV7tAajbMZAlyZa5Y6mGVA0kcba3GpuiV4uQjFJcSiYLa2JztWSbsWFJBl1YPXdsWzWOrQ,iv:iiye6Zb2OlctZFFuRbJ7RiXW0k400/DmWDlh5SXgp+Q=,tag:qa3BedClEOaSyst+xjPe4Q==,type:str]
 proton-private-key: ENC[AES256_GCM,data:OnZGYf/203XOLXyDRIqrRKwLe0cN2c0RF+CkwwNtttP+ACD3AJCY0rNgKoc=,iv:IWFF95Z3r+OuSu+GfJWJjwRv5b9KZSKGMuxSnkRGqlg=,tag:QvDBvSzzGxwawhaio47MEQ==,type:str]
 attic-credentials: ENC[AES256_GCM,data:S25D1E4kTp2Nre1uu1WWVV1jrEpQtPz5+5XQ/W0pr0CF5pFm0UEyGn2XdJKQzyM5CYSCo581JeJNMtTKIwEKm8lYY9X5e8Jgwe2o5f5YRwmHSfvK1UAJoUdM7Q0FaAcVTU3bNis1dClqDvB0QbNjF1xsYCKCgZRe8TSenmJgPjA=,iv:m+UzkoVsEfUtKIYaGZIej4efhVuWN4EKCqMamlQwWaI=,tag:vBPq0JkRDbKmyw9qLbh1gg==,type:str]
 transmission-extra-config: ENC[AES256_GCM,data:lyZ8Nkjp0Mjm4HFDqRN1G6iyBksHT6dKKQDSO8Br1DpXxKLDBclQ4L2F1FqQJ3OB/7o4EqWFX8J1ZjVYDCQkQnhr6v13glvFciICQ99hPsypUS349936vDCgEF/WP0RAHOsaRq81JnMDegZvEg==,iv:bfN2oEfQ3uk4i6hwHp2ZdYCf3l7Kb0EoXSEGyOSB8CM=,tag:fZkMayEJiXzifTCiVLJq6w==,type:str]
@@ -39,8 +38,8 @@ sops:
             YkRGS2ZBbm1keWpUQUFOWDRtTWZVa0EKc+lKEP0L/yoFLx6p1zbWfifPWc7Y9Qqh
             qccODSyHqzwdriHLxXuw9SCnF+SeA721te6+pDVhJj8vqv2UqHiATw==
             -----END AGE ENCRYPTED FILE-----
-    lastmodified: "2024-03-06T14:06:46Z"
-    mac: ENC[AES256_GCM,data:27ze/GyfM8wB3/5ZE61Uv1y+3GE9rL5j3qGdOZA3tPLlmsaT6Lnuob6f0iECu62saeg+KCBSUHBoXvjxWccXdB6Kxxg3WS9kCOHfDYxcTvX7h1yMNvOpq60M0Man47hqiGc1cDbDj7NMlah1oNr8FjMDkH+7LFiHOKPen3KOZ6M=,iv:hxEkykRSr6F5Rb3AsDoARC5Rn6pRBFlw7LedklTlE7I=,tag:Ee9Fl55wR1WjfVsBPV2vSw==,type:str]
+    lastmodified: "2024-04-05T15:01:25Z"
+    mac: ENC[AES256_GCM,data:ndnsAuHSyQSGx0G2YzECaZhGDvVbbXDbSWLdh1r2Vy6beVeX/e6JP7AxnIRfhipKfJLlhOA1rtbCOiwpq4FubozXDJOviI0oLZWU4ZDSCgWHKsUVoMdC3gqw87Qhts77PfDqdYVgglAr2/n6AzhY8NVkjuMWu4iDiD9yfb+bJ5o=,iv:J32wZYk6yiEgJBWrs6QTjM/EY6XqRfu/BkhiP9PxAWQ=,tag:eL3mcerITq55qYlxF5JhEw==,type:str]
     pgp: []
     unencrypted_suffix: _unencrypted
     version: 3.8.1