• Willkommen im Linux Club - dem deutschsprachigen Supportforum für GNU/Linux. Registriere dich kostenlos, um alle Inhalte zu sehen und Fragen zu stellen.

[gelöst] SQUID MAC Adressen sperren

dav-eng

Newbie
Hallo, ich habe SQUID bei mir laufen. Wie muss der Eintrag in der squid.conf lauten, damit alle MAC Adressen gesperrt werden, außer denen, die ich freischalte.

(Ich benutze das IPCop, dass auf squid.conf aufbaut.)

Danke!
 

Rain-Air

Newbie
Ob Squid die MAc-Adressen überhaupt sehen kann??? würde mich auch mal interessieren... Ich würde eher vermuten, dass du sie an anderer stelle sperren mußt... iptables oder so... obwohl auch da habe ich bis jetzt immer nur ip-adressen gesehen...
 
A

Anonymous

Gast
Hi,
ja ueber iptables ist das easy zur realisieren ;-)
Hab mir weil ich mir die Syntax nicht merk ein kleines Script geschrieben, eventuell hilfts dir ja was ;-)
Ist allerdings nur als zusatz zu den von mir verwendeten Rules gedacht und hatt daher nur als erweiterung bei einen generellen DENY vom LAN sinn #fg#
-------------------------schipp---------------------------------------
#!/bin/sh
case $1 in
add)
dazuweg=A;;
del)
dazuweg=D;;
*)
echo `basename $0` "(add/del) (INPUT/FORWARD/PREROUTING/POSTROUTING) (tcp/udp) [Device(eth0/eth1/etc.)] (PortNumber) [MAC=(xx:xx:xx:xx:xx:xx)]"
echo "Example:"
echo `basename $0` "add INPUT tcp eth0 22 47:11:47:11:47:11"
echo "allows the machine whit MAC47:11:47:11:47:11 a ssh login"
exit;;
esac
case $2 in
INPUT)
rule=$2;;
FORWARD)
rule=$2;;
PREROUTING)
rule=`echo $2 "-t nat"`;;
POSTROUTING)
rule=`echo $2 "-t nat"`;;
*)
echo `basename $0` "(add/del) (INPUT/FORWARD/PREROUTING/POSTROUTING)(tcp/udp)) [Device(eth0/eth1/etc.)] (PortNumber) [MAC=(xx:xx:xx:xx:xx:xx)]"
echo "Example:"
echo `basename $0` "add INPUT tcp eth0 22 47:11:47:11:47:11"
echo "allows the machine whit MAC47:11:47:11:47:11 a ssh login"
exit;;
esac
case $3 in
tcp)
proto=$3;;
udp)
proto=$3;;
*)
echo `basename $0` "(add/del) (INPUT/FORWARD/PREROUTING/POSTROUTING)(tcp/udp)) [Device(eth0/eth1/etc.)] (PortNumber) [MAC=(xx:xx:xx:xx:xx:xx)]"
echo "Example:"
echo `basename $0` "add INPUT tcp eth0 22 47:11:47:11:47:11"
echo "allows the machine whit MAC47:11:47:11:47:11 a ssh login"
exit;;
esac
for a in `ifconfig -a|cut -f1 -d" "|sort -u`
do
if [ "$a" == "$4" ]
then
netdev=$4
fi
done
if [ "$netdev" == "" ]
then
echo `basename $0` "(add/del) (INPUT/FORWARD/PREROUTING/POSTROUTING)(tcp/udp)) [Device(eth0/eth1/etc.)] (PortNumber) [MAC=(xx:xx:xx:xx:xx:xx)]"
echo "Example:"
echo `basename $0` "add INPUT tcp eth0 22 47:11:47:11:47:11"
echo "allows the machine whit MAC47:11:47:11:47:11 a ssh login"
exit
fi
iptables -"$dazuweg" "$rule" -p "$proto" -i "$netdev" -m state --state NEW --dport "$5" -m mac --mac-source "$6" -j ACCEPT
---------------------------schnapp-------------------------------

Mƒg ®êïñï
 
Oben