PDA

Afficher la version complète : Développer un firewall dynamique



jejelerom
21/11/2006, 18h30
Salut les susiens, http://www.alionet.org/style_emoticons/<#EMO_DIR#>/smile.gif
je fais encore appel à vos connaissances de développeurs pour ceux qui en ont. http://www.alionet.org/style_emoticons/<#EMO_DIR#>/whistling.gif
Dans le cadre de ma Licence professionnelle Sécurité des Réseaux et Systèmes Informatique, on a un projet tutoré sur 4 mois, par groupe de 3-4. Parmis l'un des sujets de projets tutoré proposé par les profs, un a retenu mon attention : développement d'un firewall dynamique.

J'aimerais que vous m'orientez vers de la documentation, sites webs, votre xp personnelle ou tout autres choses suceptibles de m'aider à me renseigner sur le sujet. Par exemple : Vers quel langage devrais-je m'orienter pour développer ce firewall.
Réseaux : connaissances requises.
Documentation : how to, tutoriels, manuels, sites web dédiés aux firewall.
Vos recommandations personnelles.
Mes compétences actuelles : Langages connus : VB.net, java, c#, un peu de C.
Réseaux : connaissances en TCP-IP (le minimum koi lol), DNS, courrier (SMTP, pop, imap)
Développement web : (x)html, php, javascript, SQL.
Peu importe le système d'exploitation (linux ou windows XP), ce serait meme pas mal que le firewall fonctionne sur les 2 systèmes (java ?).

Pour l'instant le choix de ce sujet n'est pas définitif, je tate du terrain avant, histoire de voir si c'est faisable pour moi, si je vais apprendre beaucoup de ce type de sujet. http://www.alionet.org/style_emoticons/<#EMO_DIR#>/cool.gif

Merci d'avance. http://www.alionet.org/style_emoticons/<#EMO_DIR#>/wink.gif

P.S : dudule ets fortement invité à participer à ce topic lol http://www.alionet.org/style_emoticons/<#EMO_DIR#>/tongue.gif

Dudule-le-poisson
21/11/2006, 20h31
P.S : dudule ets fortement invité à participer à ce topic lol http://www.alionet.org/style_emoticons/<#EMO_DIR#>/tongue.gif[/b]
C'était pas du tout prévisible ça. Je m'y attendais pas, à ça, oh non, je ne m'y attendais pas. http://www.alionet.org/style_emoticons/<#EMO_DIR#>/rolleyes.gif
(En plus, c'est pas ma spécialité le trifouillage de paquets réseaux - Offworld pourra sans doute te donner quelques pistes plus précises)

Pas grand chose à dire si ce n'est :
1- trouve plus de précisions sur le sujet ; un firewall dynamique adapte ses règles en fonction de différents événements (typiquement : sessions TCP, application utilisant un port plus ou moins aléatoire, etc...). Ça peut être un très (trop ?) gros boulot si les limites du sujet ne sont pas clairement définies.

2-Si tu le fais sous un UNIX-like, ça devrait te faire beaucoup de choses à manger mais ça devrait être réalisable (quoique redondant ?) : notamment, les BSDiens adorent peaufiner leur firewall de la sorte. Ça pourrait donc se limiter à des connaissances à assimiler (suivi des états, révision de la couche OSI, toussa...) des outils réseaux et de la scriptouille pour ficeler le tout (avec des langages plutôt de haut-niveau).

3-Par contre, si tu comptes faire quelque chose de portable, ça pourrait devenir plus compliqué : tous les systèmes ne fournissent pas les mêmes outils (déjà entre Linux et BSD, ça peut varier mais..... Windows fournit des choses au fait ?) et tu pourrais te retrouver obligé de manger des bibliothèques réseaux bas-niveaux avec des langages du même acabit (je te vois bien en train de nous faire un truc révolutionnaire, super-portable mais... en C bourré de "#ifdef __WIN32__" ;-) )

