logo

redirect

fichier de conf mark_group:

513:1
514:2

la règle NFQUEUE est dans la table mangle:

iptables -A PREROUTING -t mangle IPCRIT -i IFIN -j NFQUEUE

cas d’utilisation, si élève -> redirect, si prof non

une règle utilisateur marquée:

iptables -A PREROUTING -t nat IPCRIT -i IFIN -m mark --mark 0x1 -j REDIRECT --to 3128

iptables -A PREROUTING -t nat IPCRIT2 -i IFIN -m mark --mark 0x3 -j REDIRECT --to 443

(si élève -> redirect, si prof non)

politique par défaut : seulement les autorisations sont écrites (puisque de toute façon c’est interdit par défaut)

filtrage authentifié

Contrainte d’Eole :
Flux d’interface à interface sont soit en politique ACCEPT par défaut soit en politique DROP par défaut Les règles sont forcément de décision opposée à la politique par défaut.
Contrainte de NuFW :
Les règles sont terminales Si le groupe ne matche pas le paquet est droppé

Proposition de modelisation :

1. Gestion des exceptions : En effectuant le filtrage IP avant le filtrage authentifié, on peut gérer les exceptions.

2. Filtrage authentifié : Il faut contourner la limitation de NuFW (règle terminale) en ajoutant une règle par défaut d’acceptation (ou de DROP) en fin de règles authentifiées (dans le backend uniquement). Ceci assure un fallback conforme à la politique par défaut de la bichaine. Par exemple, lorsque l’admin exprime “les élèves sont bloqués en sortie port 80”, cela suppose que les autres groupes passent. La règle par défaut sera donc une règle sans information de protocole établie pour un groupe par défaut (configurable, domain user dans la plupart des cas est suffisant).

NuFW et journalisation : NuFW loggue par défaut. Pour désactiver le journalisation dans une acl, il faut positionner flags = 2.


en redirect, il n’y a pas de outdev, et c’est mis dans la table mangle

Ruleset pour eleve par proxy

pour la gestion du REDIRECT

On suppose que on a Le mapping : éleves: 513, professeurs: 514

On fait alors le fichier mark_group.conf:

513:1
514:2

On note IPCRIT les critères IP On note IFIN l’interface d’entrée On note IFOUT l’interface de sortie

Règles iptables

iptables -A PREROUTING -t mangle IPCRIT -i IFIN -j NFQUEUE
iptables -A PREROUTING -t nat IPCRIT -i IFIN -m mark --mark 0x1 -j
REDIRECT --to 3128

iptables -A INPUT -i IFIN -p tcp --dport 3128 -j ACCEPT
iptables -A FORWARD IPCRIT -i IFIN -o IFOUT -j ACCEPT

Règles plaintext

[tproxy]
IPCRIT
indev=IFIN
group = 513
decision = 1

Et bien sur la règle de décision par défaut.


cas de redirection

Deux cas de redirection :

Flux montant (ACCEPT par défaut)

Lorsque je fais une règle de prerouting, je limite les droits de l’utilisateurs. Les autres ont donc le droit de passer. Il n’est pour l’instant pas possible de faire une politique mixte DROP pour un groupe et REDIRECTION pour un autre dans ce mode. Mettre plusieurs groupes dans la politique de redirection est faisable en dupliquant les règles.

Flux descendant (DROP par défaut)

Lorsque je fais une règle de prerouting, j’augmente les droits de l’utilisateurs. Les autres n’ont donc pas le droit de passer. Il n’est pour l’instant pas possible de faire une politique mixte ACCEPT pour un groupe et REDIRECTION pour un autre dans ce mode. Mettre plusieurs groupes dans la politique de redirection est faisable en dupliquant les règles.

Il faut donc positionner ce flag par défaut et le supprimer si on souhaite logguer les résultats de l’ACLs.

Table des matières

Sujet précédent

Définition de la redirection authentifiée

Sujet suivant

Le format nufacl plaintext

Cette page