#!/bin/sh # network : ipv4.ipv4.ipv4.ipv4/mask || dns/mask # clients : PROTO ; PORT ; UID/GID ; UID/GID ; UID/GID .... | # servers : PROTO ; PORT ; UID/GID ; UID/GID ; UID/GID .... | local network="0.0.0.0/0" # ruleOut : iptables -t filter -A OUTPUT -o ""$eth"" -j ""$rulesOut"" # ruleIn : iptables -t filter -A INPUT -i ""$eth"" -j ""$rulesIn"" # dropOut : iptables -t filter -A OUTPUT -o ""$eth"" -j ""$rulesOut"" # dropIn : iptables -t filter -A INPUT -i ""$eth"" -j ""$rulesIn"" # icmp (echo-reply:0/0, echo-request:8/0) local icmpIn="$icmpIn ;icmp | -p icmp --icmp-type 8/0 -m state --state ESTABLISHED,RELATED,NEW" local icmpOut="$icmpOut ;icmp | -p icmp --icmp-type 0/0 -m state --state ESTABLISHED,RELATED" local icmpIn="$icmpIn ;icmp | -p icmp --icmp-type 0/0 -m state --state ESTABLISHED,RELATED" local icmpOut="$icmpOut ;icmp | -p icmp --icmp-type 8/0 -m state --state ESTABLISHED,RELATED,NEW" # icmp (host-unreachable:3/1, port-unreachable:3/3, fragmentation-needed:3/4) local icmpOut="$icmpOut ;icmp | -p icmp --icmp-type 3/1 -m state --state ESTABLISHED,RELATED,NEW" local icmpIn="$icmpIn ;icmp | -p icmp --icmp-type 3/1 -m state --state ESTABLISHED,RELATED,NEW" local icmpOut="$icmpOut ;icmp | -p icmp --icmp-type 3/3 -m state --state ESTABLISHED,RELATED,NEW" local icmpIn="$icmpIn ;icmp | -p icmp --icmp-type 3/3 -m state --state ESTABLISHED,RELATED,NEW" local icmpOut="$icmpOut ;icmp | -p icmp --icmp-type 3/4 -m state --state ESTABLISHED,RELATED,NEW" local icmpIn="$icmpIn ;icmp | -p icmp --icmp-type 3/4 -m state --state ESTABLISHED,RELATED,NEW" # DROP # drop samba protocole (netbios-dgm:138) #local dropIn="$dropIn ;drop_dhcp | -d "$net" -s "$net" -p udp --sport netbios-dgm --dport netbios-dgm -m state --state NEW" #local dropIn="$dropIn ;drop_dhcp | -d "$net" -s "$net" -p udp --sport netbios-ns --dport netbios-ns -m state --state NEW"