Télécharger, vérifier et installer AegisAdmin

Ce guide explique comment installer AegisAdmin depuis son dépôt APT officiel et effectuer les premiers contrôles sur une machine de test.

Avant de commencer


AegisAdmin administre des composants sensibles du serveur. Pour un premier essai, utilisez une machine virtuelle ou un serveur de test disposant d’une sauvegarde restaurable et conservez un accès SSH indépendant.

  • Ne commencez pas sur un serveur de production.
  • Utilisez un compte autorisé à employer sudo.
  • Conservez un snapshot ou une sauvegarde récente de la machine.
  • Ne désactivez jamais les contrôles de signature APT.
  • N’installez pas une clé dont l’empreinte diffère de celle publiée ci-dessous.

1. Vérifier la machine


La livraison actuellement publiée est destinée aux systèmes Debian ou Ubuntu utilisant systemd, APT et l’architecture amd64. Apache est facultatif et n’est jamais installé automatiquement par AegisAdmin.

dpkg --print-architecture
ps -p 1 -o comm=
Résultats attendus :
amd64
systemd
Installez les outils nécessaires au téléchargement et au contrôle de la clé :
sudo apt update
sudo apt install ca-certificates gnupg wget

2. Télécharger la clé publique officielle


Téléchargez d’abord la clé dans un fichier temporaire, sans l’installer :

wget --https-only 
    --output-document=/tmp/aegisadmin-archive-keyring.gpg 
    https://packages.aegisadmin.fr/aegisadmin-archive-keyring.gpg
Affichez son identité et ses empreintes :
gpg --show-keys --with-fingerprint 
    /tmp/aegisadmin-archive-keyring.gpg
Identité attendue :
AegisAdmin Archive 
Empreinte officielle de la clé principale :
D01E 7409 36E2 CB6E 7BA8  76F9 C103 5511 5D7F 97DB
Sous-clé de signature initiale :
591B 7C62 F74D 090D 3B2C  E8EF CA15 4A9B 3734 C7A1
Vous pouvez obtenir l’empreinte principale sous une forme sans espaces :
gpg --show-keys --with-colons --fingerprint 
    /tmp/aegisadmin-archive-keyring.gpg 
    | awk -F: '$1 == "fpr" { print $10; exit }'
La commande doit afficher exactement :
D01E740936E2CB6E7BA876F9C10355115D7F97DB
Arrêtez immédiatement l’installation si l’empreinte diffère.

3. Installer la clé et configurer le dépôt APT


Installez la clé publique dans le trousseau réservé à AegisAdmin :

sudo install -o root -g root -m 0644 
    /tmp/aegisadmin-archive-keyring.gpg 
    /usr/share/keyrings/aegisadmin-archive-keyring.gpg
Téléchargez la déclaration du dépôt et examinez-la :
wget --https-only 
    --output-document=/tmp/aegisadmin.sources 
    https://packages.aegisadmin.fr/aegisadmin.sources
cat /tmp/aegisadmin.sources
Contenu attendu :
Types: deb
URIs: https://packages.aegisadmin.fr
Suites: stable
Components: main
Architectures: amd64
Signed-By: /usr/share/keyrings/aegisadmin-archive-keyring.gpg
Installez ensuite cette déclaration :
sudo install -o root -g root -m 0644 
    /tmp/aegisadmin.sources 
    /etc/apt/sources.list.d/aegisadmin.sources
La directive Signed-By limite la confiance accordée à cette clé au seul dépôt AegisAdmin. N’utilisez pas apt-key, trusted=yes ou une option permettant d’ignorer une erreur de signature.

4. Contrôler le paquet proposé

Actualisez les index puis vérifiez l’origine et la version candidate :

sudo apt update
apt policy aegisadmin
La version candidate doit provenir de :
https://packages.aegisadmin.fr stable/main amd64 Packages
APT vérifie successivement la signature du fichier InRelease, les sommes des index et la somme du paquet téléchargé. Une erreur de signature, de date de validité ou de somme doit interrompre l’installation.


Pour télécharger le paquet sans l’installer et consulter ses informations :
cd /tmp
apt download aegisadmin
dpkg-deb --info aegisadmin_*_amd64.deb
Le champ Package doit valoir aegisadmin, l’architecture amd64 et le responsable AegisAdmin.

5. Installer AegisAdmin

Lancez l’installation depuis le dépôt signé :

sudo apt install aegisadmin
Le paquet installe notamment :

  • le serveur web Go non privilégié ;
  • le backend système Go privilégié ;
  • les services systemd correspondants ;
  • une écoute HTTPS Go directe sur 8443 sans Apache, ou un proxy Apache vers 127.0.0.1:9080 lorsqu’il est présent ;
  • une paire TLS locale et une base SQLite ;
  • les migrations et les outils d’administration.

La fin de l’installation doit indiquer que les services ont été redémarrés. En cas d’erreur, consultez la section de diagnostic avant de relancer l’installation.


6. Initialiser le compte administrateur

Cette opération est nécessaire uniquement lors d’une installation réellement neuve :

sudo aegisadmin initialize
L’outil demande la langue par défaut (fr ou en), le prénom, le nom, l’adresse e-mail, puis le mot de passe et sa confirmation. Cette langue pilote l’écran de connexion ; chaque utilisateur peut ensuite choisir sa langue dans Mon compte. Le mot de passe doit contenir entre 12 et 72 caractères. Sa saisie est matérialisée par des caractères #.

