Linux Agent
Installieren Sie den NetRecon Agent auf Linux-Endgeräten für kontinuierliche Überwachung und Inventarberichte.
Voraussetzungen
- Ubuntu 20.04+ / Debian 11+ / RHEL 8+ / Fedora 36+ (oder kompatibel)
- Root- oder sudo-Zugriff (für die Installation)
- Netzwerkverbindung zur Probe (direkt oder über Cloudflare Tunnel)
- Ein Registrierungstoken vom Probe-Dashboard
- systemd (für die Dienstverwaltung)
Manuelle Installation
Debian/Ubuntu (DEB)
Schritt 1: Paket herunterladen
# Vom Probe-Dashboard herunterladen oder curl verwenden:
curl -O https://probe.netreconapp.com/downloads/netrecon-agent-linux-amd64.deb
Für ARM64-Systeme:
curl -O https://probe.netreconapp.com/downloads/netrecon-agent-linux-arm64.deb
Schritt 2: Installieren
sudo dpkg -i netrecon-agent-linux-amd64.deb
Schritt 3: Konfigurieren und starten
sudo netrecon-agent configure \
--server-url "https://probe.netreconapp.com" \
--enrollment-token "your-token-here"
sudo systemctl enable --now netrecon-agent
RHEL/Fedora (RPM)
Schritt 1: Paket herunterladen
curl -O https://probe.netreconapp.com/downloads/netrecon-agent-linux-amd64.rpm
Schritt 2: Installieren
sudo rpm -i netrecon-agent-linux-amd64.rpm
# oder mit dnf:
sudo dnf install ./netrecon-agent-linux-amd64.rpm
Schritt 3: Konfigurieren und starten
sudo netrecon-agent configure \
--server-url "https://probe.netreconapp.com" \
--enrollment-token "your-token-here"
sudo systemctl enable --now netrecon-agent
CLI-Setup-Assistent
Der Agent enthält einen interaktiven Setup-Assistenten für die manuelle Konfiguration:
sudo netrecon-agent setup
Der Assistent fragt nach:
- Server-URL — die HTTPS-URL der Probe
- Registrierungstoken — fügen Sie Ihren Token ein
- Heartbeat-Intervall — Häufigkeit der Check-ins (Standard: 30s)
- Berichtsintervall — Häufigkeit des vollständigen Daten-Uploads (Standard: 15m)
- Log-Level — debug, info, warn, error (Standard: info)
Nach Abschluss des Assistenten startet der Agent automatisch.
Automatisierte Bereitstellung
Einzeiler-Installationsskript
Für die schnelle Bereitstellung auf mehreren Servern:
curl -fsSL https://probe.netreconapp.com/install-agent.sh | sudo bash -s -- \
--server-url "https://probe.netreconapp.com" \
--enrollment-token "your-fleet-token"
Das Skript:
- Erkennt die Linux-Distribution und Architektur
- Lädt das passende Paket herunter (DEB oder RPM)
- Installiert das Paket
- Konfiguriert den Agent mit den bereitgestellten Parametern
- Startet den Dienst
Ansible Playbook
Für Konfigurationsmanagement im großen Maßstab:
---
- name: Deploy NetRecon Agent
hosts: all
become: true
vars:
netrecon_server_url: "https://probe.netreconapp.com"
netrecon_enrollment_token: "your-fleet-token"
netrecon_agent_version: "2.2.0"
tasks:
- name: Download agent package (Debian)
get_url:
url: "{{ netrecon_server_url }}/downloads/netrecon-agent-linux-{{ ansible_architecture }}.deb"
dest: /tmp/netrecon-agent.deb
when: ansible_os_family == "Debian"
- name: Install agent (Debian)
apt:
deb: /tmp/netrecon-agent.deb
when: ansible_os_family == "Debian"
- name: Download agent package (RedHat)
get_url:
url: "{{ netrecon_server_url }}/downloads/netrecon-agent-linux-{{ ansible_architecture }}.rpm"
dest: /tmp/netrecon-agent.rpm
when: ansible_os_family == "RedHat"
- name: Install agent (RedHat)
dnf:
name: /tmp/netrecon-agent.rpm
state: present
when: ansible_os_family == "RedHat"
- name: Configure agent
command: >
netrecon-agent configure
--server-url "{{ netrecon_server_url }}"
--enrollment-token "{{ netrecon_enrollment_token }}"
- name: Enable and start agent
systemd:
name: netrecon-agent
enabled: true
state: started
Shell-Skript für mehrere Server
#!/bin/bash
SERVERS="server1.example.com server2.example.com server3.example.com"
TOKEN="your-fleet-token"
SERVER_URL="https://probe.netreconapp.com"
for server in $SERVERS; do
echo "Deploying to $server..."
ssh root@$server "curl -fsSL ${SERVER_URL}/install-agent.sh | bash -s -- --server-url ${SERVER_URL} --enrollment-token ${TOKEN}"
done
Agent-Verwaltung
Konfigurationsdatei
/etc/netrecon/agent.yaml
server_url: "https://probe.netreconapp.com"
heartbeat_interval: 30
report_interval: 900
log_level: "info"
log_file: "/var/log/netrecon/agent.log"
Dienst-Befehle
# Status prüfen
sudo systemctl status netrecon-agent
# Stoppen
sudo systemctl stop netrecon-agent
# Starten
sudo systemctl start netrecon-agent
# Neu starten
sudo systemctl restart netrecon-agent
# Protokolle anzeigen
sudo journalctl -u netrecon-agent -f
Deinstallation
Debian/Ubuntu:
sudo systemctl stop netrecon-agent
sudo apt remove netrecon-agent
RHEL/Fedora:
sudo systemctl stop netrecon-agent
sudo dnf remove netrecon-agent
SELinux-Konfiguration
Auf RHEL/Fedora-Systemen mit erzwingendem SELinux benötigt der Agent ein Policy-Modul:
# Das Agent-Paket enthält eine SELinux-Policy, aber falls nötig:
sudo semanage fcontext -a -t bin_t '/usr/local/bin/netrecon-agent'
sudo restorecon -v /usr/local/bin/netrecon-agent
Falls SELinux den Netzwerkzugriff blockiert:
sudo setsebool -P netrecon_agent_can_network_connect 1
Firewall-Konfiguration
Der Agent benötigt nur ausgehendes HTTPS (Port 443). Keine eingehenden Regeln erforderlich.
# UFW (Ubuntu)
sudo ufw allow out 443/tcp
# firewalld (RHEL/Fedora)
sudo firewall-cmd --permanent --add-service=https
sudo firewall-cmd --reload
Fehlerbehebung
Agent startet nicht
# Dienststatus prüfen
sudo systemctl status netrecon-agent
# Protokolle prüfen
sudo journalctl -u netrecon-agent --no-pager -n 50
# Konfigurationsdatei-Syntax überprüfen
netrecon-agent validate-config
Zugriff verweigert
- Stellen Sie sicher, dass die Agent-Binärdatei Ausführungsberechtigung hat:
ls -la /usr/local/bin/netrecon-agent - SELinux-Verweigerungen prüfen:
sudo ausearch -m AVC -ts recent
Verbindung verweigert
- Konnektivität testen:
curl -I https://probe.netreconapp.com/api/health - DNS-Auflösung prüfen:
dig probe.netreconapp.com - Überprüfen, ob kein Proxy stört; ggf.
no_proxysetzen
FAQ
F: Funktioniert der Agent auf Alpine Linux oder anderen musl-basierten Distributionen? A: Der Agent ist gegen glibc kompiliert. Alpine Linux und andere musl-basierte Distributionen werden derzeit nicht unterstützt.
F: Kann ich den Agent in einem Docker-Container ausführen? A: Obwohl technisch möglich, ist der Agent dafür konzipiert, das Host-System zu überwachen. Die Ausführung in einem Container schränkt seine Fähigkeit ein, Host-Level-Daten zu sammeln. Installieren Sie ihn stattdessen direkt auf dem Host.
F: Unterstützt der Agent ARM (32-Bit)? A: Der Linux Agent ist für amd64 (x86_64) und arm64 (aarch64) verfügbar. 32-Bit ARM wird nicht unterstützt.
Für weitere Hilfe kontaktieren Sie [email protected].