Intégration externe - Tailscale

Bonjour à tous,

Je vous présente une nouvelle intégration externe pour Gladys : Tailscale.

À quoi ça sert ?

Si vous utilisez Tailscale pour joindre votre Gladys, votre NAS ou vos serveurs à distance, cette intégration affiche l’état de votre réseau (votre « tailnet ») directement dans Gladys.

Chaque machine du tailnet devient un appareil Gladys avec :

  • En ligne : la machine est connectée au tailnet, ou pas ;
  • Mise à jour disponible : une version plus récente de Tailscale existe pour elle ;
  • Expiration de la clé : le nombre de jours avant qu’elle doive se reconnecter ;
  • Expiration désactivée : un interrupteur, comme le menu « Disable key expiry » de la console Tailscale.

Scènes (Gladys 5.1 et plus)

Déclencheurs :

  • machine en ligne ou hors ligne ;
  • nouvelle machine dans le tailnet (approuvée ou en attente d’approbation) ;
  • mise à jour Tailscale disponible ;
  • clé bientôt expirée (délai réglable, 14 jours par défaut).

Actions :

  • actualiser le tailnet ;
  • lire l’état d’une machine (en ligne, IP, version, jours avant expiration…) ;
  • activer ou désactiver l’expiration de la clé d’une machine.

Exemple : quand mon NAS passe hors ligne, m’envoyer un message « {{triggerEvent.data.device_name}} est hors ligne ».

Widget

Un widget Réseau Tailscale pour le tableau de bord : nombre de machines en ligne et hors ligne, état de l’API, et la liste des machines qui demandent votre attention (hors ligne, clé qui expire, mise à jour, en attente d’approbation). Un bouton « Actualiser » et un lien vers la console d’admin.

Comment ça marche

  • L’intégration passe par l’API Tailscale, dans le cloud : rien à installer sur vos machines, et Gladys n’a pas besoin d’être dans le tailnet.
  • Connexion par jeton d’accès API, ou mieux par client OAuth avec le droit devices:core : il n’expire jamais.
  • Une seule requête par lecture, toutes les 60 secondes par défaut (réglable).
  • Les jetons et secrets ne sont jamais écrits dans les logs.
  • Disponible en français, anglais, allemand et espagnol.

Installation

  1. Il faut Gladys 5.1 ou plus récent.
  2. Installez Tailscale depuis le catalogue des intégrations de Gladys.
  3. Créez un client OAuth dans la console Tailscale : Settings → OAuth clients, avec le droit Devices → Core (Read suffit pour surveiller, Write en plus pour changer l’expiration des clés depuis Gladys).
  4. Collez l’ID et le secret dans l’onglet Configuration, puis cliquez sur Tester la connexion.
  5. Ajoutez vos machines depuis l’onglet Découverte.

La documentation complète est ici : docs/fr.md

Liens

C’est la première version (1.0.0) : vos retours sont les bienvenus, ici ou sur GitHub !

Intégration communautaire, non affiliée à Tailscale Inc.