L’identifiant de connexion est toujours :
root
Le prénom, le nom et l’adresse e-mail ne remplacent pas cet identifiant. Ne relancez pas l’initialisation si l’outil indique que le compte root existe déjà.

Lorsque MySQL ou MariaDB est actif, le même parcours configure le compte de supervision dédié. L’étape peut être reprise avec :
sudo aegisadmin mysql-setup
Le mot de passe administrateur SQL est saisi de façon masquée et n’est pas enregistré par AegisAdmin.


7. Contrôler le fonctionnement

sudo systemctl status 
    aegisadmin-system.service 
    aegisadmin-web.service 
    --no-pager -l
sudo aegisadmin version
Avec Apache, contrôlez séparément apache2.service et la sonde https://127.0.0.1:9080/readyz. Sans Apache, utilisez https://127.0.0.1:8443/readyz. Les deux services AegisAdmin doivent être actifs. La sonde doit renvoyer une réponse de cette forme :
{"status":"ok","version":"VERSION","backend":"ok","database":"ok"}
Avec Apache, le port 9080 correspond à l’écoute locale du serveur Go et ne doit pas être ouvert sur Internet. Sans Apache, Go écoute directement sur le port dédié 8443.


8. Ouvrir l’interface pour la première fois


Le paquet fournit un accès HTTPS dédié, servi directement par Go sans Apache ou par le VirtualHost dédié lorsqu’Apache est présent :

https://ADRESSE_IP_DU_SERVEUR:8443/
Vérifiez que le serveur écoute sur ce port :
sudo ss -ltnp | grep ':8443'
Le pare-feu n’est pas modifié automatiquement. Si le port est filtré, autorisez uniquement l’adresse ou le réseau de test selon l’outil de pare-feu déjà utilisé sur la machine.

Le certificat initial est local et n’est pas signé par une autorité publique. Le navigateur affiche donc normalement un avertissement. Avant de l’accepter, affichez son empreinte directement sur le serveur :
sudo openssl x509 
    -in /etc/aegisadmin-system/tls/admin-local.crt 
    -noout -sha256 -fingerprint
Comparez cette empreinte avec celle présentée par le navigateur, puis connectez-vous avec l’identifiant root et le mot de passe défini précédemment.

9. Premières vérifications conseillées


Commencez par des opérations de consultation :vérifier le tableau de bord et le rafraîchissement des ressources ;

  1. ouvrir Processus, Stockage, Services, Réseau et Journaux ;
  2. contrôler Apache, Fail2ban, Pare-feu, Cron et Certificats TLS ;
  3. vérifier Mises à jour, Utilisateurs, Modules, Paramètres et Config. serveur ;
  4. tester les quatre thèmes, le français, l’anglais et une largeur d’écran réduite ;
  5. créer une sauvegarde depuis Paramètres > Sauvegarde de la base.


Ne testez les actions de modification qu’après avoir créé une sauvegarde ou un snapshot de la machine.

10. Installer les versions suivantes

sudo apt update
apt policy aegisadmin
sudo apt install aegisadmin
La base, les sauvegardes, les snapshots, les configurations locales et la paire TLS sont conservés pendant une mise à niveau normale.

11. Diagnostic rapide

Si l’interface ne répond pas :

sudo journalctl -u aegisadmin-system.service -n 100 --no-pager -l
sudo journalctl -u aegisadmin-web.service -n 100 --no-pager -l
sudo ss -ltnp | grep -E ':8443|:9080'
Si Apache est installé, ajoutez sudo journalctl -u apache2.service -n 100 --no-pager -l et sudo apache2ctl configtest.

Contrôlez dans cet ordre :aegisadmin-system.service ;
  1. le socket /run/aegisadmin-system/backend.sock ;
  2. aegisadmin-web.service ;
  3. la sonde locale adaptée au mode d’installation ;
  4. l’écoute Go directe sur 8443 ou Apache devant 9080 ;
  5. le pare-feu et le routage réseau.

Ne démarrez jamais manuellement le serveur web AegisAdmin en root.


12. Récupérer le compte root

Pour remplacer le mot de passe root :

sudo /usr/libexec/aegisadmin/aegisadmin-admin reset-root-password
sudo systemctl restart aegisadmin-web.service
Pour désactiver sa double authentification après la perte du générateur TOTP :
sudo /usr/libexec/aegisadmin/aegisadmin-admin disable-root-two-factor
sudo systemctl restart aegisadmin-web.service
Ces opérations invalident les sessions root existantes.

13. Désinstaller AegisAdmin d’une machine de test


La suppression du paquet conserve volontairement les données :

sudo apt remove aegisadmin
La purge retire également les configurations Debian et la paire TLS locale, mais conserve la base, ses sauvegardes et les snapshots :
sudo apt purge aegisadmin
Ne supprimez manuellement les données restantes qu’après avoir vérifié leur sauvegarde et uniquement sur une machine dont la destruction est autorisée.


14. Signaler un problème


Sans transmettre de mot de passe, de clé privée, de secret TOTP ou de donnée personnelle, joignez les informations suivantes :
cat /etc/os-release
uname -a
dpkg --print-architecture
sudo aegisadmin version
apt policy aegisadmin
Indiquez également les étapes permettant de reproduire le problème, le résultat attendu, le résultat observé et uniquement les extraits de journaux nécessaires.

Site officiel : aegisadmin.fr
Dépôt de paquets : packages.aegisadmin.fr
Code source : GitHub