Files
vps-docs/hestiacp/chapitres/03-installation-hestiacp.md
Zana 2e18724685 Ajout du guide PDF HestiaCP réutilisable (HestiaCP 1.10.4)
- 14 chapitres + annexe en Markdown (chapitres/), 99 étapes
- Générateur WeasyPrint (build/build.py) : PDF générique ou
  personnalisé via --vars fichier.conf
- PDF générique + PDF personnalisé srv1.skglobalinstitute.com
- Commandes v-* vérifiées contre le code source HestiaCP 1.10.4
- 03-bis-hestiacp.md pointe vers le nouveau guide

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_018J2PsVQ28oW4xEkWJpcU9G
2026-09-10 20:01:59 +02:00

5.3 KiB

Installer HestiaCP

Toujours connecté en root. L'installation dure 15 à 30 minutes.

Ouvrir une session tmux

Si la connexion SSH coupe pendant l'installation, tmux la garde en vie sur le serveur.

tmux new -s hestia

Tip

Si vous êtes déconnecté, reconnectez-vous puis tapez tmux attach -t hestia pour retrouver l'installation en cours.

Télécharger l'installeur officiel

cd /root
wget https://raw.githubusercontent.com/hestiacp/hestiacp/release/install/hst-install.sh

Note

En cas d'erreur SSL : apt-get update && apt-get install -y ca-certificates, puis relancez le wget. Le site officiel propose aussi un générateur de commande : https://hestiacp.com/install.html.

Lancer l'installation

Chaque option est expliquée juste après la commande. Copiez la commande en entier :

bash hst-install.sh \
  --hostname {{FQDN}} \
  --email {{EMAIL}} \
  --username {{ADMIN}} \
  --port {{PANEL_PORT}} \
  --lang fr \
  --apache yes --phpfpm yes --multiphp '8.3,8.4' \
  --vsftpd no --proftpd no \
  --named yes \
  --mysql yes --postgresql no \
  --exim yes --dovecot yes --sieve yes \
  --clamav yes --spamassassin yes \
  --iptables yes --fail2ban yes \
  --quota no --resourcelimit no --webterminal no \
  --api no
Option Choix Pourquoi
--hostname {{FQDN}} Nom du serveur et adresse du panel
--email {{EMAIL}} Reçoit les identifiants et les alertes. Prenez une adresse externe (Gmail…) : le mail du serveur n'existe pas encore
--username {{ADMIN}} Administrateur du panel. Pas admin (voir chapitre 2)
--port {{PANEL_PORT}} Port du panel (8083 par défaut)
--apache
--phpfpm
yes Nginx en façade + Apache derrière : les .htaccess (Symfony, WordPress) fonctionnent
--multiphp 8.3, 8.4 Versions de PHP installées ; la plus haute (8.4) devient celle par défaut. D'autres versions peuvent s'ajouter plus tard
--vsftpd
--proftpd
no Pas de FTP (non chiffré) : on déploie par SSH/SFTP et git
--named yes Serveur DNS Bind : vos domaines ont leurs propres serveurs de noms
--mysql yes MariaDB 11.8
--exim
--dovecot
--sieve
yes Envoi, réception et filtres de messagerie
--clamav
--spamassassin
yes Antivirus et antispam (demandent au moins 3 Go de RAM)
--iptables
--fail2ban
yes Pare-feu et bannissement automatique des attaques
--resourcelimit no Encore instable d'après les notes de version (1.9.0)
--webterminal no Pas de terminal dans le navigateur : on utilise SSH
--api no L'API distante ne sert pas ici ; moins de surface d'attaque

Déroulement :

  1. L'installeur affiche le récapitulatif des composants. Répondez y pour continuer.
  2. Il demande le mot de passe administrateur. Tapez un mot de passe long et unique (au moins 16 caractères) et notez-le dans votre gestionnaire de mots de passe. Il s'affiche en clair à l'écran : c'est normal.
  3. Si l'installeur signale des paquets en conflit, répondez y pour les supprimer. Sur un système neuf préparé au chapitre 2, il ne devrait pas y en avoir.

Warning

Ne touchez à rien pendant l'installation. À la fin, l'installeur affiche « Congratulations! » avec l'adresse du panel, le nom d'utilisateur et le mot de passe, et envoie le même message à {{EMAIL}}.

Redémarrer le serveur

L'installeur demande d'appuyer sur une touche, puis redémarre. Sinon :

reboot

Au premier démarrage, une tâche programmée par HestiaCP demande automatiquement un certificat Let's Encrypt pour {{FQDN}}. Cela ne marche que si l'enregistrement DNS du chapitre 1 est en place.

Note

Le journal complet de l'installation est dans /root/hst_install_backups/, et les journaux Let's Encrypt dans /var/log/hestia/.

Se connecter au panel

Ouvrez dans votre navigateur :

https://{{FQDN}}:{{PANEL_PORT}}

Connectez-vous avec {{ADMIN}} et votre mot de passe.

[!CHECK] Le cadenas du navigateur indique un certificat valide (émis par Let's Encrypt). Si le navigateur signale un certificat non valide, passez à l'étape suivante.

Réparer le certificat du panel (si besoin)

Uniquement si le certificat n'est pas valide. Reconnectez-vous en SSH en root, vérifiez que le nom du serveur pointe bien vers le VPS, puis demandez le certificat :

dig +short {{FQDN}}
/usr/local/hestia/bin/v-change-sys-hostname {{FQDN}}
/usr/local/hestia/bin/v-add-letsencrypt-host

[!CHECK] dig doit répondre {{IP}}, et v-add-letsencrypt-host ne doit afficher aucune erreur. Rechargez ensuite le panel dans le navigateur.

Découvrir l'interface

  • Utilisateurs : les comptes d'hébergement. Chaque utilisateur Hestia est un utilisateur Linux avec son dossier /home/<utilisateur>.
  • Web, DNS, Messagerie, Bases de données, Tâches cron, Sauvegardes : les ressources de l'utilisateur sélectionné.
  • Roue dentée (Paramètres du serveur) : services, pare-feu, mises à jour, configuration. Le bouton Moniteur de tâches affiche les graphiques de charge.

[!DANGER] N'hébergez rien sous le compte administrateur La documentation officielle recommande de créer un utilisateur dédié pour vos sites, domaines et mails (chapitre 5). Le compte {{ADMIN}} sert uniquement à administrer.