Compare commits
6 commits
main
...
service-cr
| Author | SHA1 | Date | |
|---|---|---|---|
| 796a42e70e | |||
| 76f19a2ac9 | |||
| 9e0412be5b | |||
| b432cac554 | |||
| 382e6e20a0 | |||
| 2b949f04ce |
3 changed files with 85 additions and 5 deletions
|
|
@ -23,6 +23,8 @@
|
|||
url = "https://keys.openpgp.org/vks/v1/by-email/wekuz%40duck.com";
|
||||
flake = false;
|
||||
};
|
||||
|
||||
crowdsec-rewrite.url = "github:TornaxO7/nixpkgs/saltsprint";
|
||||
};
|
||||
|
||||
outputs =
|
||||
|
|
@ -37,6 +39,7 @@
|
|||
nixosConfigurations = {
|
||||
plexy = nixpkgs.lib.nixosSystem {
|
||||
system = "x86_64-linux";
|
||||
specialArgs = { inherit inputs; };
|
||||
modules = [
|
||||
./hosts/plexy
|
||||
home-manager.nixosModules.home-manager
|
||||
|
|
|
|||
|
|
@ -1,13 +1,21 @@
|
|||
{
|
||||
config,
|
||||
pkgs,
|
||||
inputs,
|
||||
...
|
||||
}:
|
||||
|
||||
{
|
||||
disabledModules = [
|
||||
"services/security/crowdsec.nix"
|
||||
"services/security/crowdsec-firewall-bouncer.nix"
|
||||
];
|
||||
|
||||
imports = [
|
||||
./hardware-configuration.nix
|
||||
./disko-config.nix
|
||||
"${inputs.crowdsec-rewrite}/nixos/modules/services/security/crowdsec.nix"
|
||||
"${inputs.crowdsec-rewrite}/nixos/modules/services/security/crowdsec-firewall-bouncer.nix"
|
||||
];
|
||||
|
||||
nix = {
|
||||
|
|
@ -96,6 +104,7 @@
|
|||
secrets = {
|
||||
"vaultwarden.env" = { };
|
||||
"rsyncd.secrets" = { };
|
||||
"crowdsec-console-token" = { };
|
||||
};
|
||||
};
|
||||
|
||||
|
|
@ -143,6 +152,73 @@
|
|||
};
|
||||
};
|
||||
};
|
||||
crowdsec = {
|
||||
enable = true;
|
||||
autoUpdateService = true;
|
||||
|
||||
settings = {
|
||||
console.enrollKeyFile = config.sops.secrets."crowdsec-console-token".path;
|
||||
config = {
|
||||
|
||||
api.server = {
|
||||
enable = true;
|
||||
online_client.credentials_path = "/var/lib/crowdsec/online_api_credentials.yaml";
|
||||
};
|
||||
};
|
||||
|
||||
acquisitions = [
|
||||
{
|
||||
source = "journalctl";
|
||||
journalctl_filter = [ "_SYSTEMD_UNIT=sshd.service" ];
|
||||
labels.type = "syslog";
|
||||
}
|
||||
{
|
||||
source = "journalctl";
|
||||
journalctl_filter = [ "-k" ];
|
||||
labels.type = "syslog";
|
||||
}
|
||||
{
|
||||
source = "journalctl";
|
||||
journalctl_filter = [ "_SYSTEMD_UNIT=caddy.service" ];
|
||||
labels.type = "caddy";
|
||||
}
|
||||
{
|
||||
source = "journalctl";
|
||||
journalctl_filter = [ "_SYSTEMD_UNIT=vaultwarden.service" ];
|
||||
labels.type = "Vaultwarden";
|
||||
}
|
||||
{
|
||||
source = "journalctl";
|
||||
journalctl_filter = [ "_SYSTEMD_UNIT=jellyfin.service" ];
|
||||
labels.type = "jellyfin";
|
||||
}
|
||||
{
|
||||
source = "journalctl";
|
||||
journalctl_filter = [ "_SYSTEMD_UNIT=seerr.service" ];
|
||||
labels.type = "seerr";
|
||||
}
|
||||
];
|
||||
};
|
||||
|
||||
hub.collections = [
|
||||
"crowdsecurity/linux"
|
||||
"crowdsecurity/sshd"
|
||||
|
||||
"crowdsecurity/base-http-scenarios"
|
||||
"crowdsecurity/caddy"
|
||||
|
||||
"Dominic-Wagner/vaultwarden"
|
||||
"LePresidente/jellyfin"
|
||||
"LePresidente/jellyseerr"
|
||||
|
||||
"crowdsecurity/whitelist-good-actors"
|
||||
];
|
||||
};
|
||||
crowdsec-firewall-bouncer = {
|
||||
enable = true;
|
||||
registerBouncer.enable = false;
|
||||
secrets.apiKeyPath = "/var/lib/crowdsec/firewall-bouncer-key";
|
||||
};
|
||||
vaultwarden = {
|
||||
enable = true;
|
||||
environmentFile = config.sops.secrets."vaultwarden.env".path;
|
||||
|
|
|
|||
|
|
@ -1,9 +1,9 @@
|
|||
vaultwarden.env: ENC[AES256_GCM,data:PLNb5cFoJaOyUo5U/gpXH0RGVwwQxL3kCE/OLw7MaLWazuBGHIPUEhH+kDMP2cfF916D63w8Ddgb/oH+lHGCw235YwgoqZ9yjWYPG4VB2Jdw+17LeCbirdh3zv8nNzFnSZDJmhz5Pj82+iswju6sYO/H7UfZ3aeASWonKW9LGHVltKSY1rAVhZRu4SvhqPiAxNpEzN0/EDTl46RIxrgEoUraN+Ie8fh1wU9SKevExkPU3NXGO1gG2tWRxclMPgc=,iv:es40/5HpBAhOy2xmU/yCUD43fVVsAXk6qJ3OasKjK3U=,tag:bneErU9pPZkQ2VzbQ1NrJA==,type:str]
|
||||
rsyncd.secrets: ENC[AES256_GCM,data:VjHRoZa6/lDtCheKSJyM,iv:kxygNaKOuK0iH/bFY/uKxcbMcYSR8nWDUx+4aDNqTMk=,tag:uYYPWAPCWtvLLGwmOWyH+A==,type:str]
|
||||
crowdsec-console-token: ENC[AES256_GCM,data:kW0ztvpScqEDYeD++0StmzWfKuHzPwXnDEk=,iv:jwNBiPdJb4pfQ4cpheNfum0b5U0udvokp919sS7S6T8=,tag:yvGumTuO54rxsWYekn3pqw==,type:str]
|
||||
sops:
|
||||
age:
|
||||
- recipient: age1sqssntfzzlhcgp0wuf9wmeavg0hmwmq349npsq8vaxj9sxey5s9ssc82sw
|
||||
enc: |
|
||||
- enc: |
|
||||
-----BEGIN AGE ENCRYPTED FILE-----
|
||||
YWdlLWVuY3J5cHRpb24ub3JnL3YxCi0+IFgyNTUxOSBXSERvcGNXdDlUb3NBUm40
|
||||
WW1mVlY5YlpxclBxT3htQ1orbHpxTnBUTEJNCkZaZnUzZUZNQmk0RmU2U2RkOUVI
|
||||
|
|
@ -11,7 +11,8 @@ sops:
|
|||
eDUxR1V0ZEFSYnZTYnYzakFydEliaFUKoa/gHecAy01vTk7I02KMGGPHZBql5K48
|
||||
hkLDjoWK9dkGRX8kqRd028cuMCQRenLpULEECWp6oV+evUdMf7wRtg==
|
||||
-----END AGE ENCRYPTED FILE-----
|
||||
lastmodified: "2026-04-03T15:46:07Z"
|
||||
mac: ENC[AES256_GCM,data:gh9Voy28Lo4G1qwQ7/WVAt/L3SAXIY5bs5fdCE0Oywi0ZV4YTJI5VCAcfxuE0Fc3DXdHF0/LORGjKa2l0yp5msMdBVpzI46FBiwYvU+w7EfEoEmhu0yMLf0SZmXkVLEq8u2uVFHGVbR1dOKcdFef+qTIGTlz4cE9VQ01xg/nh7g=,iv:fasXOAm2hjB4ULKT4vPOFnFpAcEgSeNvNM7Zrnk6MvM=,tag:1hWtpuTVdC3H8flA1m0Z0A==,type:str]
|
||||
recipient: age1sqssntfzzlhcgp0wuf9wmeavg0hmwmq349npsq8vaxj9sxey5s9ssc82sw
|
||||
lastmodified: "2026-07-06T14:12:01Z"
|
||||
mac: ENC[AES256_GCM,data:nIyEuWKDcwntAFREXz3Ye5WjRgizR+p/5akCvcF3aR5YSrcrx+BvsilB8bssSeD9IPcFT+MD12nkIlmLH93MtT6qskKkx4h2szmfQRDLnVooNYHa9ZDxm/gvB1wkmNLSM/18f3RsUtUM6VxyzK6PoWo0PdEp3Zt2hMq8g3Awjk4=,iv:I+w4HZxP9lHFDr+Z1nT2txAq32gYnEomymOV//2zQxU=,tag:uept/iFzDCHutrb0JtjWDA==,type:str]
|
||||
unencrypted_suffix: _unencrypted
|
||||
version: 3.12.2
|
||||
version: 3.13.2
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue