Nouveau Projet "EggNet-Docker"
#1
Rainbow 
Bonjour,
Je travail sur un nouveau projet 'expérimental' nommer "EggNet-Docker".
L'idée est simple : Avoir la possibilités de créer "facilement" et rapidement des eggdrops (sur un ou plusieurs irc) ceux-ci se connectant a un botnet propre à eux même grâce a une image docker et un configurable simple dans un docker-compose.

Mes motivations sont diverses :
- Eggdrop a de grande capacités en botnet trop souvent peu utiliser et/ou inconnu
- Les botnet peuvent être fatiguant à réaliser
- Les configurations longue des eggdrops être ennuyeuse
- ...

J'utilise docker pour plusieurs raison:
- Chaque eggdrop peu avoir son propre environnement sans nécessité installer des packages sur la machine hôte
- Un redémarrage du eggdrop en cas de crash
- Gestion facile d'arrêt/lancement d'un group d'eggdrop (par docker-composer)
- environnement isolé de chaque eggdrop (sécurité)
- ...

En Bref comment cela fonctionne ?
1) Vous devez avoir docker et docker-compose installer.
2.1) Vous devez configurer dans un fichier docker-compose des variables pour chaque eggdrops (voir docker-compose.yml)
2.2) configurer un seul en tant que "EGG_ISMASTER" pour le définir comme maitre
3) démarrer le tout avec en tapant "docker-compose up -d" dans le répertoire docker-compose.yml

Qu'est ce qui ce passe?
Docker va créer une image (relativement légère) de l'environnement pour lancer chaque eggdrop.
Les eggdrops vont ce connecter a IRC avec les nicks defini
Automatiquement les 'leafs/slaves' vont ce connecter au 'hub/maitre' dans les 5 minutes.

Et maintenant ?
- Chaque eggdrop sont relier entre eux et peuvent échanger des informations. La suite dépend de l'utilisations souhaiter de ceux-ci
- Vous pouvez vous connecter a leurs partyline grâce a l'utilisateur créer par les variables PPL_USER et PPL_PASS sur leur port respectif défini
- Les eddgrops ont un répertoire partager './EGG_data' par default qui permet de voir/editer/ajouter les fichiers

Quel est la structure du dossier partager?
- conf/ contenant chaque fichier de configuration (eggdrop.conf)
- secrets/ contenant les fichiers secrets de eggdrop (pour les connexions botnet entre eux)
- logs/<réseau>/ Contenant les fichiers de logs des eggdrops. 3 type existe : .log "celui du logfile", _screen.logs "avec les sorties screen, telle si vous le lancez vous meme), et _error.log "ce cree si un de vos script tls fait une erreur (bgerror)"
- files/<réseau> contient les fichuer user/chan de vos bots
- scripts/
Le plus intéressant car il permet de mettre vos tcls que vous souhaitez charger
Il est sous la forme de :
scripts/<réseau>/<bot>

Tout les scripts tcl mis a la racine de scripts/ seront automatiquement charger par TOUT les eggdrops
Les scripts mis dans scripts/<réseau>/ seront automatiquement charger par TOUT les eggdrops du réseau <réseau>
et pour finir scripts/<réseau>/<bot> seront les scripts charger automatiquement par le bot <bot> du réseau <réseau>


Et alors?
Voici un petit explicatif de mon nouveau projet, si je le présente c'est parce maintenant que la "base" est fonctionnel j'aurais besoins de votre aide pour savoir comment orienté ce qui existe et la suite.

Tout avis est à prendre, et tout retour de test également.

Vous êtes les bienvenue sur EggNet-Docker

PS: soyez toute de meme indulgent
PS2: je ne savais pas trop dans quel section poster. A déplacer au besoin
  Reply
#2
Bonne idée, mais ça n'existe pas déjà ? https://hub.docker.com/_/eggdrop/
irc.zeolia.net - Offrez-moi un café
Merci de ne pas demander d'aide en MP
  Reply
#3
(30/08/2021, 14:33)CrazyCat Wrote: Bonne idée, mais ça n'existe pas déjà ? https://hub.docker.com/_/eggdrop/

Bonne idée je vais faire une liste de comparatif avec ce qui me viens en premiers
EggNet Vs eggdrop docker officiel (liste NON exhaustive):
  • Conçu pour l'utilisation en multi eggdrop :
    * Auto Botnet Hub/Leafs
    * Gestion des des script facilité (structure scripts/<réseau>/<bot>)
    * Auto configuration eggdrop par ENVs (channels, network, nick, Hub/Leafs, user partyline)
  • Packages OS supplémentaire possible telle que tcllib, mysqltcl, tcl-tls...  lors du build
  • Gestion des modules lors du build
  • Création d'un user eggdrop
  • Connexion directement au screen possible

Pour résumé: l'image eggnet est vraiment orienté pour une utilisation "botnet" d'origine, une image plus légère d'une part car il install que les packages nécessaire, mais également plus complète car il est possible installer l'extra-modules/packages ce qui rend plus plus flexible
  Reply
#4
Salut,

Je trouve l'idée intéressante.
Mais la ou j'aime un peut moins c'est le passage ou tu charge les scripts.

Genre si bot1 et sur zeolia et bot2 aussi appartenant à deux personnes différentes, et que celui de bot1 dispose d'un scripts ou sa inclus tout les channel ou es l'eggdrop du coup ?
Car ont veut pas forcément le scripts d'une autre personnes, enfin je pense que tu as compris ou je veux en venir, est-ce que ça ne posera pas de problème pour les gens utilisant ton système
Vous interdisez les erreurs, vous empêchez ainsi la victoire.

Ma super kikoo-page loll
  Reply
#5
Tu m'as perdu a assez vite,

Si long parle des scripts c'est un a toux d'apres moi:
Chaque eggdrop charge le meme répertoire dans ma logique de scripts/

Dans scripts/ si tu met un code TCL il chargera sur tout les eggdrops

Ensuite si tu as par exemple deux eggdrops sur Libera; tu aura un répertoire scripts/Liberta, si tu met un TCL dedans tout veux sur Liberta le chargerons
Apres si tu veux que ton robot MaCaille sur Liberta charge un script a lui seul, tu devra mettre dans scripts/Liberta/MaCaille

Je ne comprend pas ton aspect de personne ?
  Reply
#6
Ah oui ok ! Non autant pour moi, j'avais mal lus désolée :x

En tout cas sympa comme projet j'aime bien !
Vous interdisez les erreurs, vous empêchez ainsi la victoire.

Ma super kikoo-page loll
  Reply


Possibly Related Threads…
Thread Author Replies Views Last Post
  Projet: QBot Merwin 12 5,019 04/06/2010, 01:04
Last Post: Marc
  EggNet - Pour en finir avec le célibat chez nos bots Mareo 18 7,297 28/05/2010, 12:47
Last Post: CrazyCat

Forum Jump:


Users browsing this thread: 1 Guest(s)