Comment autoriser les versions non-premium sur votre serveur Minecraft

Avertissement important

Autoriser les versions non-premium sur votre serveur présente des risques :

  • Sécurité réduite : N'importe qui peut usurper l'identité d'un joueur
  • Pas d'authentification Mojang : Les comptes ne sont pas vérifiés
  • Risque de pseudos dupliqués : Plusieurs joueurs peuvent avoir le même nom
  • Violations possibles : Peut violer les conditions d'utilisation de Mojang

Recommandation : Utilisez cette configuration uniquement pour des serveurs privés entre amis ou pour des tests.

Prérequis

  • Accès administrateur à votre panel de gestion
  • Un serveur Minecraft (Spigot, Paper, ou vanilla)
  • Compréhension des risques de sécurité

Méthode 1 : Configuration basique (Serveur unique)

Cette méthode fonctionne pour un serveur Minecraft standard sans BungeeCord.

Étape 1 : Désactiver l'authentification en ligne

  1. Connectez-vous à votre panel de gestion
  2. Accédez à la section Fichiers ou Gestionnaire de fichiers
  3. Ouvrez le fichier server.properties
  4. Trouvez la ligne suivante :
online-mode=true
  1. Changez-la en :
online-mode=false
  1. Sauvegardez le fichier

Étape 2 : Redémarrer le serveur

  1. Retournez à l'accueil du panel
  2. Redémarrez votre serveur Minecraft
  3. Attendez que le serveur démarre complètement

Étape 3 : Tester la connexion

Les joueurs avec des versions non-premium peuvent maintenant se connecter avec n'importe quel pseudo.

Méthode 2 : Avec plugin d'authentification (Recommandé)

Pour améliorer la sécurité, utilisez un plugin d'authentification comme AuthMe.

Étape 1 : Installer AuthMe

  1. Téléchargez AuthMe depuis https://www.spigotmc.org/resources/authmereloaded.6269/
  2. Placez le fichier JAR dans le dossier plugins
  3. Redémarrez le serveur

Étape 2 : Désactiver online-mode

Comme dans la Méthode 1, changez dans server.properties :

online-mode=false

Étape 3 : Configurer AuthMe

Ouvrez plugins/AuthMe/config.yml et vérifiez ces paramètres :

settings:
  # Forcer l'enregistrement
  force:
    forceRegister: true
    forceLogin: true
  
  # Protection du spawn
  isTeleportToSpawnEnabled: true
  
  # Sessions
  sessions:
    enabled: true
    timeout: 10

# Messages en français (optionnel)
messages:
  language: 'fr'

Étape 4 : Commandes pour les joueurs

Les joueurs devront s'enregistrer et se connecter :

Première connexion :

/register <motdepasse> <motdepasse>

Connexions suivantes :

/login <motdepasse>

Changer de mot de passe :

/changepassword <ancien> <nouveau>

Méthode 3 : Configuration avec BungeeCord

Si vous utilisez un réseau BungeeCord, la configuration est différente.

Configuration BungeeCord

Étape 1 : Modifier config.yml du proxy

Ouvrez config.yml sur le serveur BungeeCord :

online_mode: false

ATTENTION : Sur BungeeCord, c'est online_mode avec un underscore, pas un tiret.

Étape 2 : Configurer les serveurs backend

Sur tous les serveurs backend, dans server.properties :

online-mode=false

Dans spigot.yml :

settings:
  bungeecord: true

Installer un plugin d'authentification

Pour BungeeCord, utilisez JPremium ou AuthMe en mode BungeeCord.

Option A : JPremium (Recommandé pour BungeeCord)

  1. Téléchargez JPremium
  2. Installez-le sur le proxy BungeeCord ET sur tous les serveurs backend
  3. Configurez-le pour permettre les connexions non-premium

Configuration JPremium (config.yml) :

# Mode mixte : premium et non-premium
online-mode: auto

# Autoriser les connexions non-premium
allow-premium-users: true
allow-offline-users: true

Option B : AuthMe avec BungeeCord

  1. Installez AuthMeBungee sur le proxy
  2. Installez AuthMe sur tous les serveurs backend
  3. Configurez la synchronisation entre eux

Sécurité et protection

Protection contre l'usurpation d'identité

Avec online-mode=false, n'importe qui peut prendre le pseudo d'un administrateur. Voici comment vous protéger :

1. Plugin d'authentification obligatoire

Utilisez AuthMe ou JPremium pour forcer les joueurs à s'enregistrer.

2. Protection des comptes administrateurs

Dans AuthMe (config.yml) :

settings:
  security:
    # Bloquer les pseudos importants
    unregisteredGroup: 'unregistered'
    
protection:
  # Liste des pseudos protégés
  enableProtection: true
  countries: []
  
  # Noms d'utilisateurs interdits
  UnrestrictedNames:
  - 'Admin'
  - 'Moderator'
  - 'Owner'

