InfraFenceInfraFence

Live Security Operations

Commencer

Référence des commandes

Toutes les commandes du binaire infrafence-agent : preflight, version, check, register, start, uninstall --clean et les commandes panel utilisées par les plugins WHM et Plesk.

Dernière mise à jour:

Le binaire de l'agent est /usr/local/bin/infrafence-agent. Exécutez ses commandes en tant que root.

preflight

bash
sudo infrafence-agent preflight
sudo infrafence-agent preflight --json

La vérification en lecture seule du serveur : pare-feu, autres outils de sécurité, serveurs web, panneaux d'hébergement, gestion de configuration, opérations sur les paquets et ressources. Elle ne modifie rien. Sans --json, elle se termine avec le code 2 quand un constat empêche la protection, 0 sinon. Voir Ce que fait l'installateur.

version

bash
infrafence-agent version

Affiche la version installée, infrafence-agent v<version>. --version et -v font de même. Demande l'agent 1.0.34 ou ultérieur ; sur un agent plus ancien, infrafence-agent check affiche aussi la version.

check

bash
infrafence-agent check

L'autotest utilisé par les mises à jour et par le script de récupération : il affiche infrafence-agent v<version> OK et se termine avec le code 0.

register

bash
sudo infrafence-agent register <server_url> <agent_name> <install_token>

Enregistre le serveur et écrit /etc/infrafence/config.json. L'installateur l'exécute pour vous ; vous n'en avez besoin qu'après install.sh --install-only, par exemple :

bash
sudo infrafence-agent register https://infrafence.com web-01 <YOUR_TOKEN>
sudo systemctl start infrafence-agent

En cas de succès, elle affiche Agent registered successfully ; en cas d'échec, Registration failed: suivi de la réponse du tableau de bord.

start

bash
infrafence-agent start

Exécute l'agent au premier plan. C'est la commande que lance le service ; vous n'avez pas à l'exécuter à la main. Sans fichier de configuration, elle s'arrête avec Run 'infrafence-agent register' first.

uninstall --clean

bash
sudo infrafence-agent uninstall --clean

Supprime tout ce que l'agent a ajouté au système (chaînes et ensembles du pare-feu, modifications du serveur web et du durcissement) et affiche une ligne removed … par élément, puis InfraFence changes removed from this host. Elle ne supprime ni le binaire ni le service : install.sh --uninstall fait tout cela. Voir Désinstallation.

panel

bash
sudo infrafence-agent panel status --json

L'interface des plugins de panneaux d'hébergement : un objet JSON sur la sortie standard, {"ok": true, …} ou {"ok": false, "error": "<code>", "message": "…"}, et un code de sortie 0 uniquement quand ok. Réservée à root.

Commande Ce qu'elle fait
status Version, état d'exécution, dernier heartbeat, connexion, offre, AutoMode, et si le plugin peut afficher des données (entitled, entitlement).
bans [--limit N] Bannissements actifs avec raison, source et expiration.
unban <ip> --actor <user> Lève un bannissement sur ce serveur uniquement, pour 30 jours au plus.
allow <ip> [--note …] --actor <user> Ajoute une adresse à la liste blanche.
allowlist La liste blanche, venant du panneau et du tableau de bord.
disallow <ip> --actor <user> Retire une adresse ajoutée par le panneau.
findings [--limit N] Détections de malwares et d'intégrité des fichiers, chacune ouverte ou résolue.
events [--limit N] [--since 24h] Événements récents ; les problèmes, ouverts ou résolus.
coexistence Autres outils de sécurité trouvés, et ce qu'InfraFence fait à côté de chacun.
sites Comptes, domaines et racines de documents, avec la couverture des scans.
scan <document root> --actor <user> Lance un scan antimalware d'un site.
map [--hours N] D'où sont venues les attaques contre ce serveur, par pays et par type d'attaque, sur les dernières 24 heures (--hours 24, par défaut) ou les 7 derniers jours (--hours 168).
score Le score de sécurité du serveur, sa note, ce qui lui retire des points et son évolution sur 30 jours.

Les commandes qui modifient quelque chose exigent --actor, et l'agent les signale au tableau de bord comme événements de source panel. La commande communique avec l'agent en cours d'exécution via /run/infrafence/panel.sock (root uniquement, mode 0600, aucune écoute réseau). Sans agent en cours d'exécution, status, coexistence et sites répondent quand même ; les autres renvoient agent_not_running. Voir Panneaux d'hébergement.

map et score demandent l'agent 1.0.33 ou ultérieur. Le tableau de bord les calcule ; l'agent le lui demande au plus toutes les 5 minutes pour une carte et toutes les 15 minutes pour le score, et garde la réponse. Quand le tableau de bord ne répond pas, l'agent donne sa dernière copie avec "stale": true, ou not_connected s'il n'en a aucune.

Offres payantes uniquement (agent 1.0.34 ou ultérieur). Les plugins sont inclus dans les offres Basic, Pro et AutoMode. status répond toujours, avec entitled (true ou false) et entitlement :

entitlement Quand
ok L'offre est Basic, Pro ou AutoMode, et la protection n'est pas désactivée.
plan_required Une autre offre, par exemple Starter.
unpaid La protection est désactivée : le tableau de bord refuse le serveur depuis 24 heures, par exemple parce que l'abonnement n'est pas actif.
unknown L'offre n'est pas encore connue : l'agent ne s'est pas synchronisé depuis son installation ou sa mise à jour.

Quand ce n'est pas ok, toutes les autres commandes ne répondent qu'une erreur avec le même code (plan_required, unpaid ou unknown), sans données, et ne changent rien : unban, allow, disallow et scan sont refusés. L'agent garde l'offre de la dernière synchronisation réussie, y compris après un redémarrage, et l'utilise tant que le tableau de bord est injoignable : une panne ne vide donc pas le plugin. Ce contrôle ne porte que sur les réponses : il ne change jamais la protection du serveur.

Ouvert ou résolu (agent 1.0.34 ou ultérieur). Dans events et findings, chaque problème (un port de base de données exposé, un fichier système modifié, un réglage PHP risqué, un malware...) a un subject, la clé de ce qu'il concerne (port:tcp/3306, file:/etc/passwd...), et un state, open ou resolved, avec resolved_at et resolved_how (port_closed, fix_applied, quarantined, package_updated, marked_expected, marked_resolved...). Les événements qui ne sont pas des problèmes, comme les attaques et les scans, ont state à null. Un problème est résolu dans le tableau de bord, ou par l'agent lui-même quand il l'a corrigé ; une nouvelle occurrence est de nouveau ouverte. Voir Problèmes ouverts et résolus.