chore(nix): add Headscale service to MX configuration
- Included `headscale.nix` in the MX system configuration for VPN management. - Added Nginx and ACME configuration to route traffic securely to Headscale. - Ensures Headscale is enabled with required settings and packaged in the system.
This commit is contained in:
parent
818ba00d3a
commit
62201776f3
2 changed files with 33 additions and 0 deletions
|
|
@ -7,6 +7,7 @@
|
||||||
./coturn.nix
|
./coturn.nix
|
||||||
./forgejo.nix
|
./forgejo.nix
|
||||||
./hardware-configuration.nix
|
./hardware-configuration.nix
|
||||||
|
./headscale.nix
|
||||||
./kicker.nix
|
./kicker.nix
|
||||||
./mailserver.nix
|
./mailserver.nix
|
||||||
./network.nix
|
./network.nix
|
||||||
|
|
|
||||||
32
systems/x86_64-linux/mx/headscale.nix
Normal file
32
systems/x86_64-linux/mx/headscale.nix
Normal file
|
|
@ -0,0 +1,32 @@
|
||||||
|
{ config }:
|
||||||
|
let
|
||||||
|
domain = "headscale.hoyer.xyz";
|
||||||
|
in
|
||||||
|
{
|
||||||
|
services = {
|
||||||
|
headscale = {
|
||||||
|
enable = true;
|
||||||
|
address = "0.0.0.0";
|
||||||
|
port = 8080;
|
||||||
|
server_url = "https://${domain}";
|
||||||
|
dns = {
|
||||||
|
baseDomain = "hoyer.tail";
|
||||||
|
};
|
||||||
|
settings = {
|
||||||
|
logtail.enabled = false;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
nginx.virtualHosts.${domain} = {
|
||||||
|
useACMEHost = "hoyer.xyz";
|
||||||
|
forceSSL = true;
|
||||||
|
enableACME = true;
|
||||||
|
locations."/" = {
|
||||||
|
proxyPass = "http://localhost:${toString config.services.headscale.port}";
|
||||||
|
proxyWebsockets = true;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
environment.systemPackages = [ config.services.headscale.package ];
|
||||||
|
}
|
||||||
Loading…
Add table
Add a link
Reference in a new issue