initial commit
This commit is contained in:
228
README.md
Normal file
228
README.md
Normal file
@@ -0,0 +1,228 @@
|
||||
# Interface Web d'Administration - NationsGlory
|
||||
|
||||
Application web complète pour gérer votre serveur Minecraft 1.6.4 sans taper une seule commande!
|
||||
|
||||
## 🚀 Fonctionnalités
|
||||
|
||||
### 🔐 Sécurité
|
||||
- Authentification sécurisée par mot de passe
|
||||
- Seuls les OPs du serveur MC peuvent se connecter
|
||||
- Sessions sécurisées avec expiration
|
||||
|
||||
### ⌨️ Console RCON
|
||||
- Exécutez des commandes directement depuis l'interface
|
||||
- Historique complet des commandes
|
||||
- Réponses en temps réel
|
||||
|
||||
### 📊 Dashboard
|
||||
- État du serveur en temps réel
|
||||
- Nombre de joueurs connectés
|
||||
- Informations rapides du serveur
|
||||
|
||||
### 📜 Logs
|
||||
- Visualisation des logs en temps réel
|
||||
- Recherche dans les logs
|
||||
- Plusieurs fichiers logs supportés
|
||||
|
||||
### 👥 Gestion des Joueurs
|
||||
- Liste de tous les joueurs ayant joué
|
||||
- UUID et dernière connexion
|
||||
- Informations détaillées
|
||||
|
||||
### ✅ Whitelist
|
||||
- Ajouter/supprimer des joueurs
|
||||
- Gestion complète de la whitelist
|
||||
- Support des formats JSON et TXT
|
||||
|
||||
### 💾 Backups
|
||||
- Création de backups automatiques
|
||||
- Gestion des anciens backups
|
||||
- Suppression facile
|
||||
|
||||
### ⚙️ Paramètres
|
||||
- Modification des settings du serveur
|
||||
- Changement du mot de passe RCON
|
||||
- Gestion complète de server.properties
|
||||
|
||||
### 🔄 Commandes Utiles
|
||||
- Redémarrage du serveur
|
||||
- Sauvegarde du monde
|
||||
- Notifications aux joueurs
|
||||
|
||||
## 📋 Prérequis
|
||||
|
||||
- Node.js 14+ et npm
|
||||
- Serveur Minecraft avec RCON activé
|
||||
- RCON correctement configuré dans server.properties
|
||||
|
||||
## 🔧 Installation
|
||||
|
||||
### 1. Préparer le serveur Minecraft
|
||||
|
||||
Éditer `server.properties` du serveur MC:
|
||||
```properties
|
||||
enable-rcon=true
|
||||
rcon.port=25575
|
||||
rcon.password=votreMotDePasseRcon
|
||||
```
|
||||
|
||||
Redémarrer le serveur MC.
|
||||
|
||||
### 2. Installer l'interface web
|
||||
|
||||
```bash
|
||||
cd WebNationsGlory_ServeurBuild_Red
|
||||
chmod +x install.sh
|
||||
./install.sh
|
||||
```
|
||||
|
||||
### 3. Configurer
|
||||
|
||||
Éditer `backend/.env`:
|
||||
```env
|
||||
NODE_ENV=development
|
||||
PORT=3000
|
||||
SESSION_SECRET=changez-cette-cle-en-production
|
||||
SERVER_DIR=/path/to/NationsGlory_ServeurBuild_Red
|
||||
RCON_HOST=localhost
|
||||
RCON_PORT=25575
|
||||
```
|
||||
|
||||
### 4. Lancer l'application
|
||||
|
||||
```bash
|
||||
chmod +x start.sh
|
||||
./start.sh
|
||||
```
|
||||
|
||||
L'interface est maintenant accessible sur: **http://localhost:3000**
|
||||
|
||||
## 🎯 Premier Démarrage
|
||||
|
||||
1. Ouvrez http://localhost:3000
|
||||
2. Créez le compte admin (doit être un OP du serveur)
|
||||
3. Connectez-vous
|
||||
4. Explorez l'interface!
|
||||
|
||||
## 📁 Structure du Projet
|
||||
|
||||
```
|
||||
WebNationsGlory_ServeurBuild_Red/
|
||||
├── backend/
|
||||
│ ├── package.json
|
||||
│ ├── .env (à créer)
|
||||
│ └── src/
|
||||
│ ├── server.js (point d'entrée)
|
||||
│ ├── routes/
|
||||
│ │ ├── auth.js (authentification)
|
||||
│ │ ├── rcon.js (console & contrôle)
|
||||
│ │ ├── logs.js (visualisation logs)
|
||||
│ │ ├── players.js (gestion joueurs)
|
||||
│ │ ├── whitelist.js (gestion whitelist)
|
||||
│ │ ├── backup.js (gestion backups)
|
||||
│ │ └── server.js (paramètres)
|
||||
│ └── utils/
|
||||
│ └── rcon.js (client RCON)
|
||||
├── frontend/
|
||||
│ └── public/
|
||||
│ ├── index.html
|
||||
│ ├── js/app.js
|
||||
│ └── css/style.css
|
||||
└── start.sh
|
||||
```
|
||||
|
||||
## 🔌 API Endpoints
|
||||
|
||||
### Authentification
|
||||
- `POST /api/auth/register` - Créer un compte admin
|
||||
- `POST /api/auth/login` - Se connecter
|
||||
- `GET /api/auth/check` - Vérifier la connexion
|
||||
- `POST /api/auth/logout` - Se déconnecter
|
||||
|
||||
### Console RCON
|
||||
- `POST /api/rcon/command` - Exécuter une commande
|
||||
- `GET /api/rcon/history` - Historique des commandes
|
||||
- `POST /api/rcon/restart` - Redémarrer le serveur
|
||||
- `POST /api/rcon/save` - Sauvegarder
|
||||
|
||||
### Serveur
|
||||
- `GET /api/server` - Récupérer les paramètres
|
||||
- `POST /api/server/update` - Mettre à jour un paramètre
|
||||
|
||||
### Logs
|
||||
- `GET /api/logs` - Récupérer les logs
|
||||
- `GET /api/logs/files` - Lister les fichiers logs
|
||||
- `GET /api/logs/file/:filename` - Lire un fichier spécifique
|
||||
- `GET /api/logs/search?query=...` - Chercher dans les logs
|
||||
|
||||
### Joueurs
|
||||
- `GET /api/players` - Lister les joueurs
|
||||
|
||||
### Whitelist
|
||||
- `GET /api/whitelist` - Récupérer la whitelist
|
||||
- `POST /api/whitelist/add` - Ajouter un joueur
|
||||
- `POST /api/whitelist/remove` - Retirer un joueur
|
||||
|
||||
### Backups
|
||||
- `GET /api/backup` - Lister les backups
|
||||
- `POST /api/backup/create` - Créer un backup
|
||||
- `POST /api/backup/delete/:filename` - Supprimer un backup
|
||||
|
||||
## 🆘 Dépannage
|
||||
|
||||
### La connexion RCON échoue
|
||||
- Vérifiez que RCON est activé dans server.properties
|
||||
- Vérifiez le port et le mot de passe
|
||||
- Assurez-vous que le serveur MC est en ligne
|
||||
|
||||
### Les logs ne s'affichent pas
|
||||
- Vérifiez le chemin de SERVER_DIR dans .env
|
||||
- Assurez-vous que les fichiers logs existent
|
||||
|
||||
### Les joueurs ne s'affichent pas
|
||||
- Attendez qu'au moins un joueur se soit connecté
|
||||
- Vérifiez que usercache.json existe
|
||||
|
||||
## ⚠️ Sécurité
|
||||
|
||||
En production:
|
||||
- Changez `SESSION_SECRET` avec une clé forte
|
||||
- Utilisez HTTPS
|
||||
- Placez derrière un proxy (nginx, Apache)
|
||||
- Limitez l'accès par IP si possible
|
||||
|
||||
## 📝 Logs Applicatifs
|
||||
|
||||
Les logs de l'application se trouvent dans:
|
||||
- Backend console: directement dans le terminal
|
||||
- RCON historique: `SERVER_DIR/.web-admin/rcon-history.json`
|
||||
|
||||
## 🎮 Commandes Minecraft Utiles
|
||||
|
||||
Depuis la console RCON:
|
||||
- `/say Message` - Envoyer un message à tous
|
||||
- `/tp @p @s` - Tp un joueur
|
||||
- `/give @p diamond 64` - Donner des items
|
||||
- `/weather clear` - Changer la météo
|
||||
- `/time set day` - Régler l'heure
|
||||
- `/difficulty 2` - Changer la difficulté
|
||||
|
||||
## 📞 Support
|
||||
|
||||
Pour les problèmes:
|
||||
1. Vérifiez la configuration du .env
|
||||
2. Vérifiez les logs du backend
|
||||
3. Testez RCON avec un client externe
|
||||
4. Vérifiez les permissions sur les fichiers du serveur
|
||||
|
||||
## 🔄 Mises à Jour
|
||||
|
||||
L'interface se met à jour automatiquement. Pour mettre à jour les dépendances:
|
||||
```bash
|
||||
cd backend
|
||||
npm update
|
||||
```
|
||||
|
||||
## 📄 License
|
||||
|
||||
MIT - Libre d'utilisation
|
||||
Reference in New Issue
Block a user