Répertoire d'articles
最新 Hestia CP Ce guide complet d'installation d'Adminer inclut un déploiement en un clic, le renforcement de la sécurité et une configuration automatisée. Il vous apprend pas à pas à déployer des outils de gestion de bases de données et à protéger votre serveur, permettant ainsi aux débutants de démarrer rapidement et de résoudre les problèmes liés à l'exploitation et à la maintenance d'HestiaCP et d'Adminer.
Si vous utilisez encore des outils de gestion de bases de données sans aucune protection, vous donnez les clés aux pirates informatiques.
Pourquoi choisir Adminer plutôt que... phpMyAdmin?
Adminer se compose d'un seul fichier PHP de moins de 1 Mo, ce qui rend le déploiement extrêmement simple, rapide et économe en ressources.
Comparé à la structure complexe de phpMyAdmin, Adminer est plus adapté aux VPS, aux petits sites web et aux projets personnels.

Étapes d'installation de l'administrateur dans HestiaCP
1. Téléchargez le fichier Administrateur
Allez à Site officiel d'Adminer Téléchargez la dernière version adminer.php.
Téléversez le fichier dans le répertoire du site web HestiaCP, par exemple :
/home/username/web/adminer.domain.com/public_html/adminer.php
2. Créez un sous-domaine et activez le protocole SSL.
Ajoutez un sous-domaine dans le panneau HestiaCP adminer.domain.comActivez le protocole SSL Let's Encrypt pour garantir une transmission sécurisée.
3. Configurer la protection par mot de passe Nginx
Ajoutez les éléments suivants au fichier de configuration Nginx pour le sous-domaine :
location / {
auth_basic "Restricted Area";
auth_basic_user_file /etc/nginx/.htpasswd;
root /home/username/web/adminer.domain.com/public_html;
index index.php adminer.php;
}
Générer un fichier de mots de passe :
sudo apt-get install apache2-utils
sudo htpasswd -c /etc/nginx/.htpasswd adminuser
Lorsque vous accédez à l'interface d'administration, une boîte de dialogue de mot de passe apparaîtra et vous ne pourrez vous connecter qu'en saisissant le nom d'utilisateur et le mot de passe corrects.
Mise à jour automatique des fichiers d'administrateur
Pour éviter les risques de sécurité liés à l'utilisation d'anciennes versions, les mises à jour automatiques peuvent être réalisées à l'aide de scripts shell et de tâches planifiées Cron.
Exemple de script de mise à jour
#!/bin/bash
URL="https://www.adminer.org/latest.php"
TARGET="/home/username/web/adminer.domain.com/public_html/adminer.php"
wget -q -O "$TARGET" "$URL"
chown username:username "$TARGET"
chmod 644 "$TARGET"
Enregistrer sous /usr/local/bin/update-adminer.shEt ajoutez une tâche planifiée :
crontab -e
0 3 * * 1 /usr/local/bin/update-adminer.sh
Ainsi, le fichier Administrateur sera automatiquement mis à jour tous les lundis à 3 heures du matin.
Fail2Ban, une attaque anti-force brute
L'authentification de base simple est vulnérable aux attaques par force brute, tandis que Fail2Ban peut bloquer automatiquement les adresses IP malveillantes.
Configuration du filtre
fichier:/etc/fail2ban/filter.d/nginx-adminer.conf
[Definition]
failregex = ^<HOST> - .* "GET /adminer.php HTTP/.*" 401
ignoreregex =
Configuration de la prison (durée de bannissement progressive)
fichier:/etc/fail2ban/jail.local
[nginx-adminer]
enabled = true
filter = nginx-adminer
port = http,https
logpath = /var/log/nginx/access.log
maxretry = 3
findtime = 600
bantime.increment = true
bantime.rndtime = 60
bantime.factor = 2
bantime = 600
Effet : La première suspension est de 10 minutes, la deuxième de 20 minutes, la troisième de 40 minutes, et ainsi de suite. Les attaquants répétés seront suspendus pour des durées de plus en plus longues.
Script de déploiement complet en un clic
Enregistrer sous /usr/local/bin/setup-fail2ban-adminer.sh:
#!/bin/bash
FILTER_PATH="/etc/fail2ban/filter.d/nginx-adminer.conf"
JAIL_PATH="/etc/fail2ban/jail.local"
cat > $FILTER_PATH << 'EOF'
[Definition]
failregex = ^<HOST> - .* "GET /adminer.php HTTP/.*" 401
ignoreregex =
EOF
cat >> $JAIL_PATH << 'EOF'
[nginx-adminer]
enabled = true
filter = nginx-adminer
port = http,https
logpath = /var/log/nginx/access.log
maxretry = 3
findtime = 600
bantime.increment = true
bantime.rndtime = 60
bantime.factor = 2
bantime = 600
EOF
systemctl restart fail2ban
fail2ban-client status nginx-adminer
à propos de :
sudo chmod +x /usr/local/bin/setup-fail2ban-adminer.sh
sudo /usr/local/bin/setup-fail2ban-adminer.sh
Conclusion : Concilier sécurité et efficacité
Je suis convaincu que les outils de gestion de bases de données ne peuvent être laissés sur Internet en toute tranquillité. La conception légère d'Adminer est séduisante, mais les mesures de sécurité doivent être à la hauteur. La protection par mot de passe constitue la première ligne de défense, les mises à jour automatiques assurent une protection continue et Fail2Ban propose des contre-mesures intelligentes. Seule la combinaison de ces trois éléments permet de créer un environnement de gestion de bases de données à la fois performant et sécurisé.
Un véritable maître n'est pas seulement celui qui sait fabriquer des outils, mais celui qui sait les protéger.
J'espère que le blog de Chen Weiliang ( https://www.chenweiliang.com/ L'article « Installation de l'interface d'administration d'HestiaCP : Paramètres d'automatisation de la sécurité + Optimisation de la gestion des bases de données » partagé ici pourrait vous être utile.
Bienvenue à partager le lien de cet article :https://www.chenweiliang.com/cwl-34018.html
