HAProxy
HAProxy est un répartiteur de charge et un proxy rapide et fiable pour les applications TCP et HTTP. Il distribue le trafic entre les serveurs backend, effectue des contrôles de santé et termine TLS, ce qui en fait un point d’entrée courant pour les services web hautement disponibles.
Logiciels inclus
Section intitulée « Logiciels inclus »| Composant | Version |
|---|---|
| HAProxy | 3.2 |
| Ubuntu | 24.04 LTS |
Démarrage
Section intitulée « Démarrage »1. Se connecter à votre VM
Section intitulée « 1. Se connecter à votre VM »ssh ubuntu@<your-vm-ip>2. Vérifier que HAProxy fonctionne
Section intitulée « 2. Vérifier que HAProxy fonctionne »Il n’y a aucune configuration au premier démarrage. HAProxy démarre immédiatement après le démarrage de la VM.
systemctl status haproxy3. Tester le frontend HTTP
Section intitulée « 3. Tester le frontend HTTP »Ouvrez le frontend par défaut dans un navigateur :
http://<your-vm-ip>Il renvoie :
HAProxy is runningLa page locale de statistiques écoute sur 127.0.0.1:8404. Vous pouvez la vérifier depuis la VM :
curl http://127.0.0.1:8404/Gérer HAProxy
Section intitulée « Gérer HAProxy »# Check service statussystemctl status haproxy
# Validate the configurationsudo haproxy -c -f /etc/haproxy/haproxy.cfg
# Restartsudo systemctl restart haproxy
# View logssudo journalctl -u haproxy -f| Chemin | Fonction |
|---|---|
/etc/haproxy/haproxy.cfg | Configuration principale |
/run/haproxy/admin.sock | Socket local de statistiques administratives |
Sécurité
Section intitulée « Sécurité »Le port 80 est ouvert sur l’interface réseau de la VM. UFW est activé et autorise le HTTP de HAProxy (port 80) et SSH (port 22). La page de statistiques sur le port 8404 est liée uniquement à localhost. Le port 443 n’est pas ouvert par défaut, car l’image ne fournit pas de certificat TLS.
Pour limiter le frontend HTTP à une adresse IP précise :
sudo ufw delete allow 80/tcpsudo ufw allow from <trusted-ip> to any port 80Pour accéder au frontend sans laisser le port 80 ouvert, utilisez un tunnel SSH :
Fermez d’abord le port public sur la VM, puisqu’il est ouvert par défaut :
sudo ufw delete allow 80/tcp# Run this on your local machinessh -L 8080:localhost:80 ubuntu@<your-vm-ip>
# Then open in a browserhttp://localhost:8080Pour une utilisation en production, configurez la terminaison TLS dans HAProxy avec un certificat de confiance ou placez-le derrière un proxy compatible TLS avant d’accepter du trafic sensible.