Skip to content

Commandes par défaut de l'agent

Ce document décrit les scripts de commandes par défaut disponibles dans l'agent Alemca. Ces scripts sont situés dans le dossier /etc/alemca/system/commands/ et peuvent être exécutés à distance via la plateforme Alemca.

Vue d'ensemble

Les commandes par défaut permettent d'effectuer diverses opérations de maintenance, de surveillance et de configuration sur les équipements distant. Chaque script est écrit en Lua et utilise les modules de l'agent pour interagir avec le système.

Liste des commandes

filesync.lua

Synchronisation de fichiers

Ce script permet de synchroniser des fichiers entre l'équipement local et la plateforme alemca.

Fonctionnalités

  • Synchronisation bidirectionnelle de fichiers
  • Support des chemins locaux et distants

Paramètres

  • path : Chemin au format "local;remote" pour spécifier les répertoires source et destination
  • Variables d'environnement pour la configuration SFTP

Utilisation

-- Format du paramètre path : "chemin_local;chemin_distant"
-- Exemple : "/etc/config;/remote/backup/config"

filesync_log.lua

Synchronisation des logs de l'agent

Script spécialisé pour la synchronisation des fichiers de logs de l'agent Alemca vers la plateforme alemca.

Fonctions

  • Détection automatique des fichiers de logs (agent-alemca.log*)
  • Upload vers la plateforme alemca via SFTP
  • Gestion des logs rotatés (agent-alemca.log.1, agent-alemca.log.2, etc.)
  • Nettoyage automatique après synchronisation

Répertoire surveillé : /var/log/

Pattern des fichiers : agent-alemca.log*

quick_netscan.lua

Scan rapide du réseau

Effectue un scan rapide du réseau local pour découvrir les équipements connectés.

Capacités

  • Détection automatique du réseau local
  • Scan par ping et ARP
  • Scan de ports optionnel
  • Timeout configurable
  • Découverte des services actifs

Paramètres configurables

  • network : Réseau à scanner (par défaut "auto" pour détection automatique)
  • timeout_ms : Timeout en millisecondes (par défaut 1000ms)
  • methods : Méthodes de scan ("ping,arp")
  • scan_ports : Active le scan de ports (true/false)
  • ports : Liste des ports à scanner ("22,80,443,1883")

reboot_agent.lua

Redémarrage de l'agent

Redémarre proprement l'agent Alemca en cours d'exécution.

Caractéristiques

  • Détection du PID de l'agent en cours
  • Démarrage d'une nouvelle instance
  • Arrêt propre de l'ancienne instance
  • Vérification du processus

Processus

  1. Récupération du PID actuel de agentAlemca
  2. Démarrage d'une nouvelle instance
  3. Attente de 2 secondes pour la stabilisation
  4. Arrêt de l'ancienne instance

reboot_device.lua

Redémarrage de l'équipement

Redémarre complètement l'équipement distant.

Fonctionnement

  • Exécution de la commande reboot système
  • Redémarrage immédiat de l'équipement

⚠️ Attention : Cette commande provoque un redémarrage complet de l'équipement.

snapshot.lua

Capture d'état système

Script complexe qui capture un instantané complet de l'état du système et de la configuration.

Fonctions

  • Collecte des informations système
  • État des interfaces réseau
  • Configuration des services
  • Informations SIM (pour équipements avec modem)
  • Exclusion de fichiers sensibles (credentials.yaml/yml)
  • Export au format JSON structuré

Données collectées

  • Informations CPU et mémoire
  • État des interfaces réseau
  • Configuration des services
  • État des connexions
  • Informations modem/SIM si disponible

Fichiers exclus

  • /etc/alemca/credentials.yaml
  • /etc/alemca/credentials.yml
  • Dossiers temporaires et système

sync_ntp.lua

Synchronisation NTP

Synchronise l'horloge système avec un serveur NTP.

Opérations

  • Exécution de ntpd -gq pour synchronisation forcée
  • Affichage de l'heure actuelle après synchronisation
  • Gestion des erreurs de synchronisation

Processus

  1. Exécution de la commande NTP
  2. Vérification du succès
  3. Affichage de l'heure synchronisée

topology.lua

Scan de topologie réseau

Scanner avancé de topologie réseau qui crée des entités sur la plateforme Alemca pour visualiser la topologie du réseau.

Fonctions avancées

  • Scan complet du réseau local
  • Détection des services actifs
  • Création d'objets et services sur la plateforme cloud
  • Scan de ports étendus
  • Identification des protocoles
  • Retry automatique pour les API calls

Ports scannés par défaut

SSH (22), HTTP (80), HTTPS (443), Telnet (23), FTP (21), SMTP (25), DNS (53), SNMP (161), etc.

Configuration

  • Timeout par défaut : 1000ms
  • Max concurrent : 50 scans simultanés
  • Délai API : 0.3s entre les appels
  • Max retries : 3 tentatives

uci_command.lua

Commande UCI

Exécute une commande UCI (Unified Configuration Interface) sur les systèmes OpenWrt/LEDE.

Commande

  • Exécution de commandes UCI arbitraires
  • Paramètre de commande configurable

Paramètre

  • cmd : Commande UCI à exécuter

Exemple

-- Paramètre cmd = "show network"
-- Exécute : uci show network

upload.lua

Téléchargement de fichier

Télécharge un fichier depuis une URL vers l'équipement local.

Fonctions de téléchargement

  • Téléchargement via curl
  • URL et destination configurables

Paramètres

  • url : URL source du fichier
  • dest : Chemin de destination local

Exemple

-- url = "https://example.com/file.txt"
-- dest = "/tmp/downloaded_file.txt"