Page 1 sur 2
Utiliser un FTP comme un Serveur...
Publié : lun. 03/nov./2008 10:53
par Necro
Bonjour à tous,
J'ai réalisé un chat que je ne mettrais pas malheureusement sur le forum qui a une particularité spécial : C'est un FTP normal (genre free.fr) qui est utilisé comme "Serveur".
Je vous explique :
-> Un fichier est stocké et est nommé conversation.bc
-> On le télécharge dans le fichier du chat
-> On l'ouvre, on prends son contenu et on le met dans le chat
-> On fais une boucle qui va constament télécharger ce fichier, si le contenu du fichier est différent du contenu du chat alors on met à jour le chat.
-> Si on envoi un message, on écrit dans le fichier téléchargé à la dernière ligne et on l'héberge à la place de conversation.bc
Qu'en pensez-vous? Sa pourrait être utile pour un mmorpg, exemple :
Je veux me connecter sous mon compte : admin, pass : admin
On va chercher le fichier qui s'appelle admin.account dans le FTP (c'est un fichier de préférences), on vérifie si le pass admin est égal au
ReadStringPreference("Pass", ""), si oui, on se connecte, si non, on met une erreur...
Voilà y'a plein d'idées comme sa qui pourrait être utiles ^^
Cordialement,
Necro.
Publié : lun. 03/nov./2008 11:19
par djes
Ben oui, je vois pas où est le truc... En général, on n'utilise le FTP que pour le transfert de fichiers, en ce sens que le FTP conserve l'arborescence, permet la gestion des types binaires et ASCII; mais rien n'interdit d'en avoir un autre usage! Il faut quand même que ton serveur soit résistant aux attaques, et que tes fichiers soient bien protégés pour éviter les effacements.
Bonne continuation!
Publié : lun. 03/nov./2008 11:26
par Necro
Merci ^^, mais pour les fichiers protégés pas de grande difficultés, je protège le repertoire avec un .htaccess et un .htpasswd, totalement sécurisé, et c'est réglé