4-Ce post est provided "AS IS" WITHOUT WARRANTY OF ANY KIND (nah ! http://www.alionet.org/style_emoticons/<#EMO_DIR#>/tongue.gif )

jejelerom
21/11/2006, 21h04
Merci de ta contribution Dudule http://www.alionet.org/style_emoticons/<#EMO_DIR#>/biggrin.gif ... t'a du mettre une alerte sur mon pseudo et dès qu eje poste quelque chose, tu sautes dessus.

Sinon pour tout ce qui est C, C++ ca me laisse perplexe vu le dégout que j'ai eu pour le C en DUT http://www.alionet.org/style_emoticons/<#EMO_DIR#>/mad.gif J'préfère apprendre un autre langage que le C.. lol http://www.alionet.org/style_emoticons/<#EMO_DIR#>/biggrin.gif http://www.alionet.org/style_emoticons/<#EMO_DIR#>/tongue.gif D'apres mes premières recherche il n'est pas conseillé de s'orienter vers un langage de haut niveau (java, dot net) vu que le firewall sur gère à bas niveau sur la couche osi (couche 3 ou inférieur http://www.alionet.org/style_emoticons/<#EMO_DIR#>/unsure.gif ).
Si je m'avance vers java c'est uniquement pour qu'il soit portable et parce que je connais bien java. L'idéal serait une api dédié au firewall par exemple, su même style que l'api JABBER que j'ai utilisé pour mon projet tutoré de DUT http://www.alionet.org/style_emoticons/<#EMO_DIR#>/laugh.gif

Effectivement ca peut etre un gros boulot et je pense que ce sera un gros boulot vu qu'il faut qu'il soit dynamique et bien paramétrable.

J'attend avec impatience la participation de Offworl si tu dit qu'il s'y connait plus que tes maigres connaissances sur le sujet mdr http://www.alionet.org/style_emoticons/<#EMO_DIR#>/bleh.gif

offworld
22/11/2006, 11h42
Oula, dans quoi je suis tombé? (merci dudule)

Bon, alors, par quoi commencer.

Si ton idée de départ est de coder un firewall de A à Z, dans un language de haut niveau et multiplateforme, je ne te pourrais pas t'aider pour ça.

Je pense que ce qui pourrais etre sympa est constructif, serai de réaliser un programme qui rende netfilter dynamique.

J'enttend par dynamique un firewall qui provoque une alert et demande à l'utilisateur comment il souhaite traiter le paquet?
Voir un melange avec un firewall applicatif?

Voila sur quoi je pourrais t'aider.

Dans tous les cas pour windows, visual, c#, java, c'est pas mon domaine. http://www.alionet.org/style_emoticons/<#EMO_DIR#>/smile.gif

Dudule-le-poisson
22/11/2006, 13h34
Oula, dans quoi je suis tombé? (merci dudule)[/b]
Bon, on le refile à qui, maintenant, ce sujet foireux ? ;-)
Hors-sujet : Au fait, tu avais trouvé la 5ème erreur dans ton programme Java ?

offworld
22/11/2006, 16h20
Non ça me donne des boutons, en revanche j'ai fait un prog qui teste toute les combinaisons, ça a rien donné, donc le fichier xls retourné est également faux, enfin, c'est pas bien important.
Bon, pendant deux semaine je risque d'etre moins present, ne pensez pas que je vous abandone, mais je repond au post des que possible.

yoplait
22/11/2006, 20h08
tu pars marcher un p'tit coup ? http://www.alionet.org/style_emoticons/<#EMO_DIR#>/wink.gif

jacqueline
22/11/2006, 21h11
Pour ne pas mourir idiote . ! En deux mots c'est quoi un firewall dynamique..?

