DISPONIBILITÉ

Contrôler un site depuis un second VPS avec Sentinel

Vérifier HTTPS depuis une infrastructure indépendante et comparer cette mesure avec le contrôle local d’InfraCheck.

Un serveur InfraCheck interroge une sonde Sentinel sur un second VPS avant de contrôler un site web

Un contrôle exécuté sur le même serveur que le site peut réussir alors que les visiteurs extérieurs rencontrent une panne. Une seconde sonde apporte un autre point de vue : autre machine, autre réseau et autre chemin vers le domaine.

L’architecture

InfraCheck réalise son contrôle habituel, puis appelle Sentinel sur un second VPS à travers un réseau privé Tailscale. Sentinel résout le domaine, établit une connexion TLS, lit uniquement les en-têtes HTTPS et renvoie un résultat normalisé.

Flux privé entre InfraCheck et Sentinel puis contrôle HTTPS public du site

1. Préparer le second VPS

Le VPS secondaire a besoin de Docker, du plugin Compose et de Tailscale. Il ne doit exposer Sentinel ni sur son adresse publique ni sur toutes ses interfaces. Utilisez uniquement son adresse Tailscale.

tailscale ip -4
docker version
docker compose version

2. Créer un jeton de service

Le jeton authentifie InfraCheck auprès de Sentinel. Générez au moins 32 octets aléatoires, conservez-le hors du dépôt Git et protégez le fichier de configuration.

openssl rand -hex 32
chmod 600 .env

Exemple de configuration avec des valeurs fictives :

SENTINEL_NODE_ID=sentinel-externe
SENTINEL_NODE_TOKEN=<JETON_SECRET>
SENTINEL_BIND_ADDRESS=100.x.y.z
SENTINEL_PROBE_TIMEOUT=7

3. Démarrer la sonde

Le conteneur peut fonctionner en lecture seule, sans capacité Linux et avec des ressources limitées. Après le démarrage, attendez que son healthcheck passe à healthy.

docker compose config --quiet
docker compose up -d --build
docker compose ps
curl -fsS http://100.x.y.z:8070/health

4. Relier InfraCheck

Placez la même URL privée et le même jeton dans la configuration protégée du VPS principal. Ne les ajoutez jamais au fichier Compose versionné.

SENTINEL_NODE_URL=http://100.x.y.z:8070
SENTINEL_NODE_TOKEN=<MEME_JETON_SECRET>

Recréez ensuite uniquement le service InfraCheck afin qu’il reçoive les nouvelles variables :

docker compose up -d --build infracheck-php
docker compose restart infracheck

5. Valider de bout en bout

Lancez un audit dans InfraCheck et ouvrez la section HTTP. La ligne Disponibilité externe Sentinel doit indiquer le statut HTTP, la latence et le nom du nœud externe.

Disponibilité externe Sentinel
HTTP 200 · 376 ms · sentinel-externe

Les points de sécurité à conserver

  • limiter l’écoute à l’adresse Tailscale ;
  • accepter uniquement des domaines publics, jamais une adresse IP fournie par l’utilisateur ;
  • refuser toute résolution vers une adresse privée ou réservée ;
  • ne suivre aucune redirection depuis la sonde ;
  • ne jamais écrire le jeton dans les journaux ;
  • laisser l’audit principal se terminer si le nœud externe est indisponible.

Vérifier un domaine avec InfraCheck

Le rapport rassemble DNS, e-mail, TLS, en-têtes HTTP, temps de réponse et disponibilité externe dans une seule analyse.

Lancer un audit InfraCheck

Une sonde externe ne remplace pas une supervision complète, mais elle répond à une question essentielle : le site est-il réellement joignable depuis une autre infrastructure ?

Publié le 6 août 2026.