HLab

Julien Hautefeuille

Openbsd5.9 nfsen

OpenBSD en mode bridge permet de faire des analyses fines de trafic.

Modification système

On ajoute une variable d’environnement dans le fichier .profile du compte root nécessaire pour l’installation future de paquets.

/root/.profile

export PKG_PATH=http://ftp.openbsd.org/pub/OpenBSD/$(uname -r)/packages/$(machine -a)/

ou on ajoute au fichier pkg.conf

/etc/pkg.conf

installpath=ftp.openbsd.org

Configurer les démons au démarrage

/etc/rc.conf.local

httpd_flags=""
pf=YES
pkg_scripts=php56_fpm nfsen
sendmail_flags=NO
smtpd_flags=""

Modification du noyau

/etc/sysctl.conf

net.inet.ip.forwarding=1

Fichiers concernant le réseau

/etc/mygate

10.59.6.1

/etc/myname

guardian.mycorp.local

/etc/resolv.conf

search mycorp.local
nameserver 10.59.6.3
lookup file bind

Création des interfaces

/etc/hostname.bge0

up

/etc/hostname.em0

10.59.6.224 255.255.255.0

/etc/hostname.bridge0

add em0
add bge0
up

/etc/hostname.pflow0

flowsrc 127.0.0.1 flowdst 127.0.0.1:9995 pflowproto 5

Directives du firewall

/etc/pf.conf

lan_if = "em0"
wan_if = "bge0"

set state-defaults pflow

pass in quick on $lan_if all
pass out quick on $lan_if all
pass out quick on $wan_if all keep state (pflow)
pass in quick on $wan_if all keep state (pflow)

Configuration du démon httpd

/etc/httpd.conf

types { 
    include "/usr/share/misc/mime.types" 
}

server "default" {
    listen on egress port 80
    directory { index "index.php" }
    location "/*.php*" {
            root { "/htdocs" }
            fastcgi socket "/run/php-fpm.sock"
    }
    location "/*" {
            root { "/htdocs" }
    }
}

Installation de php 5.6 fpm

pkg_add php-5.6

Installation de nfsen et nfdump

pkg_add nfsen 
pkg_add nfdump

Lancer le démon nfsen au démarrage

rcctl nfsen enable

Modifier les éléments de la configuration nfsen

Attention le démon httpd est chrooté par défaut.

/etc/nfsen.conf

$COMMSOCKET = "/var/www/tmp/nfsen.comm";
%sources = (
    'openbsd' => { 'port' => '9995', 'col' => '#0000ff', 'type' => 'netflow' },
);

$MAIL_FROM   = 'admin@domain';
$SMTP_SERVER = 'localhost';

/var/www/htdocs/nfsen/conf.php

$COMMSOCKET = "/tmp/nfsen.comm";

Relancer l’outil nfsen

install-nfsen.pl /etc/nfsen.conf