| Line 1... |
Line 1... |
| 1 |
#!/bin/bash
|
1 |
#!/bin/bash
|
| 2 |
# $Id: alcasar-iptables.sh 1393 2014-06-19 08:44:51Z richard $
|
2 |
# $Id: alcasar-iptables.sh 1453 2014-09-21 07:27:28Z franck $
|
| 3 |
# Script de mise en place des regles du parefeu d'Alcasar (mode normal)
|
3 |
# Script de mise en place des regles du parefeu d'Alcasar (mode normal)
|
| 4 |
# This script writes the netfilter rules for ALCASAR
|
4 |
# This script writes the netfilter rules for ALCASAR
|
| 5 |
# Rexy - 3abtux - CPN
|
5 |
# Rexy - 3abtux - CPN
|
| 6 |
#
|
6 |
#
|
| 7 |
# Reminders
|
7 |
# Reminders
|
| Line 138... |
Line 138... |
| 138 |
fi
|
138 |
fi
|
| 139 |
|
139 |
|
| 140 |
#############################
|
140 |
#############################
|
| 141 |
# PREROUTING #
|
141 |
# PREROUTING #
|
| 142 |
#############################
|
142 |
#############################
|
| - |
|
143 |
# Marquage des paquets qui tentent d'accéder directement à un serveur sans authentification en mode proxy pour pouvoir les rejeter en INPUT
|
| - |
|
144 |
# Mark packets that attempt to directly access a server without authentication with proxy client to reject them in INPUT rules
|
| - |
|
145 |
$IPTABLES -A PREROUTING -t mangle -i $TUNIF -s $PRIVATE_NETWORK_MASK -p tcp -m tcp --dport 80 -m string --string 'GET http' --algo bm --from 50 --to 70 -j MARK --set-mark 10
|
| - |
|
146 |
|
| 143 |
# Marquage (et journalisation) des paquets qui tentent d'accéder directement à DansGuardian pour pouvoir les rejeter en INPUT
|
147 |
# Marquage (et journalisation) des paquets qui tentent d'accéder directement à DansGuardian pour pouvoir les rejeter en INPUT
|
| 144 |
# mark (and log) the dansguardian bypass attempts in order to DROP them in INPUT rules
|
148 |
# mark (and log) the dansguardian bypass attempts in order to DROP them in INPUT rules
|
| 145 |
$IPTABLES -A PREROUTING -t nat -i $TUNIF -p tcp -d $PRIVATE_IP -m tcp --dport 8080 -j ULOG --ulog-prefix "RULE direct-proxy -- DENY "
|
149 |
$IPTABLES -A PREROUTING -t nat -i $TUNIF -p tcp -d $PRIVATE_IP -m tcp --dport 8080 -j ULOG --ulog-prefix "RULE direct-proxy -- DENY "
|
| 146 |
$IPTABLES -A PREROUTING -t mangle -i $TUNIF -d $PRIVATE_IP -p tcp -m tcp --dport 8080 -j MARK --set-mark 1
|
150 |
$IPTABLES -A PREROUTING -t mangle -i $TUNIF -d $PRIVATE_IP -p tcp -m tcp --dport 8080 -j MARK --set-mark 1
|
| 147 |
|
151 |
|
| Line 217... |
Line 221... |
| 217 |
|
221 |
|
| 218 |
# On rejette les trame en broadcast et en multicast sur EXTIF (évite leur journalisation)
|
222 |
# On rejette les trame en broadcast et en multicast sur EXTIF (évite leur journalisation)
|
| 219 |
# Drop broadcast & multicast on EXTIF to avoid log
|
223 |
# Drop broadcast & multicast on EXTIF to avoid log
|
| 220 |
$IPTABLES -A INPUT -i $EXTIF -m addrtype --dst-type BROADCAST,MULTICAST -j DROP
|
224 |
$IPTABLES -A INPUT -i $EXTIF -m addrtype --dst-type BROADCAST,MULTICAST -j DROP
|
| 221 |
|
225 |
|
| - |
|
226 |
# On rejette les trames marquées dans PREROUTING MANGLE sur marqueur HTTP/header mark 3
|
| - |
|
227 |
# Tagged frames are discarded in PREROUTING MANGLE over HTTP/header marker mark 3
|
| - |
|
228 |
$IPTABLES -A INPUT -i $TUNIF -s $PRIVATE_NETWORK_MASK -p tcp --dport 8080 -m mark --mark 10 -j REJECT --reject-with tcp-reset
|
| - |
|
229 |
|
| 222 |
# On autorise les retours de connexions légitimes par INPUT
|
230 |
# On autorise les retours de connexions légitimes par INPUT
|
| 223 |
# Conntrack on INPUT
|
231 |
# Conntrack on INPUT
|
| 224 |
$IPTABLES -A INPUT -m state --state RELATED,ESTABLISHED -j ACCEPT
|
232 |
$IPTABLES -A INPUT -m state --state RELATED,ESTABLISHED -j ACCEPT
|
| 225 |
|
233 |
|
| 226 |
# On interdit les connexions directes au port utilisé par DansGuardian (8080). Les packets concernés ont été marqués et loggués dans la table mangle (PREROUTING)
|
234 |
# On interdit les connexions directes au port utilisé par DansGuardian (8080). Les packets concernés ont été marqués et loggués dans la table mangle (PREROUTING)
|