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)
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
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
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
[tproxy]
IPCRIT
indev=IFIN
group = 513
decision = 1
Et bien sur la règle de décision par défaut.
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.