MaxPatrol EDR agent (vxagent): Nix package + NixOS module
- Nix 100%
| Filename | Latest commit message | Latest commit date |
|---|---|---|
| .gitignore | ||
| flake.nix | ||
| module.nix | ||
| package.nix | ||
| README.md | ||
| vxagent-bundle-5.0.0.579_amd64.deb | ||
vxagent-flake
Nix-обёртка для агента MaxPatrol EDR (Positive Technologies): пакет из вендорского
.deb-бандла плюс системный модуль services.vxagent.
Использование
{
inputs.vxagent-flake = {
url = "git+ssh://git@git.derfenix.pro/NixOS/vxagent-flake.git";
inputs.nixpkgs.follows = "nixpkgs";
};
# хосту достаточно добавить модуль (он же подключает оверлей с пакетом):
# imports = [ inputs.vxagent-flake.nixosModules.default ];
services.vxagent = {
enable = true;
serverAddress = "wss://xdr-ext-02.ptsecurity.ru:443";
# agentIdSalt = "...";
# tags = [ "nixos" ];
};
}
Outputs
packages.<system>.vxagent(иdefault) — сам агент.overlays.default— добавляетpkgs.vxagent.nixosModules.default— импортирует модуль и подключает оверлей.
Опции модуля
services.vxagent.enableservices.vxagent.package(по умолчаниюpkgs.vxagent)services.vxagent.serverAddress→CONNECTservices.vxagent.agentIdSalt→AGENT_ID_SALTservices.vxagent.tags→EDR_AGENT_TAGSservices.vxagent.stateDir(по умолчанию/var/lib/vxagent)
Заметки
- Бандл self-contained (собственный glibc 2.28), поэтому он требует наличия
/usr/lib/vxagentкак PT_INTERP/RUNPATH — модуль создаёт симлинк активацией и держит writable-копию вstateDir(агент сам себя обновляет). - Модуль включает
programs.nix-ld, аNIX_LD/NIX_LD_LIBRARY_PATHв юните наводит на вендорский загрузчик: модули EDR приезжают с сервера как обычные FHS-ELF и без этого на NixOS не стартуют.