DynFi Firewall : Code Source

Code Source DynFi Firewall

Le code source DynFi Firewall est divisé en plusieurs sections, chaque section joue un rôle bien précis et est reliée aux autres sections, permettant ainsi de compiler l’ensemble du firewall de façon autonome. L’objectif de notre projet est de permettre de construire un pare-feu en utilisant des méthodes de compilations plus simple et plus modernes que celle proposées par OPNsense.

Pour ce faire nous avons donc retravaillé l’ensemble du processus de compilation en utilisant Poudriere qui est utilisé par FreeBSD pour la construction de nombreux packages et pour construire le système FreeBSD dans son intégralité.

code  Accédez à tous les codes sources publiés par DynFi

DynFi Build

Ceci est une collection de scripts de compilation qui permet de construire DynFi Firewall.

  • build_base.sh
  • build_pacakges.sh
  • build_installer.sh
  • poudriere.sh
  • build_sync.sh
code  Code source de DynFi Build

FreeBSD-Base

Le code source de FreeBSD nécessaire pour construire le système.

code  Code source de FreeBSD utilisé pour le build

Overlay DynFi

Cet overlay doit être utilisé avec les ports FreeBSD et permet de construire les logiciels nécessaires à la construction de DynFi Firewall.

code  Overlay nécessaire au build de DynFi Firewall

DynFi OPNsense-core

DynFi Core est basé sur opensense-core, mais comporte de nombreux changements supplémentaires et notament un GUI largement revisité.

code  DynFi GUI and system management

Comment construire DynFi Firewall

Tout d’abord, vous devez récupérer tous les dépôts nécessaires :

Nous vous encourageons à prendre connaissance des différents readme fournis dans chacune des sections.

Le fichier que vous devez modifier est common.subr, et les valeurs intéressantes sont :

Ensuite, vous pouvez utiliser un script build_base.sh pour compiler le noyau et FreeBSD world.

L’étape suivante est de construire les paquets. Le script build_packages.sh est responsable de cela. Quand vous avez un paquetage, le noyau et le monde, vous pouvez construire l’installation avec build_installer.sh. Enfin, vous pouvez pousser le dépôt requis vers un serveur distant avec le script build_sync.sh.


code  DynFi GUI and system management

code  Code source de FreeBSD utilisé pour le build

code  Overlay nécessaire au build de DynFi Firewall

Le projet de R&D DynFiltering

DynFiltering est un projet de recherche et développement qui a été initié par DynFi avec l'école Centrale Supelec. L’objectif de ce projet est d’explorer les possibilités offertes par le filtrage à grande échelle basé sur l’empreinte SSL à partir de la signature du certificat.

Les différents scripts et outils qui se trouvent dans ce projet permettent d’analyser un grand nombre d’URL, de sauvegarder efficacement les signatures SSL dans une base de données et de produire des listes d’empreintes SSL prêtes à être importées dans Suricata.

Le passage à l’échelle et en particulier l’inclusion de plusieurs dizaine de milliers de signature dans Suricata semble toujours problématique à ce stade. Des tests complémentaires doivent être fait pour trouver des méthodes d’inclusion optimisées de ces règles.

code  DynFiltering project

Le code source des Agents de Connexion DynFi Manager

DynFi Manager permet l’utilisation d’Agents de connexion déployés sur les firewalls qui permettent à ces derniers d’étbalir la connexion vers le Manager. Cela s’avère particulièrement utile dans des cas où le firewall est déployé derrière un pare-feu ou utilise du NAT.

Nous donnons ici accès au code source de la partie client de l’agent de connexion :


code  Code source Agent de Connexion DynFi DFConAgOPNsense

code  Code Source Agent de Connexion DynFi DFConAgPfSense