# 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. ```bash 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 ```bash 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 : . ## Lancer l'installation Chaque option est expliquée juste après la commande. Copiez la commande **en entier** : ```bash 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 : ```bash 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 : ```text 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 : ```bash 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/`. - **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.