Configuration Bungee, bloquer des accès

C

Compte supprimé

Invité
Bonsoir !
Voilà, le projet de mon serveur avance mais j'ai un petit problème.
Je me suis rendu compte que n'importe quelle personne peut se connecter sans broncher, directement, à un serveur composant le bungeecord.
Je trouve cela problématique car le joueur n'est alors pas détecté par le Bungee et ne lui envoie donc pas les commandes/permissions qui lui sont liées.
J'ai schématisé mon problème :

1474906568-bungee.png

Bien sûr, les IPs sont des exemples x)

Et j'aimerai que cela passe en ceci :
1474906568-redirection.png

Bien sûr, les IPs sont des exemples x)

A noter que les bulles rouges peuvent très bien aussi être "Bloquage de l'accès au serveur".

Si quelqu'un a une idée, cela m'arrangerai ^^
Merchi d'avance ! :D

Le R. tibus
 

Bl4CKST4R3

| CODEUR HTML/CSS/PHP | CONFIG TS3 |
28 Février 2016
63
6
35
23
UCKANGE
Tu peux faire une chose très simple, tu mets à tous les serveurs sauf celui BungeeCord les IP chiffré de base et une ip dédier au serveur bungeecord, tu te doutes bien que les joueurs ne vont surement pas s’amuser à chercher l’IP chiffré du serveur… Sinon je crains que les possibilités éventuelles soient réduites !
 

wow0

Architecte en herbe
19 Octobre 2015
700
54
147
J'ai pas du tout compris ton schema pourtant j'ai chercher pour un coup que un mec explique aussi "bien" son prob tu pourrait le résum ?
 

Neph

Cyberchenapan
15 Mai 2016
386
168
155
autre part
crypt.lol
Je pars ici de l'hypothèse que toutes les instances de serveur minecraft sont sur la même machine ayant l'ip abc.

La solution évidente/propre/simple est de mettre à l'écoute les serveurs abc:26000, abc:27000 et abc:28000 sur localhost dans tes différents server.properties (server-ip=127.0.0.1) et laisser accessible bungee sur abc:25000.
A partir de la, les joueurs ne pourront plus joindre directement les serveurs.

Si tu souhaites tout de même rediriger les joueurs qui utiliseraient les autres ports sur abc:25000 (exactement comme sur ton schéma), il y a plusieurs solutions pour faire un proxy transparent.
En utilisant iptables et le nat, il suffit d'ajouter quelques règles aux confs précédentes.

Par exemple:

iptables -t nat -A PREROUTING -i $interface -p tcp -m tcp --dport 26000 -j REDIRECT --to-ports 25000
iptables -t nat -A PREROUTING -i $interface -p tcp -m tcp --dport 27000 -j REDIRECT --to-ports 25000
iptables -t nat -A PREROUTING -i $interface -p tcp -m tcp --dport 28000 -j REDIRECT --to-ports 25000

Remplace $interface par le nom de ta carte réseau (ip publique), probablement eth0 si tu es sur un serveur sous Debian.

Edit: si tu souhaites réellement utiliser l'ip abc (pourquoi ?) sur chaque instance de serveur, il doit être possible d'utiliser les règles précédentes en précisant de ne pas faire la redirection si l'ip source est abc ( ajouter ! -s abc ). A vérifier.
 
Dernière édition: