JeuWeb - Crée ton jeu par navigateur
bloquer une liste d'ip dynamique apache2 ? - Version imprimable

+- JeuWeb - Crée ton jeu par navigateur (https://jeuweb.org)
+-- Forum : Discussions, Aide, Ressources... (https://jeuweb.org/forumdisplay.php?fid=38)
+--- Forum : Programmation, infrastructure (https://jeuweb.org/forumdisplay.php?fid=51)
+--- Sujet : bloquer une liste d'ip dynamique apache2 ? (/showthread.php?tid=7295)

Pages : 1 2 3 4 5 6 7 8 9 10


RE: bloquer une liste d'ip dynamique apache2 ? - @lucard - 06-01-2015

je pense que xenos disait 「si une personne de tor, chez qui est passé un autre utilisateur, donc que ladresse ip est fichée, se desinscrit de tor, dans ce cas là, il ne pourra pas se connecter, pour créer un compte.'


RE: bloquer une liste d'ip dynamique apache2 ? - Xenos - 06-01-2015

Pour l'exemple de CS, tu dérives: là, on parle uniquement de multi-compte, pas de bot. Ton problème sur CS vient des bots, pas des multis.
Si le problème du bot c'est "ah ben y m'tue tout le temps", tu peux chercher à contrer par des moyens techniques, mais c'est peine perdue (qui te dit que le bot, c'est pas simplement un robot qui est physiquement présent derrière l'écran? Dur dans un tel cas de le distinguer d'un humain en chair). Tu peux aussi régler le problème en ajoutant une dimensions stratégique / crétive hors de portée du bot (je sais que la stratégie dans les FPS c'est pas forcément répandu, mais on peut faire gagner son équipe en étant futé et mauvais tireur).

Si, sur CS, un joueur joue avec 10PC en même temps (dur à imaginer, mais disons qu'il a 20 yeux et 20 bras), il ne sera pas forcément meilleur que 10 personnes avec 10 PC (ce serait même surprenant puisque le multi-compteur n'a généralement pas 10 cerveaux).


De toute façon, arache-toi les cheveux tant que tu veux: tu ne pourras pas contrer les multi-comptes: imagine que les 20 personnes au taff me laissent leur PC pendant leur pause déjeuner à midi: comment tu fais pour distinguer dans le jeu moi sur les 20 PCs de mes 20 collègues? Plus dur: si je laisse un post-it à chacun de mes collègues avec les instructions à exécuter (me donner X ressources, attaquer Y s'il est pas là...), est-ce du multi-compte?!.
Si tu tentes d'en contrer "le plus possible", tu vas passer ton temps à faire des bouts de code techniques, qui auront énormément d'effets collatéraux (je préfère side effects à effet de bord) au lieu de passer du temps sur les codes de la mécanique de jeu.
Pour le mérite, on peut le déporter sur "t'as réussi à gérer 10 comptes de front, c'est quand même pas rien, ca demande 10x plus de boulot que si t'avais qu'un compte!".
C'est marrant d'ailleurs, là, tu nous dis "ouais, le mérite, c'est d'être 10 et de se coordonner, pas d'abattre 10x plus de boulot", et pourtant, tu es développeur indépendant sans équipe (à abattre 10x plus de code que la normale?)... Confusediffle:

Cela me fait penser aux spams de ce forum. Vouloir ajouter des captchas, des confirmations d'e-mail, des détections d'IP... C'est quoi l'intérêt? Un bot finira toujours par les passer (car l'informatique évolue donc un code statique sera forcément dépassé un jour), un spam peut être posté par un humain, et un bot pourrait poster des messages intelligents et utiles (exemple: si les bots sont bloqués, impossible de faire un bot qui posterait, sur ce forum, les résumés + liens d'articles intéressants glanés sur le web).
En revanche, ce qu'il faudrait bloquer, c'est le spam. Il faut donc détecter qu'un message est un spam, et le rejeter si tel est le cas. La détection peut être délicate (langue? oui, au vu des règles du forum. Nombre de messages déjà postés? oui, mais sans pour autant brider les nouveaux. Mots-clefs? pourquoi pas. Densité de lien? Non, certains posts peuvent être utiles, courts, et bourrés de liens, comme une liste de ressources utiles).

Là, ton problème de fond (que tu as avoué à mots ouverts), c'est de favoriser la coopération... ne t'étonnes pas que les joueurs fassent alors du multi ! Mais comme in-game, tu ne traites que des comptes de jeu (et n'a pas accès à l'humain derrière la machine), alors tu vas coincer... La meilleure coopération se fait avec soi-même, puisqu'on partage toutes les informations (pas de coup en douce dans son propre cerveau, pas d'oubli de transmettre une information à l'autre puisque l'autre, c'est soi-même).
Tu veux favoriser la coopération? Fait en sorte de bien l'utiliser, tout comme une entreprise l'utilise (oui, tu détestes peut-être ce monde, mais finalement, tu es dans ses principes et concepts à pieds joints): fait en sorte que l'on puisse passer 24/7 sur un compte pour l'améliorer, avec le même taux de rendement (jouer 1h permet d'avancer d'1point, jouer 24h permet d'avancer de 24 points). Là, tu peux être certain que le multi n'apportera aucun intérêt, car être sur le compte 1 ou le compte 2 fera avancer l'ensemble (compte 1 + compte 2) de la même façon: autant n'avoir qu'un compte.
Le problème qui en découlera peut-être sera alors celui des bots (lancer 10 comptes avec 10 bots + se faire un compte à soi). Mais, là, c'est un autre sujet qu'il faut ouvrir car c'est un autre problème.

Oui, ce qui me surprenait, c'est que TOR passe (il me semble, mais c'est peut-être là que je me trompe) par les IP réelles des machines, l'intérêt du réseau étant en fait de chainer énormément d'IP de machines individuelles pour masquer le destinataire final. Donc, si on bannit toutes les IP du réseau, toute personne ayant participé au réseau aura son IP propre bannie?!


Et pour rebondir sur une de tes phrases: ce que j'attends d'un jeu, c'est un gameplay intéressant, riche et original, pas un code archi-blindé-anti-multi-au-maximum (voire même, je préfère un jeu au code ouvert aux modifications des utilisateurs pour personnaliser l'interface).


RE: bloquer une liste d'ip dynamique apache2 ? - niahoo - 06-01-2015

(06-01-2015, 09:32 AM)Xenos a écrit : Oui, ce qui me surprenait, c'est que TOR passe (il me semble, mais c'est peut-être là que je me trompe) par les IP réelles des machines, l'intérêt du réseau étant en fait de chainer énormément d'IP de machines individuelles pour masquer le destinataire final. Donc, si on bannit toutes les IP du réseau, toute personne ayant participé au réseau aura son IP propre bannie?!

Mais au final, le serveur voit uniquement l'IP de la dernière machine par laquelle les requêtes du joueur passent. Les autres IP intermédiaires ne sont pas inquiétés.


RE: bloquer une liste d'ip dynamique apache2 ? - Xenos - 06-01-2015

Donc, on va bannir le dernier intermédiaire TOR (celui qui se connecte au serveur), pas l'émetteur de la requête?

Donc, cas d'utilisation: Alice utilise TOR, Zoé aussi. Alice veut se connecter au site, via TOR. On se fiche des intermédiaires. Le réseau TOR demande à Zoé de se connecter au site: le site banni l'IP de Zoé. Alice quitte TOR et va sur le site du jeu, et ce dernier la laisse jouer?!

"Bannir TOR" me semble donc totalement inutile (okay, Alice ne peut pas utiliser TOR mais elle n'est pas elle-même bannie pour autant).


RE: bloquer une liste d'ip dynamique apache2 ? - Ter Rowan - 06-01-2015

(06-01-2015, 06:48 PM)Xenos a écrit : Donc, on va bannir le dernier intermédiaire TOR (celui qui se connecte au serveur), pas l'émetteur de la requête?

Donc, cas d'utilisation: Alice utilise TOR, Zoé aussi. Alice veut se connecter au site, via TOR. On se fiche des intermédiaires. Le réseau TOR demande à Zoé de se connecter au site: le site banni l'IP de Zoé. Alice quitte TOR et va sur le site du jeu, et ce dernier la laisse jouer?!

"Bannir TOR" me semble donc totalement inutile (okay, Alice ne peut pas utiliser TOR mais elle n'est pas elle-même bannie pour autant).

si on va au bout de la logique, ca veut dire que si Zoé joue sans TOR, elle se fait bannir, non ?

donc Zoe qui respecte les règles d'Argorate est baisée, et Alice qui triche ne l'est pas ?
c'est ça ?


RE: bloquer une liste d'ip dynamique apache2 ? - niahoo - 06-01-2015

Je crois qu'il nous manque une info : d'où provient la liste des IP qui change toutes les 30 minutes, et que représente-t'elle ?


RE: bloquer une liste d'ip dynamique apache2 ? - Xenos - 06-01-2015

D'ailleurs, on peut très facilement contourner ce système de bannissement. Démonstration:

• Le serveur de jeu (on l'appelle S) récupère la liste (on l'appelle L) des IP du réseau TOR à la date T (donc, la liste L(T))
• Alice se connecte à TOR à T+1minute: son IP n'est pas dans L(T), mais on s'en fiche...
• Alice demande une page de S: sa requête passera par des noeuds du réseau TOR, jusqu'à un noeud terminal N qui contacte directement le serveur
• Si N est dans L(T), le serveur refuse de répondre à la requête: Alice reçoit une erreur 403. Alice renvoie alors la requête et recommence au • précédent
• Des gens rejoignent le réseau TOR entre temps: leurs IP ne sont donc pas dans L(T)
• La requête d'Alice finit forcément par passer par un de ces noeuds terminaux qui ne sont pas dans L(T) (plus le temps avance, plus L(T) est obsolète, et donc, plus on a de chances de finir sur un noeud TOR qui n'est pas dans L(T))
• Alice récupère la réponse du serveur S
• A voir: Alice note l'IP du noeud terminal de TOR qui a été utilisé, et elle demande à ce que sa prochaine requête passe par ce noeud (je ne connais pas assez TOR pour savoir si on peut demander au réseau de forcément passer / de ne surtout pas passer par une IP donnée)


D'ailleurs, supposons que Bernard soit dans la liste L(T), alors même s'il n'a pas demandé de page du serveur S, il sera bloqué pendant 30 minutes même s'il quitte TOR avant de jouer: même s'il quitte TOR, son IP est dans L(T) et peu importe qu'il ait voulu jouer ou non, il sera bloqué jusqu'à ce que L(T) soit actualisée en L(T+30min).

La "parade" est donc doublement inutile: Alice finira par avoir accès au serveur de jeu et Bernard sera bloqué alors qu'il était fair play...


RE: bloquer une liste d'ip dynamique apache2 ? - Max72 - 07-01-2015

Je plussoie fortement Xenos.
Comme dit dans mon précèdent post, ma stratégie pour lutter contre le multi est surtout de faire en sorte que les multi n'avantagent pas énormément le joueur.
Les protections basés sur les IP pourront toujours être contournées, malgré le temps que tu passes à les développer.
Par exemple, avec ta protection contre TOR, qu'est-ce qui empêche le joueur de se connecter à ton jeu avec un proxy ? Ou plusieurs avec plusieurs comptes ?
Vu le nombre d'utilisateurs de TOR en france (80 000 il y a un an, et parmi eux, combien joueront à ton jeu ? ), pas sûr que ça vaille le coup.

Si tu veux vraiment faire ça, il y a peut-être moyen de faire ça plus facilement. Sur le site officiel de Tor, ils proposent une liste mise à jour en temps réel des IP utilisées comme 'IP de sortie' : https://check.torproject.org/exit-addresses
Peut-être plus facile à utiliser comme fichier ?
Sinon, le projet officiel a un paragraphe dédié à ta question dans sa FAQ : https://www.torproject.org/docs/faq-abuse.html.en#Bans

Edit : Non, le fichier officiel est plus difficile à parser que ton lien Wink


RE: bloquer une liste d'ip dynamique apache2 ? - niahoo - 07-01-2015

Ha ben j'avais mal lu, c'est bien ce que je pensais cette liste d'IP mais je n'étais pas sûr.

Pour répondre à Xenos : si le jeu indique clairement que le jeu n'est pas accessible depuis TOR, c'est OK. Sauf, si comme tu l'indiques notre IP perso peut faire partie des IP de sortie. Est-ce que c'est le cas, c.a.d que les IP de sorties sont piochées par n'importe quelle machine faisant partie de TOR ; ou bien est-ce que les IP de sorties de TOR sont celles de machines dédiées à ce service ?

(enfin, est-ce qu'il est possible de régler TOR afin de spécifiquement ne pas faire partie des IP de sortie ?)


RE: bloquer une liste d'ip dynamique apache2 ? - Max72 - 07-01-2015

(07-01-2015, 01:28 AM)niahoo a écrit : Ha ben j'avais mal lu, c'est bien ce que je pensais cette liste d'IP mais je n'étais pas sûr.

Pour répondre à Xenos : si le jeu indique clairement que le jeu n'est pas accessible depuis TOR, c'est OK. Sauf, si comme tu l'indiques notre IP perso peut faire partie des IP de sortie. Est-ce que c'est le cas, c.a.d que les IP de sorties sont piochées par n'importe quelle machine faisant partie de TOR ; ou bien est-ce que les IP de sorties de TOR sont celles de machines dédiées à ce service ?

(enfin, est-ce qu'il est possible de régler TOR afin de spécifiquement ne pas faire partie des IP de sortie ?)

Les IP de sorties sont, d'après ce que j'en sais, des proxy mis en place par et pour TOR. Donc non, en tant qu'utilisateur de TOR ton IP perso n'est pas utilisée ni connue en tant qu'IP de sortie.

Edit : Voilà un essai de localisation d'une IP de sortie TOR française : http://www.localiser-ip.com/?ip=94.23.0.46