#!/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 .... | # forward : PROTO ; PORT | # Only intranet #local network="$network;$net" #local network="$network;$net;network.ancier/24;network.gray/24;network.dijon/24;network.chance/24;" # -- CLIENT -- # [ TCP/SSH ] #local clients="$clients|TCP ;ssh ;root/root" #local clients="$clients|UDP ;domain ;root/root;1000/1000" # -- SERVER -- #local servers="$servers|TCP ;ssh ;root/root" #local servers="$servers|UDP ;domain ;1000/1000" # 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"" if [ -n "$gw" ];then local ruleEthIn="$ruleEthIn ;gw_igmp | -s "$gw" -d 224.0.0.1/8 -p igmp" local ruleEthOut="$ruleEthOut;gw_igmp | -d 239.255.255.250/32 -s "$ip"/32 -p igmp" fi # DROP # client dhcp (bootps : 67, bootpc : 68) #local dropIn="$dropIn ;drop_dhcp | -d 255.255.255.255 -s 0.0.0.0 -p udp --sport bootpc --dport bootps -m state --state NEW" #local dropIn="$dropIn ;drop_igmp | -d 224.0.0.1 -s 0.0.0.0 -p igmp"