3. Whitelist pour les admins

Activez la whitelist et ajoutez manuellement les administrateurs :

white-list=true

Puis dans le jeu :

/whitelist add NomAdmin
/whitelist on

Plugins de sécurité recommandés

AuthMe Reloaded :

  • Système de connexion/inscription
  • Protection contre le spam
  • Captcha anti-bot

LoginSecurity :

  • Alternative à AuthMe
  • Plus léger
  • Facile à configurer

nLogin :

  • Moderne et performant
  • Support des bases de données
  • Interface intuitive

Configuration avancée d'AuthMe

Base de données MySQL

Pour un serveur avec beaucoup de joueurs, utilisez MySQL :

Dans config.yml d'AuthMe :

DataSource:
  # Type de base de données
  backend: 'MYSQL'
  
  # Informations de connexion
  mySQLHost: 'localhost'
  mySQLPort: '3306'
  mySQLDatabase: 'authme'
  mySQLUsername: 'root'
  mySQLPassword: 'votre_mot_de_passe'
  mySQLTablename: 'authme'

Limiter les tentatives de connexion

security:
  captcha:
    # Activer le captcha après X tentatives
    useCaptcha: true
    maxLoginTries: 5
    captchaLength: 5

Sessions automatiques

Pour ne pas redemander le mot de passe à chaque connexion :

settings:
  sessions:
    enabled: true
    # Durée en minutes
    timeout: 10

Protection IP

Lier les comptes à une adresse IP :

settings:
  restrictions:
    # Un compte = une IP
    maxRegPerIp: 1
    
    # Nombre maximum de comptes par IP
    maxLoginPerIp: 1

Commandes administrateur AuthMe

Gestion des joueurs

/authme register <joueur> <motdepasse>

Enregistrer un joueur manuellement

/authme unregister <joueur>

Supprimer le compte d'un joueur

/authme forcelogin <joueur>

Forcer la connexion d'un joueur

/authme changepassword <joueur> <nouveau>

Changer le mot de passe d'un joueur

Informations

/authme version

Afficher la version d'AuthMe

/authme reload

Recharger la configuration

/authme debug

Activer le mode debug

Problèmes courants et solutions

Les joueurs premium ne peuvent plus se connecter

Si vous avez des joueurs avec des comptes officiels Mojang :

Solution 1 : Utilisez JPremium en mode mixte (supporte premium ET non-premium)

Solution 2 : Gardez online-mode=true et installez un plugin comme FlexibleLogin

Erreur "Failed to verify username"

  • Vérifiez que online-mode=false dans server.properties
  • Redémarrez complètement le serveur
  • Videz le cache du launcher Minecraft

AuthMe ne fonctionne pas

  • Vérifiez que le plugin est dans le dossier plugins
  • Vérifiez les logs pour les erreurs
  • Assurez-vous que online-mode=false
  • Vérifiez la version d'AuthMe compatible avec votre serveur

Les joueurs contournent l'authentification

  • Vérifiez que forceRegister: true dans la config
  • Installez ProtocolLib (dépendance d'AuthMe)
  • Activez la protection du spawn dans AuthMe

Pseudos dupliqués

Avec online-mode=false, deux joueurs peuvent avoir le même pseudo s'ils se connectent en même temps.

Solution : AuthMe empêche automatiquement les connexions simultanées avec le même pseudo.

Alternatives modernes

1. FastLogin

Plugin moderne qui permet les connexions automatiques pour les comptes premium :

  • Détecte automatiquement les comptes premium
  • Pas besoin de s'authentifier pour les comptes officiels
  • Supporte BungeeCord et Velocity

2. nLogin

Alternative moderne à AuthMe :

  • Interface plus intuitive
  • Support natif de BungeeCord
  • Base de données optimisée

3. JPremium

Idéal pour les réseaux BungeeCord :

  • Mode mixte premium/non-premium
  • Authentification transparente
  • Support complet de BungeeCord

Recommandations finales

Pour un serveur entre amis

Configuration simple :

  1. online-mode=false
  2. Whitelist activée
  3. Ajout manuel des pseudos autorisés

Pour un serveur public

Configuration sécurisée :

  1. online-mode=false
  2. AuthMe avec MySQL
  3. Protection des pseudos importants
  4. Limitation des tentatives de connexion
  5. Captcha anti-bot

Pour un réseau BungeeCord

Configuration complète :

  1. BungeeCord avec online_mode: false
  2. JPremium en mode mixte
  3. Base de données partagée
  4. Sécurité renforcée sur le proxy

Conclusion

Autoriser les versions non-premium nécessite de désactiver online-mode et d'installer un système d'authentification alternatif comme AuthMe pour maintenir un minimum de sécurité. Cette configuration est acceptable pour des serveurs privés mais nécessite une vigilance accrue sur les serveurs publics. Pensez toujours à protéger les comptes administrateurs et à surveiller les connexions suspectes.