Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

FreeBSD pf et ses log

4 réponses
Avatar
kavanier
Bonjour/soir/nuit,

j'ai un pf qui tourne sur un FreeBSD 6x
je veux mettre en place les logs avec pflog mais j'arrive pas à
comprendre une chose ,
d'apres cette page http://www.openbsd.org/faq/pf/logging.html
la régle "block in log (all) on $int_int" est bonne
mais pf n'en veut pas il me sort un probleme de syntaxe :/ ,
j'ai beau tourner la doc dans tous les sens je trouve pas d'ôu vient la
faute !
et google n'est pas mon ami sur le coup !

avez vous eu des choses similaire à celle ci ?

merci.

4 réponses

Avatar
Laurent
On 24 juil, 03:29, kavanier wrote:
Bonjour/soir/nuit,


Bonjour,


j'ai un pf qui tourne sur un FreeBSD 6x
je veux mettre en place les logs avec pflog mais j'arrive pas à
comprendre une chose ,
d'apres cette pagehttp://www.openbsd.org/faq/pf/logging.html
la régle "block in log (all) on $int_int" est bonne
mais pf n'en veut pas il me sort un probleme de syntaxe :/ ,


Est-ce qu'il est est réellement écrit $int_int dans votre pf.conf ?
Auquel cas, cette coquille est certainement responsable de vos
malheurs.

Cette variable (qui par défaut est $int_if) est normalement déclarée
au tout début de votre pf.conf

Pouvez-vous nous donner les message d'erreur exact au chargement du
fichier de règles ? (il me semble que pfctl donne le numéro de ligne
incriminé aussi)

merci.


--
Laurent C.

Avatar
kavanier



Bonjour
bonsoir



Est-ce qu'il est est réellement écrit $int_int dans votre pf.conf ?
Auquel cas, cette coquille est certainement responsable de vos
malheurs.

Cette variable (qui par défaut est $int_if) est normalement déclarée
au tout début de votre pf.conf



non c'est une conf maison , mais la ligne marche tres bien sans
le "(all)"

Pouvez-vous nous donner les message d'erreur exact au chargement du
fichier de règles ? (il me semble que pfctl donne le numéro de ligne
incriminé aussi)


la voici
nat2# pfctl -ef /etc/pftest.conf
/etc/pftest.conf:29: syntax error
pfctl: Syntax error in config file: pf rules not loaded

la ligne 29 :
block in log (all) on $int_int

Il me donne ce message quand j'ai le (all),(user).
Je ne vois pas ôu j'aurais pu faire une faute car la conf est
parfaitement fonctionnel !

j'ai une autre question :
c'est possbile de faire du log sur du 'rdr' ?
je trouve pas de doc , peut etre car 'rdr' n'est pas une régle :)

merci

Kevin Vanier

Avatar
Laurent
On 25 juil, 22:40, kavanier wrote:

non c'est une conf maison , mais la ligne marche tres bien sans
le "(all)"

la voici
nat2# pfctl -ef /etc/pftest.conf
/etc/pftest.conf:29: syntax error
pfctl: Syntax error in config file: pf rules not loaded

la ligne 29 :
block in log (all) on $int_int

Il me donne ce message quand j'ai le (all),(user).
Je ne vois pas ôu j'aurais pu faire une faute car la conf est
parfaitement fonctionnel !


Bon je crois que je dois réapprendre à lire :)
Vous dites être sous FreeBSD , et donnez un lien vers le man
d'OpenBSD.
Le fait est que PF est le pare-feu d'OpenBSD, FreeBSD ne faisant que
le "porter" ensuite. La syntaxe peut donc différer (légèrement) de
l'un à l'autre, étant donné que les versions (et les fonctions)
diffèrent un peu.

Il faut donc se référer au pf.conf(5) de FreeBSD.
J'ai ici une machine en 6.2-STABLE qui se contente très bien d'un:

block in log all


j'ai une autre question :
c'est possbile de faire du log sur du 'rdr' ?
je trouve pas de doc , peut etre car 'rdr' n'est pas une régle :)



Non en effet rdr n'est pas une règle de filtrage. Mais vous devez
garder à l'esprit que le traffic concerné par votre "rdr" devra être
soumis à une rêgle de filtrage ensuite, pour que la redirection
fonctionne. C'est sur cette dernière rêgle de filtrage que vous
placerez le log.

Exemple :

# Redirection de tout traffic sur $ext_if port 25 vers 10.0.0.1 port
25
rdr on $ext_if inet proto tcp from any to $public_ip port 25 ->
10.0.0.1 port 25

# Autorise le traffic redirigé
pass in log on $ext_if inet proto tcp from any to $public_ip port 25

(Attention règles non-testées, mais l'esprit y est :)

--
Laurent C.

Avatar
kavanier
)
Vous dites être sous FreeBSD , et donnez un lien vers le man
d'OpenBSD.
Le fait est que PF est le pare-feu d'OpenBSD, FreeBSD ne faisant que
le "porter" ensuite. La syntaxe peut donc différer (légèrement) de
l'un à l'autre, étant donné que les versions (et les fonctions)
diffèrent un peu.
Ha mais oui en effet certaines diffèrences et pas des moindres :)

Dans mon esprit naîf je me suis dit c'est la doc officielle donc je
peux la suivre (et ce que je fais depuis longtemps , mais sans trop de
soucis jusqu'à ce jour)

Il faut donc se référer au pf.conf(5) de FreeBSD.
J'ai ici une machine en 6.2-STABLE qui se contente très bien d'un:

block in log all.
Oui c'est une 6.2-STABLE aussi "block in log all" marche mais pas

"block in log all on $int_int" d'apres la doc pf.conf(5) de FreeBSD
il faut mettre "block in log-all on $int_int" et ça marche .
(un peu fourbe...)

Non en effet rdr n'est pas une règle de filtrage. Mais vous devez
garder à l'esprit que le traffic concerné par votre "rdr" devra être
soumis à une rêgle de filtrage ensuite, pour que la redirection
fonctionne. C'est sur cette dernière rêgle de filtrage que vous
placerez le log.


si j'avais refléchit un peu plus j'aurais pas posé la question :)

Merci de votre aide :)

Kevin Vanier