#!/bin/sh ################################################################################## # GLOBAL VARIABLES ################################################################################## IFCONFIG=/sbin/ifconfig AWK=/bin/awk EXTIF="eth1" INTIF="eth0" echo " External Interface: $EXTIF" echo " Internal Interface: $INTIF" echo " ---" EXTIP="`$IFCONFIG $EXTIF | $AWK \ /$EXTIF/'{next}//{split($0,a,":");split(a[2],a," ");print a[1];exit}'`" echo " External IP: $EXTIP" echo " ---" iptables -P INPUT DROP iptables -P OUTPUT DROP iptables -P FORWARD DROP iptables -N drop-and-log-it iptables -A drop-and-log-it -j LOG --log-prefix iptables --log-level info iptables -A drop-and-log-it -j REJECT ################################################################################## # FORWARD RULES ################################################################################## #iptables -A FORWARD -s 192.168.1.124 -o $EXTIF -j DROP # Allow legitimate e-mail servers iptables -A FORWARD -s 192.168.10.5 -p tcp -m tcp --dport 25 -j ACCEPT # mail iptables -A FORWARD -s 192.168.10.6 -p tcp -m tcp --dport 25 -j ACCEPT # arbi iptables -A FORWARD -s 192.168.10.3 -p tcp -m tcp --dport 25 -j ACCEPT # arbi iptables -A FORWARD -s 192.168.10.10 -p tcp -m tcp --dport 25 -j ACCEPT # router capriolo iptables -A FORWARD -s 192.168.1.249 -p tcp -m tcp --dport 25 -j ACCEPT # router torony iptables -A FORWARD -s 192.168.1.254 -p tcp -m tcp --dport 25 -j ACCEPT # becse bridge iptables -A FORWARD -s 192.168.3.200 -p tcp -m tcp --dport 25 -j ACCEPT # szabadka iptables -A FORWARD -s 192.168.3.201 -p tcp -m tcp --dport 25 -j ACCEPT # szabadka iptables -A FORWARD -s 192.168.1.104 -p tcp -m tcp --dport 25 -j ACCEPT # pdc server tpu iptables -A FORWARD -s 192.168.6.200 -p tcp -m tcp --dport 25 -j ACCEPT # becse iptables -A FORWARD -s 192.168.1.252 -p tcp -m tcp --dport 25 -j ACCEPT # arbi torony iptables -A FORWARD -s 192.168.1.253 -p tcp -m tcp --dport 25 -j ACCEPT # becse router iptables -A FORWARD -s 192.168.10.4 -p tcp -m tcp --dport 25 -j ACCEPT # ftp server iptables -A FORWARD -s 192.168.1.248 -p tcp -m tcp --dport 25 -j ACCEPT # tpu router iptables -A FORWARD -s 192.168.1.109 -p tcp -m tcp --dport 25 -j ACCEPT # csantaver bdc iptables -A FORWARD -s 192.168.11.251 -p tcp -m tcp --dport 25 -j ACCEPT # router iptables -A FORWARD -s 192.168.1.129 -p tcp -m tcp --dport 25 -j ACCEPT # cash and carry iptables -A FORWARD -s 192.168.1.113 -p tcp -m tcp --dport 25 -j ACCEPT # tpu veleprodaja 1 iptables -A FORWARD -s 192.168.1.114 -p tcp -m tcp --dport 25 -j ACCEPT # tpu veleprodaja 2 iptables -A FORWARD -s 192.168.1.61 -p tcp -m tcp --dport 25 -j ACCEPT # bdc server moravica iptables -A FORWARD -s 192.168.1.200 -p tcp -m tcp --dport 25 -j ACCEPT # bridge tpu iptables -A FORWARD -s 192.168.1.102 -p tcp -m tcp --dport 25 -j ACCEPT # arbitrator 4 iptables -A FORWARD -s 192.168.2.19 -p tcp -m tcp --dport 25 -j ACCEPT # boris iptables -A FORWARD -s 192.168.2.200 -p tcp -m tcp --dport 25 -j ACCEPT # alstar iptables -A FORWARD -s 192.168.1.247 -p tcp -m tcp --dport 25 -j ACCEPT # krivaja iptables -A FORWARD -s 192.168.10.2 -p tcp -m tcp --dport 25 -j ACCEPT # proxy iptables -A FORWARD -s 192.168.5.200 -p tcp -m tcp --dport 25 -j ACCEPT # krivaja iptables -A FORWARD -s 192.168.1.251 -p tcp -m tcp --dport 25 -j ACCEPT # szabadka router iptables -A FORWARD -s 192.168.2.14 -p tcp -m tcp --dport 25 -j ACCEPT # BORIS iptables -A FORWARD -s 192.168.2.20 -p tcp -m tcp --dport 25 -j ACCEPT # ALSTAR-B4C3C055 # VIPLC EXTERNAL MAIL SERVER (STCABLE) iptables -A FORWARD -s 192.168.1.14 -p tcp -m tcp --dport 25 -j ACCEPT # KADR-4 iptables -A FORWARD -s 192.168.1.14 -p tcp -m tcp --dport 110 -j ACCEPT # KADR-4 # Allow HAMACHI for clients iptables -A FORWARD -s 192.168.1.112 -d 69.25.21.0/255.255.255.0 -j ACCEPT # SLAVICA iptables -A FORWARD -s 192.168.1.112 -d 69.25.20.0/255.255.255.0 -j ACCEPT # SLAVICA iptables -A FORWARD -s 192.168.1.86 -d 69.25.21.0/255.255.255.0 -j ACCEPT # MIRKO iptables -A FORWARD -s 192.168.1.86 -d 69.25.20.0/255.255.255.0 -j ACCEPT # MIRKO # Block HAMACHI iptables -A FORWARD -d 69.25.21.0/255.255.255.0 -j REJECT iptables -A FORWARD -d 69.25.20.0/255.255.255.0 -j REJECT # Allow TPU Company D.o.o. iptables -A FORWARD -s 192.168.1.10 -j ACCEPT # csuzdi iptables -A FORWARD -s 192.168.1.83 -j ACCEPT # csuzdi iptables -A FORWARD -s 192.168.1.84 -j ACCEPT # csuzdi iptables -A FORWARD -s 192.168.1.112 -j ACCEPT # slavica iptables -A FORWARD -s 192.168.1.124 -j ACCEPT # stenli iptables -A FORWARD -s 192.168.1.16 -j ACCEPT # maria iptables -A FORWARD -s 192.168.1.17 -j ACCEPT # nemet tibor iptables -A FORWARD -s 192.168.1.89 -j ACCEPT # kiskaroly iptables -A FORWARD -s 192.168.6.10 -j ACCEPT # imelda iptables -A FORWARD -s 192.168.1.150 -j ACCEPT # djurdjica iptables -A FORWARD -s 192.168.1.15 -j ACCEPT # dir2 iptables -A FORWARD -s 192.168.1.38 -j ACCEPT # antal-home iptables -A FORWARD -s 192.168.1.40 -j ACCEPT # laptop-becskei iptables -A FORWARD -s 192.168.1.67 -j ACCEPT # bferi iptables -A FORWARD -s 192.168.1.195 -j ACCEPT # robi-otthoni iptables -A FORWARD -s 192.168.1.23 -j ACCEPT # INFO-1 iptables -A FORWARD -s 192.168.1.47 -j ACCEPT # szabo iptables -A FORWARD -s 192.168.1.144 -j ACCEPT # krsto iptables -A FORWARD -s 192.168.1.162 -j ACCEPT # timi iptables -A FORWARD -s 192.168.1.11 -j ACCEPT # sneska iptables -A FORWARD -s 192.168.1.94 -j ACCEPT # ivana iptables -A FORWARD -s 192.168.1.150 -j ACCEPT # djurdjica iptables -A FORWARD -s 192.168.1.165 -j ACCEPT # brindza-home iptables -A FORWARD -s 192.168.1.163 -j ACCEPT # nebojsa iptables -A FORWARD -s 192.168.1.108 -d 194.106.162.110 -j ACCEPT # INFO-2 VECTOR FTP iptables -A FORWARD -s 192.168.1.167 -j ACCEPT # spector360 # allow VNC from outside inside to tpu company iptables -A FORWARD -d 192.168.1.0/255.255.255.0 -p tcp -m tcp --dport 5900 -j ACCEPT # allow e-bank iptables -A FORWARD -d 80.93.250.10 -j ACCEPT # Block all internal clients port 25 access iptables -A FORWARD -s 196.168.0.0/255.255.255.0 -p tcp -m tcp --dport 25 -j drop-and-log-it iptables -A FORWARD -s 192.168.1.0/255.255.255.0 -p tcp -m tcp --dport 25 -j drop-and-log-it iptables -A FORWARD -s 192.168.2.0/255.255.255.0 -p tcp -m tcp --dport 25 -j drop-and-log-it iptables -A FORWARD -s 192.168.3.0/255.255.255.0 -p tcp -m tcp --dport 25 -j drop-and-log-it iptables -A FORWARD -s 192.168.4.0/255.255.255.0 -p tcp -m tcp --dport 25 -j drop-and-log-it iptables -A FORWARD -s 192.168.5.0/255.255.255.0 -p tcp -m tcp --dport 25 -j drop-and-log-it iptables -A FORWARD -s 192.168.6.0/255.255.255.0 -p tcp -m tcp --dport 25 -j drop-and-log-it iptables -A FORWARD -s 192.168.10.0/255.255.255.0 -p tcp -m tcp --dport 25 -j drop-and-log-it iptables -A FORWARD -s 192.168.11.0/255.255.255.0 -p tcp -m tcp --dport 25 -j drop-and-log-it # Block TPU Company D.o.o. iptables -A FORWARD -s 192.168.1.0/255.255.255.0 -j REJECT iptables -A FORWARD -s 192.168.3.0/255.255.255.0 -j REJECT iptables -A FORWARD -s 192.168.6.0/255.255.255.0 -j REJECT # Block Hotel Krivaja iptables -A FORWARD -s 192.168.5.17 -j REJECT # RESTORAN iptables -A FORWARD -s 192.168.5.18 -j REJECT # SERVER iptables -A FORWARD -s 192.168.5.19 -j REJECT # APERITIV iptables -A FORWARD -s 192.168.5.20 -j REJECT # KUGLANA iptables -A FORWARD -i $INTIF -o $EXTIF -j ACCEPT iptables -A FORWARD -i $INTIF -o $INTIF -j ACCEPT iptables -A FORWARD -i $EXTIF -o $INTIF -m state --state ESTABLISHED,RELATED -j ACCEPT # VSFTPD SERVER 192.168.10.4 iptables -A FORWARD -i $EXTIF -d 192.168.10.4 -p tcp --dport 21 -j ACCEPT iptables -A FORWARD -i $EXTIF -d 192.168.10.4 -p tcp --dport 20 -j ACCEPT # CAPRIOLOBIKE TERMINAL iptables -A FORWARD -i $EXTIF -d 192.168.0.27 -p tcp --dport 3389 -j ACCEPT ######################################################################### # E-MAIL SERVER 192.168.10.5 ######################################################################### # SMTP Server 192.168.10.5 iptables -A FORWARD -i $EXTIF -d 192.168.10.5 -p tcp --dport 25 -j ACCEPT # POP3 Server 192.168.10.5 iptables -A FORWARD -i $EXTIF -d 192.168.10.5 -p tcp --dport 110 -j ACCEPT # IMAP Server 192.168.10.5 iptables -A FORWARD -i $EXTIF -d 192.168.10.5 -p tcp --dport 143 -j ACCEPT # HTTP Server 192.168.10.5 iptables -A FORWARD -i $EXTIF -d 192.168.10.5 -p tcp --dport 80 -j ACCEPT # HTTPS Server 192.168.10.5 iptables -A FORWARD -i $EXTIF -d 192.168.10.5 -p tcp --dport 443 -j ACCEPT ########################################################################## ########################################################################## # E-MAIL Server 192.168.2.200 ########################################################################## # SMTP Server 192.168.2.200 iptables -A FORWARD -i $EXTIF -d 192.168.2.200 -p tcp --dport 25 -j ACCEPT ########################################################################## # IDENT REJECT iptables -A FORWARD -i $EXTIF -o $INTIF -p tcp --dport 113 -j REJECT --reject-with tcp-reset ################################################################################## # E-mule ################################################################################## # ROBERT iptables -A FORWARD -i $EXTIF -o $INTIF -d 192.168.1.195 -p tcp --dport 4662 -j ACCEPT iptables -A FORWARD -i $EXTIF -o $INTIF -d 192.168.1.195 -p udp --dport 4672 -j ACCEPT ################################################################################## # BitTorent ################################################################################## iptables -A FORWARD -i $EXTIF -o $INTIF -d 192.168.1.195 -p tcp --dport 8432 -j ACCEPT ################################################################################## # INPUT RULES ################################################################################## #iptables -A INPUT -s 192.168.1.124 -j DROP iptables -A INPUT -s 127.0.0.1 -j ACCEPT iptables -A INPUT -i $INTIF -j ACCEPT iptables -A INPUT -m state --state RELATED,ESTABLISHED -j ACCEPT # IDENT REJECT iptables -A INPUT -i $EXTIF -p tcp --dport 113 -j REJECT --reject-with tcp-reset # ECHO ICMP PING ALLOW iptables -A INPUT -p icmp -m state --state NEW,ESTABLISHED,RELATED --icmp-type echo-request -m limit --limit 1/s -j ACCEPT ################################################################################## # FTP ################################################################################## iptables -A INPUT -i $EXTIF -p tcp --sport 21 -m state --state ESTABLISHED -j ACCEPT # ACTIVE iptables -A INPUT -i $EXTIF -p tcp --sport 20 -m state --state ESTABLISHED,RELATED -j ACCEPT # PASSIVE iptables -A INPUT -i $EXTIF -p tcp --sport 1024:65535 --dport 1024:65535 -m state --state ESTABLISHED -j ACCEPT ################################################################################## # OUTPUT RULES ################################################################################## #iptables -A OUTPUT -s 192.168.1.124 -j DROP iptables -A OUTPUT -s 127.0.0.1 -j ACCEPT iptables -A OUTPUT -s 192.168.10.1 -j ACCEPT iptables -A OUTPUT -s $EXTIP -j ACCEPT ################################################################################## # PREROUTING ################################################################################## # VSFTPD SERVER 192.168.10.4 iptables -t nat -A PREROUTING -p tcp -d $EXTIP --dport 21 -j DNAT --to 192.168.10.4:21 iptables -t nat -A PREROUTING -p tcp -d $EXTIP --dport 20 -j DNAT --to 192.168.10.4:20 # CAPRIOLOBIKE TERMINAL iptables -t nat -A PREROUTING -p tcp -d $EXTIP --dport 50100 -j DNAT --to 192.168.0.27:3389 ############################################################################### # E-MAIL SERVER 192.168.10.5 ############################################################################### # SMTP Server 192.168.10.5 iptables -t nat -A PREROUTING -p tcp -d $EXTIP --dport 25 -j DNAT --to 192.168.10.5:25 # POP3 Server 192.168.10.5 iptables -t nat -A PREROUTING -p tcp -d $EXTIP --dport 110 -j DNAT --to 192.168.10.5:110 # IMAP Server 192.168.10.5 iptables -t nat -A PREROUTING -p tcp -d $EXTIP --dport 143 -j DNAT --to 192.168.10.5:143 # HTTP Server 192.168.10.5 iptables -t nat -A PREROUTING -p tcp -d $EXTIP --dport 80 -j DNAT --to 192.168.10.5:80 # HTTPS Server 192.168.10.5 iptables -t nat -A PREROUTING -p tcp -d $EXTIP --dport 443 -j DNAT --to 192.168.10.5:443 ############################################################################### ################################################################################## # POSTROUTING ################################################################################## iptables -t nat -A POSTROUTING -s 192.168.10.0/255.255.255.0 -o $EXTIF -j SNAT --to-source $EXTIP iptables -t nat -A POSTROUTING -s 192.168.0.0/255.255.255.0 -o $EXTIF -j SNAT --to-source $EXTIP iptables -t nat -A POSTROUTING -s 192.168.1.0/255.255.255.0 -o $EXTIF -j SNAT --to-source $EXTIP iptables -t nat -A POSTROUTING -s 192.168.2.0/255.255.255.0 -o $EXTIF -j SNAT --to-source $EXTIP iptables -t nat -A POSTROUTING -s 192.168.11.0/255.255.255.0 -o $EXTIF -j SNAT --to-source $EXTIP iptables -t nat -A POSTROUTING -s 192.168.56.0/255.255.255.0 -o $EXTIF -j SNAT --to-source $EXTIP iptables -t nat -A POSTROUTING -s 192.168.4.0/255.255.255.0 -o $EXTIF -j SNAT --to-source $EXTIP iptables -t nat -A POSTROUTING -s 192.168.3.0/255.255.255.0 -o $EXTIF -j SNAT --to-source $EXTIP iptables -t nat -A POSTROUTING -s 192.168.57.0/255.255.255.0 -o $EXTIF -j SNAT --to-source $EXTIP iptables -t nat -A POSTROUTING -s 192.168.58.0/255.255.255.0 -o $EXTIF -j SNAT --to-source $EXTIP iptables -t nat -A POSTROUTING -s 192.168.5.0/255.255.255.0 -o $EXTIF -j SNAT --to-source $EXTIP iptables -t nat -A POSTROUTING -s 192.168.6.0/255.255.255.0 -o $EXTIF -j SNAT --to-source $EXTIP # E-MAIL SERVER iptables -t nat -A POSTROUTING -s 192.168.0.0/255.255.0.0 -p tcp --dst 192.168.10.5 --dport 80 -j SNAT --to-source 192.168.10.1 iptables -t nat -A POSTROUTING -s 192.168.0.0/255.255.0.0 -p tcp --dst 192.168.10.5 --dport 443 -j SNAT --to-source 192.168.10.1 iptables -t nat -A POSTROUTING -s 192.168.0.0/255.255.0.0 -p tcp --dst 192.168.10.5 --dport 25 -j SNAT --to-source 192.168.10.1 iptables -t nat -A POSTROUTING -s 192.168.0.0/255.255.0.0 -p tcp --dst 192.168.10.5 --dport 110 -j SNAT --to-source 192.168.10.1 iptables -t nat -A POSTROUTING -s 192.168.0.0/255.255.0.0 -p tcp --dst 192.168.10.5 --dport 143 -j SNAT --to-source 192.168.10.1 # VSFTPD Server iptables -t nat -A POSTROUTING -s 192.168.0.0/255.255.0.0 -p tcp --dst 192.168.10.4 --dport 20 -j SNAT --to-source 192.168.10.1 iptables -t nat -A POSTROUTING -s 192.168.0.0/255.255.0.0 -p tcp --dst 192.168.10.4 --dport 21 -j SNAT --to-source 192.168.10.1 ################################################################################## # E-MULE ################################################################################## # ROBERT iptables -t nat -A PREROUTING -i $EXTIF -p tcp -d $EXTIP --dport 4662 -j DNAT --to-destination 192.168.1.195:4662 iptables -t nat -A PREROUTING -i $EXTIF -p udp -d $EXTIP --dport 4672 -j DNAT --to-destination 192.168.1.195:4672 ################################################################################## # BitTorent ################################################################################## iptables -t nat -A PREROUTING -i $EXTIF -p tcp -d $EXTIP --dport 8432 -j DNAT --to-destination 192.168.1.195:8432