Documentation
Installer VIGIL Mesh sur Linux (desktop, serveur et Jetson)
Ce guide installe VIGIL Mesh sur Linux — poste desktop, serveur sans écran, ou carte NVIDIA Jetson (qui est un Linux ARM64 comme un autre). Dans un terminal interactif, le script officiel vérifie et installe le paquet, demande systématiquement le compte, le mot de passe et le code MFA éventuel, puis permet de choisir les réseaux avant de valider avec q. L'installation manuelle du .deb reste disponible ; aucun port entrant n'est ouvert.
Prérequis
Le client Linux s'adresse à trois usages : le poste desktop, le serveur (ou la machine de site) sans interface graphique, et la carte embarquée type Jetson. L'installation crée une interface TUN et un service géré par systemd, et requiert les droits root le temps de l'installation et de la connexion.
- Une distribution à base Debian ou Ubuntu, en architecture amd64 (Ubuntu 24.04 LTS ou plus récent) ou arm64 (par exemple JetPack 6 / Ubuntu 22.04 sur une carte NVIDIA Jetson).
- Les droits root (sudo) pour installer le paquet, créer l'interface TUN et activer le service.
- systemd actif et le support des interfaces TUN (/dev/net/tun), standard sur les distributions courantes.
- Les paquets ca-certificates, iproute2, iptables et systemd — dépendances du client, résolues automatiquement par apt.
- Un accès Internet sortant : aucune règle de pare-feu entrante ni redirection de port à préparer.
Méthode recommandée : le script d'installation
Le script officiel install-vigil-mesh.sh détecte l'architecture, lit le manifest publié, choisit le bon paquet, contrôle son empreinte SHA-256, l'installe, puis active et démarre le service. Dans un terminal interactif, il lance ensuite l'assistant : adresse e-mail, mot de passe, code MFA si nécessaire, chargement du catalogue et sélection persistante des réseaux.
curl -fLO https://vigil.design/downloads/install-vigil-mesh.sh
chmod +x ./install-vigil-mesh.sh
sudo ./install-vigil-mesh.sh- L'assistant demande systématiquement l'adresse e-mail et le mot de passe ; si le compte est protégé, il demande aussi le code MFA.
- Une saisie numérique bascule le réseau correspondant sans perdre les autres choix ; all sélectionne tout et none désélectionne tout.
- Tapez q ou Q pour appliquer la sélection affichée puis quitter proprement l'assistant.
- Sans terminal interactif, ou avec --skip-onboarding, le script installe uniquement le paquet et le service : il ne demande aucun secret et ne modifie aucun attachement.
Méthode manuelle : le paquet .deb
Si vous préférez tout contrôler, installez le paquet à la main. Récupérez le .deb correspondant à votre architecture depuis /download/client — amd64 pour un poste ou serveur x86-64, arm64 pour une carte ARM 64 bits (Jetson compris) — avec l'empreinte SHA-256 publiée au manifest signé.
# 1. Vérifier l'empreinte SHA-256 face au manifest signé
sha256sum vigil-mesh_<version>_amd64.deb
# 2. Installer le paquet (apt résout les dépendances)
sudo apt install ./vigil-mesh_<version>_amd64.deb
# 3. Activer et démarrer le service au démarrage
sudo systemctl enable --now vigil-mesh.service
sudo systemctl status vigil-mesh.serviceConnexion manuelle après une installation non interactive
Ces commandes ne sont nécessaires qu'après l'installation manuelle du .deb, une exécution sans terminal interactif ou l'option --skip-onboarding. Connectez d'abord le compte par l'entrée standard, puis consultez le catalogue et attachez explicitement chaque réseau voulu. Plusieurs réseaux peuvent rester attachés en même temps : répétez la commande attach, sans remplacer les attachements existants.
- Secret hors arguments : le mot de passe passe uniquement par stdin avec --password-stdin.
- Catalogue explicite : vigil-mesh network list affiche les couples workspace/réseau disponibles pour le compte.
- Attachements multiples : vigil-mesh network attach ajoute un réseau précis ; relancez-la pour chacun des réseaux nécessaires.
# Lire le mot de passe sans écho et sans le placer dans argv
read -rsp 'Mot de passe VIGIL : ' VIGIL_PASSWORD; echo
printf '%s\n' "$VIGIL_PASSWORD" | sudo vigil-mesh account login --login vous@example.com --password-stdin
unset VIGIL_PASSWORD
sudo vigil-mesh account status
# Lister puis attacher les réseaux voulus
sudo vigil-mesh network list
sudo vigil-mesh network attach --workspace <workspace-id> --network <network-id>
# Répéter attach pour chaque autre réseau nécessaire.MFA : le second facteur à la connexion
L'assistant interactif détecte l'état mfa-required et demande directement le code TOTP. Pour une connexion manuelle, transmettez ce code par stdin avec la commande account mfa et le jeton de challenge renvoyé par la connexion. Le code n'apparaît jamais dans les arguments du processus.
- Le mot de passe passe par --password-stdin ; aucune option ne transporte le secret dans argv.
- Le code MFA passe séparément par --code-stdin, avec le jeton de challenge renvoyé par la connexion.
- Après l'état ready, utilisez network list puis network attach pour choisir tous les réseaux nécessaires.
read -rsp 'Code MFA : ' VIGIL_MFA; echo
printf '%s\n' "$VIGIL_MFA" | sudo vigil-mesh account mfa --token <challenge-token> --code-stdin
unset VIGIL_MFA
sudo vigil-mesh account statusGérer le service
Le client tourne comme service systemd vigil-mesh.service, activé au démarrage. Il restaure les attachements configurés après un redémarrage de la machine.
# État du service et santé du client
systemctl status vigil-mesh.service
vigil-node --self-test
sudo vigil-mesh account status
sudo vigil-mesh network list
# Journaux
journalctl -u vigil-mesh.service -n 80 --no-pager
# Arrêter ou redémarrer
sudo systemctl stop vigil-mesh.service
sudo systemctl restart vigil-mesh.service
# Se déconnecter (supprime la session locale)
sudo vigil-mesh account logoutVérifier
Après la validation de l'assistant avec q, ou après la connexion et les attachements manuels, vérifiez l'état du service, de la session et de chaque réseau. Ces contrôles distinguent une installation saine d'un attachement réellement connecté.
- Service sain : systemctl status vigil-mesh.service et vigil-node --self-test réussissent.
- Compte prêt : sudo vigil-mesh account status indique l'état ready.
- Réseaux attachés : sudo vigil-mesh network list affiche chaque attachement voulu et son état, sans limiter la machine à un seul réseau.
- Résolution par nom : MagicDNS résout localement les noms des autres appareils, sans qu'aucune requête ne quitte la machine.
- Joignabilité : un test simple (ping vers l'adresse mesh d'un autre nœud, puis accès à un service partagé) confirme que le chemin est ouvert.