Un truc dont les règles changent, mais ça doit être le bazar là dedans.. ( gaffe c'est une invention Mdk : invictus http://www.alionet.org/style_emoticons/<#EMO_DIR#>/biggrin.gif http://www.alionet.org/style_emoticons/<#EMO_DIR#>/laugh.gif )

Moi j'aime bien celui d'OPEN BSD il range toute la transaction dans un coin et refait une anlyse complète de la transaction pour voir s'il n'y pas d'erreur volontaire avant de remettre l'ensemble à l'utilisateur.. J'avais tout lu, mais j'ai un peu oublié, cependant il me semblait difficile de faire plus sûr .

jejelerom
22/11/2006, 22h33
Je pense que ce qui pourrais etre sympa est constructif, serai de réaliser un programme qui rende netfilter dynamique.

J'enttend par dynamique un firewall qui provoque une alert et demande à l'utilisateur comment il souhaite traiter le paquet?
Voir un melange avec un firewall applicatif?

Voila sur quoi je pourrais t'aider.[/b]

Voila c'est EXACTEMENT ca que je souhaite faire à peu près. Si tu peux m'orienter vers de la documentation, un langage (perl ?, pitié pas le C http://www.alionet.org/style_emoticons/<#EMO_DIR#>/cray.gif http://www.alionet.org/style_emoticons/<#EMO_DIR#>/blushing.gif ) histoire de commencer à me renseigner. Au pire, si le sujet m'inspire toujours aussi peu, j'abandonnerais ce projet et j'en choisirai un autre http://www.alionet.org/style_emoticons/<#EMO_DIR#>/whistling.gif http://www.alionet.org/style_emoticons/<#EMO_DIR#>/clap_1.gif .

Dudule ne pourrit pas mon topic sinon http://www.alionet.org/style_emoticons/<#EMO_DIR#>/diablo.gif et ne profitez pas du fait que je ne sois plus sur Nancy http://www.alionet.org/style_emoticons/<#EMO_DIR#>/ninja.gif http://www.alionet.org/style_emoticons/<#EMO_DIR#>/pinch.gif

jacqueline
23/11/2006, 00h24
Vous n'allez pa refaire le truc qui ouvre une fenre à chaquefois que'il se passe un truc ( je cherche le nom ) : ce firewall démo en freeware pour windows !

Gaffe jejelerom tu pourrais avoir une mauvaise note !

Scusez moi, j'ai l'humour provoc ce soir ! non séreieux , j'

Vous n'allez pas refaire le truc qui ouvre une fenêtrere à chaque fois que'il se passe un truc ( je cherche le nom ) : ce firewall démo en freeware pour windows !


Non sérieux , j'ai regardé avec google ( comment ? on m'aurait menti sur les firewalls ? http://www.alionet.org/style_emoticons/<#EMO_DIR#>/mad.gif ) je n'ai rien trouvé hormis un truc d'OpenBSD ( encore eux ! ) avec "pf auth" ! en plus c'est plein d'humour ... http://www.alionet.org/style_emoticons/<#EMO_DIR#>/biggrin.gif, mais ils ne se sont pas attardés sur les principes...

jejelerom
23/11/2006, 18h03
Vous n'allez pas refaire le truc qui ouvre une fenêtrere à chaque fois que'il se passe un truc ( je cherche le nom ) : ce firewall démo en freeware pour windows ![/b]
Je crois savoir de quoi tu veux parler : ZoneA_ _ _ m http://www.alionet.org/style_emoticons/<#EMO_DIR#>/biggrin.gif. Oui entre autre, ca doit ouvir une fenetre pour demander à l'utilisateur ce qu'il veux faire http://www.alionet.org/style_emoticons/<#EMO_DIR#>/tongue.gif

<div class='quotetop'>Citation (jacqueline @ 22/11/2006 à 23:24) <{POST_SNAPBACK}> (index.php?act=findpost&pid=113131)</div>
Non sérieux , j'ai regardé avec google ( comment ? on m'aurait menti sur les firewalls ? http://www.alionet.org/style_emoticons/<#EMO_DIR#>/mad.gif ) je n'ai rien trouvé hormis un truc d'OpenBSD ( encore eux ! ) avec "pf auth" ! en plus c'est plein d'humour ... http://www.alionet.org/style_emoticons/<#EMO_DIR#>/biggrin.gif, mais ils ne se sont pas attardés sur les principes...[/b]
hé oui jacqueline, moi aussi j'ai regardé sur google mmais je n'y ai pas trouvé grand chose. Même les cours sur les firewalls ne foisonnent pas sur le net, contrairement à ceux sur java ou le C http://www.alionet.org/style_emoticons/<#EMO_DIR#>/tongue.gif La seule chose que j'ai trouvé sur les firewall est sur ce site là (http://olivieraj.free.fr/fr/linux/information/firewall/). C'est un bon début et c'est bien illustré en ligne de codes mais ces lignes de codes là me font peur lol http://www.alionet.org/style_emoticons/<#EMO_DIR#>/ohmy.gif ....... http://www.alionet.org/style_emoticons/<#EMO_DIR#>/laugh.gif

jacqueline
23/11/2006, 19h16
Jeje

Oui, c'est bien la passoire de Zon.... me ( s'il ya une version pro, bin la gratuite http://www.alionet.org/style_emoticons/<#EMO_DIR#>/cool.gif http://www.alionet.org/style_emoticons/<#EMO_DIR#>/cool.gif ne doit pas tout bloquer..

Non il est super bien ce tuto d'Olivier ..

Lignes de cdes OK, mais c'est très progressif comme démarche..

En plus ce gars est hyper sympa ! n'hésites pas à lui envoyer un mail, il pourra peut êter te donner quelques tuyaux.. ( s'il est dispo )

Mais c'est pas digeste du premier coup, et plus tard j'ai trouvé ce Site (http://http://christian.caleca.free.fr/netfilter/) 5 M.... le lien va sur lemonde .fr , et il marche sur alionet : http://christian.caleca.free.fr/netfilter.html ) d'un prof, qui a fait un site très pédagogique, et beaucoup plus complet, qui permet de rendre celui d'Olivier avec un peu plus de sérénité..

J'avais rassemblé tous ces liens sur le sujet un jou ( ceux que je connais ) .

Doc Internet sur Alionet (http://www.alionet.org/index.php?showtopic=12595)


Par rapport au lien de Caleca, j'ai capté le " suivi de connection" 'conntrack" dans le firewall, je pesnsais que c'était aussi ça qu'on appellait firewall dynamique...

Sinon hier j'avais trouvé ça sur Google : Open BSD firewall Dynamique (http://www.openbsd-france.org/documentations/OpenBSD-authpf.html). je te le dis tout de suite , je n'y comprends rien.. mais c'est peut être une piste..

Une fois j'avais lu la doc de Packet Filter Open BSD (http://etudiant.univ-mlv.fr/~ycohen/index.php) d'OpenBSD.. ( pas celle là : le lien que je connaissais est mort ) , mais on apprend pas mal de choses au niveaui des principes ( pas tout à la fois non plus). ( sauf que sous Linux, il y a trop de choses à faire, et que chaque fois ce sont des marathons si on veuttessayer qqchose ) .

Y a des mordus sur le net ( je ne veux pas dire que les copains d'Alionet ne sont pas dans le coup, http://www.alionet.org/style_emoticons/<#EMO_DIR#>/biggrin.gif mais il ya aussi la disponibilité, et c'est un truc de ouf ! ) A ta place, si tu ne sais pas comment attaquer ton truc, à ta place je leur enverrais un petit mail , pour qu'ils t'orientent..

Mandrake fait beaucoup de pub sur son nouveau firewall dynamique, mais ils ne sont pas bavards.. et je ne suis pas convaincue que ça soit plus efficace... j'ai bien peur que ce soit un gadget.. ( quand on ne sait pas expliquer les choses clairement, c'est significatif .. http://www.alionet.org/style_emoticons/<#EMO_DIR#>/laugh.gif

Voili voilou et bon courage..

Temet
24/11/2006, 10h09
Alors sérieux, dès que j'ai vu "firewall" et "coder", j'ai de suite vu "C" ou "C++". Un langage de plus haut niveau, ca me parait louche ... surtout s'il demande une machine virtuelle (sans compter combien ça va bouffer).

La portabilité, ça me parait carrément infaisable (j'ai pas dit que j'avais raison ^^).

Par contre, en quelques jours moi j'ai eu plus de 50 000 connexions bloquées par firestarter ... pas envie d'avoir un pop up à chaque fois ^^

jejelerom
25/11/2006, 21h47
merci pour tous ces liens jacqueline. J'y jetterais un coup d'oeil dimanche si je ne me réveille pas trop tard http://www.alionet.org/style_emoticons/<#EMO_DIR#>/tongue.gif
Temet : j'ai déjà fais le deuil d'un langage de haut niveau aussi lol (j'ose pas encore m'en persuader lol http://www.alionet.org/style_emoticons/<#EMO_DIR#>/biggrin.gif ).

J'attend la liste des sujets proposés par les autres profs pour me décider définitivement ... et puis faudra voir si les 2-3 autres membres du groupe pour le projet seront d'accord pour s'embarquer dans cette aventure.

Si d'autres peuvent apporter leur contribution, n'hésitez pas ... http://www.alionet.org/style_emoticons/<#EMO_DIR#>/wink.gif

offworld
28/11/2006, 20h18
Hello, non yopyop, je suis partit en train, sur paris.
Bon je viens juste d'allumer le portable depuis mon arrivé, je t'oriente des que possible.

offworld
06/12/2006, 19h30
Après un peu d'absence, au niveau des liens, a part http://www.netfilter.org/ qui a un très grand reccueil de documentation, en revanche pour le language, je ne pense pas que tu fuisses faire sans c, c++.

Sinon pour un début de piste, peut etre avec le mode ip_queue de netfilter.

C'est quoi les autres choix?

jejelerom
07/12/2006, 18h31
Bon j'pense pas que je prendrais ce sujet de projet tutoré finallement. Je ne pensais pas avoir le choix entre une vingtaine de projet donc je pense choisir autre chose.Merci quand même d'avoir essayé de m'aider http://www.alionet.org/style_emoticons/<#EMO_DIR#>/thumbsup.gif

Vous aurez très probablement de mes nouvelles quand j'aurai choisi le sujet définitif http://www.alionet.org/style_emoticons/<#EMO_DIR#>/wink.gif