Nápověda a návodyLAN agenti (interní síť) › Instalace agenta (systemd / Docker)

Instalace agenta (systemd / Docker)

4 min čtení · LAN agenti (interní síť)

LAN agent je malý Python proces, který běží na vašem Linux zařízení ve vnitřní síti a kontroluje služby, ke kterým se z internetu nedá dostat (interní DNS, intranet, ERP, NAS, tiskárny). Komunikuje směrem ven přes HTTPS, takže nepotřebuje žádné otevřené porty směrem dovnitř sítě.

Ve zkratce: Vytvořte agenta v dashboardu, zkopírujte si token a spusťte jeden instalační příkaz na cílovém zařízení. Celý proces zabere 2 až 3 minuty.

Co budete potřebovat

  • Jakýkoli Linux s root přístupem (Debian, Ubuntu, Raspberry Pi OS, Fedora, Alma/Rocky, Arch, openSUSE, Alpine)
  • Architektura x86_64, aarch64 (Raspberry Pi 4/5), armv7l (Raspberry Pi 3) nebo armv6l (RPi Zero)
  • Odchozí HTTPS spojení na epulz.io (port 443)
  • Python 3.8 nebo novější (pokud chybí, instalátor jej doinstaluje z balíčkovacího manažera)

Agent zabírá přibližně 20 MB RAM a v klidovém stavu méně než 1 % CPU. Funguje i v LXC kontejneru, ve virtuálním stroji (Proxmox, VMware) nebo v Docker kontejneru. Kromě systemd podporuje i OpenRC (Alpine).

Plně auditovatelný: celý agent je jediný Python soubor (~600 řádků, pouze standardní knihovna) a instalátor je veřejný skript. Před spuštěním si můžete přečíst každý řádek: epulzio-agent.py a install-agent.sh.

1. Vytvořte agenta a zkopírujte token

  1. Otevřete Dashboard - LAN agenti.
  2. Zadejte srozumitelný název (například "Serverovna Praha" nebo "RPi v prodejně") a klikněte na + Vytvořit agenta.
  3. Dashboard zobrazí token agenta (epulzio_...) a hotové instalační příkazy ke zkopírování.
Token se zobrazí pouze jednou. Zkopírujte si ho hned. Neposílejte ho veřejně ani ho nepublikujte na GitHubu. Pokud ho ztratíte nebo unikne, agenta v dashboardu zrušte (Revoke) a vytvořte si nového.

2. Spusťte instalační příkaz

Na cílovém zařízení v terminálu (token nahraďte svým):

curl -fsSL https://epulz.io/install-agent.sh | sudo bash -s epulzio_VAS_TOKEN

Opatrnější postup (doporučujeme při první instalaci): skript si nejprve stáhněte a přečtěte:

curl -fsSL https://epulz.io/install-agent.sh -o install-agent.sh
less install-agent.sh        # přečtěte si, co dělá (1 min)
sudo bash install-agent.sh epulzio_VAS_TOKEN

Instalátor automaticky:

  • Rozpozná architekturu a distribuci (apt / dnf / apk / pacman / zypper)
  • Ověří přítomnost Pythonu 3.8+ a nástroje ping, v případě potřeby je doinstaluje
  • Otestuje spojení na epulz.io
  • Stáhne agenta do /opt/epulzio-agent/
  • Vytvoří službu epulzio-agent (systemd, na Alpine OpenRC) a spustí ji
  • Zapne automatický start při restartu systému

Celá instalace trvá přibližně 30 sekund.

3. Ověřte, že agent běží

Stav služby na zařízení:

sudo systemctl status epulzio-agent

Měli byste vidět active (running).

Seznam LAN agentů se stavem online v dashboardu ePulz.io
Dashboard - LAN agenti: stav, poslední kontakt a verze agenta

V Dashboard - LAN agenti se do 30 sekund objeví stav:

  • online - poslední signál života (heartbeat) přišel před méně než 2 minutami
  • časová značka - poslední heartbeat před 2 až 10 minutami
  • offline - poslední heartbeat starší než 10 minut (upozornění přijde už po 5 minutách ticha)

Varianta přes Docker

Pokud nemáte systemd (TrueNAS, Synology, Unraid, k3s) nebo upřednostníte kontejner, použijte příkaz z dashboardu:

docker run -d --name epulzio-agent --restart unless-stopped \
  --network host \
  -e EPULZIO_AGENT_TOKEN=epulzio_VAS_TOKEN \
  python:3.12-alpine sh -c "apk add -q --no-cache iputils && wget -qO /agent.py https://epulz.io/static/agent/epulzio-agent.py && python /agent.py"

Přepínač --network host je důležitý - agent musí vidět vaši LAN síť, nejen interní Docker bridge. Při každém restartu kontejneru se stáhne aktuální verze agenta.

macOS a Windows

Pro macOS (10.15+, Intel i Apple Silicon):

curl -fsSL https://epulz.io/install-agent-macos.sh -o install-agent-macos.sh
sudo bash install-agent-macos.sh epulzio_VAS_TOKEN

Pro Windows (10+ / Server 2016+, PowerShell jako správce):

Set-ExecutionPolicy -ExecutionPolicy Bypass -Scope Process -Force
$env:EPULZIO_AGENT_TOKEN="epulzio_VAS_TOKEN"; iwr -useb https://epulz.io/install-agent.ps1 | iex

Řešení problémů

Instalátor hlásí "Missing agent token"

Příkazu chybí token. Spusťte ho s tokenem na konci: ... | sudo bash -s epulzio_VAS_TOKEN.

Instalátor hlásí "must run as root"

Spusťte ho přes sudo, root je potřeba pouze k instalaci (systemd služba, zápis do /opt).

"Cannot reach epulz.io"

Zařízení nemá odchozí HTTPS spojení. Otestujte ručně curl https://epulz.io/health. Pokud to selže, zkontrolujte firewall, DNS a NAT.

"Python 3.8+ required"

Velmi starý systém. Aktualizujte distribuci nebo doinstalujte novější Python (na Debianu například apt install python3.9 z backports).

"Neither systemd nor OpenRC detected"

Systém bez podporovaného init systému. Použijte Docker variantu výše.

Agent zůstává v dashboardu offline i po 2 minutách

Podívejte se do logů: sudo journalctl -u epulzio-agent -n 50.
Nejčastější příčiny: nesprávně vložený token (zkontrolujte, že se zkopíroval celý včetně prefixu epulzio_), HTTPS blokované na firewallu nebo nesprávný systémový čas (zkontrolujte ho příkazem date - ověření SSL certifikátu vyžaduje správný čas).

Aktualizace agenta

Spusťte ten samý instalační příkaz znovu se stejným tokenem. Instalátor přepíše soubory v /opt/epulzio-agent/ a restartuje službu, token zůstává platný.

Odinstalace

sudo systemctl stop epulzio-agent
sudo systemctl disable epulzio-agent
sudo rm -rf /opt/epulzio-agent /etc/systemd/system/epulzio-agent.service
sudo systemctl daemon-reload

V dashboardu agenta dodatečně označte jako Revoked, abyste zneplatnili jeho token.

Další krok

Vytvoření prvního LAN monitoru (ping, TCP, HTTP).

První LAN monitor
Byl tento návod užitečný?