Publié : lun. 03/nov./2008 12:30
par Ar-S
Fais tout de même attention,
Pour que ton procédé fonctionne, ton soft va soit Ouvrir/fermer le ftp a intervalle régulier (voir rapide) soit le laisser ouvert le temps necessaire.
Dans le 1er cas, prend garde que Free ne confonde pas ces connexions/re-connexions incessantes comme une attaque. Ils sont du genre à te bloquer ton compte. Dans le second cas, une inactivité de N seconde entraine une deco automatique logiquement chez free.
ça me parait assez laborieux mais pourquoi pas. Le concept est intéressant.
Publié : lun. 03/nov./2008 12:31
par Necro
xD je suis pas chez free c(était un exemple mais merci quand même du conseil
C'est vrai que chez free y sont très chiant, le .htaccess qui marche pas avec le password crypté, etc...
Problème!
Publié : lun. 03/nov./2008 22:53
par meganet
Salut, tu va avoir un problème. Si 2 personnes écrivent en même temps sur le ftp, un des 2 messages ne sera pas écrit car on ne pourra pas écrire quand l'autre personne uploadera. Et pour le mot de passe, fait attention! C'est pas bien compliquer de faire un client ftp qui fait la même chose que ton programme, et ensuite même si tu crypte tes mot de passe, souvient toi que ftp transmet tout en claire (y compris les mot de passes), et donc peu importe le mot de passe, il suffira juste de snifer les connexions de ton ftp pour l’avoir, puis pour la connexion au chat, il suffira juste d'ignorer l'étape d'autentification, ou alors on récupère le fichier avec les mots de passes et on compare la valeur déjà crypté avec la valeur déjà crypté, et oups!!!!!! On est connecté sans mot de passe!!!
Et attention, .htaccess et .htpass ne sont pris en comptes que par apache. Proftpd ou autre n’y prêtes pas attention !
Publié : jeu. 06/nov./2008 12:45
par Ar-S
Je me suis intéressé à cette idée, j'avance pas à pas mais je ne veux pas faire de messenger à la MSN/AIM... Plus un genre de shootbox entre différents users qui ont une clé commune. Il est possible d'upper un fichier et le lien du fichier est directement transmis sous la forme h t t p : // tinurl.com/codedufichier
J'ai pas encore essayé chez free mais sur mon hébergeur pro (1and1) ça marche très bien, surtout qu l'on peut créer un sous compte ftp (comme ça si le code tombe entre de mauvaises mains, le lamer n'aura accès qu'a un répertoire vide ou avec 2 .txt vides.)
Pratique pour échanger de gros fichiers genre zip de photos qui ne passent pas par mail.
Je le posterai quand j'aurai réglé des petits soucis.
php
Publié : jeu. 06/nov./2008 14:15
par meganet
Salut, pour quoi tu ne fais pas un script php avec du mysql, puis tu utilise ce script avec ton programme via http? Comme ça pas de mot de passe stoqué dans le prg en lui-même!
Re: php
Publié : jeu. 06/nov./2008 18:02
par Ar-S
meganet a écrit :Salut, pour quoi tu ne fais pas un script php avec du mysql, puis tu utilise ce script avec ton programme via http? Comme ça pas de mot de passe stoqué dans le prg en lui-même!
Parce que je ne veux pas devoir dépendre d'une base MySql

Re: php
Publié : jeu. 06/nov./2008 18:21
par Necro
xD Je vois que mon idée va marcher

mais moi pour mon MMORPG 2D, je stockerais certes les fichiers sur FTP, protégé par .htaccess et .htpasswd, fichiers cryptés pour une incompréhensibilité et je créerais un logiciel qui, en cas de hack du FTP (on sait jamais), sa copie tout les fichiers du FTP concernant le MMORPG (donc les accounts, informations server, etc...) vers un autre FTP et celui-ci introuvable (exemple : ht10sdikl728.olympe-network.com) !
Cordialement,
Necro.
Publié : jeu. 06/nov./2008 18:44
par Oliv
Ar-S a écrit :
Pratique pour échanger de gros fichiers genre zip de photos qui ne passent pas par mail.
Et le mettre sur le FTP grâce à un client (programmé par toi ou pas) et aller le chercher en FTP/HTTP (programmé par toi ou pas) c'est pas bien plus simple ??
Sinon cette idée n'est pas mauvaise mais dans votre chat, combien de temps les messages mettent à ce propager ? Je veux dire si j'envoie un message au bout de combien de temps l'autre personne le reçois ? Car si c'est supérieur à 0.5/1sec ce n'est pas franchement utilisable pour un MMORPG...
Sans compter le prix du FTP qui supporte tout ça, il y a des mini dédiés à 10€/mois chez OVH, donc on peux y mettre un serveur de notre cru, peut être pas plus mal pour un MMO non ?
Sinon j'avais réalisé ce genre de chose pour une application et c'est vrai que ça ne marche pas mal et c'est à développer, juste que je ne suis pas sur que ce soit applicable aux jeux

Re: Utiliser un FTP comme un Serveur...
Publié : jeu. 06/nov./2008 18:56
par Necro
Et bien je compte bien créer une nouvelle génération de MMORPGs
Mais c'est vrai que diverses questions se posent, comme :
- Comment kicker un Joueur avec le FTP?
- Comment afficher les joueurs connectés? (sa je pense avoir ma petite idée : du genre, si le fichier du FTP n'a pas été modifié pendant au moins 5 minutes, le joueur n'est pas connecté).
Voilà, y'a beaucoup de questions se posent : Mais tout est possible!
Cordialement,
Necro.
Publié : jeu. 06/nov./2008 19:37
par Oliv
Tu peux imaginer un système de ping, chaque client "ping" grâce à un fichier 3/4 autres toutes les minutes par exemple, et si un des PC ne répond pas dans le fichier approprié il est viré du serveur.
Mais je reste sur mon idée que le FTP est beaucoup trop lent

Enfin à voir, dès que tu as des démo hésites pas à nous les montrer

Publié : jeu. 06/nov./2008 20:34
par Necro
Pas de souçis! Je t'en ferais part dès que j'aurais commencé le Moteur RPG 2D!
Cordialement,
Necro.
Publié : jeu. 06/nov./2008 23:00
par Ar-S
Oliv a écrit : Mais je reste sur mon idée que le FTP est beaucoup trop lent

Enfin à voir, dès que tu as des démo hésites pas à nous les montrer

C'est vrai que le ftp c'est pas très rapide, mes discutions sont actualisées toutes les 5 secondes. mais en réalité, un user n'envoie pas forcément son message lorsqu'il reste 5 sec, il peut l'envoyer alors que la mise à jour va se faire la seconde d'après.. donc en fait c'est de 1 à 5 secondes.
Et le mettre sur le FTP grâce à un client (programmé par toi ou pas) et aller le chercher en FTP/HTTP (programmé par toi ou pas) c'est pas bien plus simple ??
ba c'est bien ce que je suis en train de faire me semble t il ?
Lorsque le up est terminé il propose le lien pour récupéré ça en http, c'est pas plus mal et ça permet à plusieurs personnes de le recupérer en même temps !
