firewallregel feldmaus 20160110
von feldmaus- SNIPPET_TEXT:
-
- #! /bin/bash
- #################################################################################
- #Author: Markus Feldmann
- #
- # Filterregeln fuer IP-Packete
- #
- # Grundsaetzlicher Aufbau unseres Netzwerkes wird unten angezeigt.
- # Die Pfeile geben die Richtung an von wo nach wo welche Verbindung ist,
- # mit der Bezeichnung die auch in diesem Script verwendet wird.
- #
- # Das Skript kann wie folgt auferufen werden:
- # firewalldsl start pppp0 br0
- #
- #
- # Dieses Skript ist speziell fuer das Netzwerk Device welches
- # sich ueber das DSL Modem mit dem Internet verbindet.
- #
- #
- #
- # ext-fw
- # <-----------------------------------------------
- #
- # int-fw
- # ------------------------------------------------>
- #
- # feld-bert _____
- # \
- # \______<--LAN(ueber br0)__Feld-server__-->WAN(ueber ppp0)__
- # /
- # feld-drizzt ____/
- # int-in dsl-out
- # --------------------------------------> ------------------->
- #
- # int-out dsl-in
- # <-------------------------------------- <-------------------
- #
- # int-int-fw
- # feld-bert ------------------------------->\
- # |
- # feld-driztt <-------------------------------/
- #
- #################################################################################
- #
- # TODO:
- # +DSLNET bei Verteilung der Packete auf die eigene Chains
- # einbauen.
- # +Alle firewall wenden Policies auf die eigenen Chains an, dies ist
- # nicht moeglich.
- #
- #################################################################################
- #
- # Features:
- #
- # +Es koennen mehrere Interfaces aktiv sein mit eigenen
- # iptables. Durch das hoch und runterfahren dieser Interfaces
- # duerfen die anderen iptables nicht beeintraechtigt werden.
- #
- #################################################################################
- # Firewall herunterfahren
- #################################################################################
- function stoppefirewall() {
- # Zu restriktive Policies (DROP) hindern das System am Runterfahren
- # oder Neustarten. Auch koennen neue Netzwerke nicht eingerichtet werden.
- echo -e "\nErstmal alles erlauben in den Haupt Chains."
- iptables -P INPUT ACCEPT
- iptables -P OUTPUT ACCEPT
- iptables -P FORWARD ACCEPT
- echo -e "\nAlle regeln loeschen."
- iptables --flush
- echo -e "\nLoeschen der eigenen Chains."
- iptables --delete-chain
- echo -e "\nKeine Pakete weiterreichen."
- echo 0 >/proc/sys/net/ipv4/ip_forward
- }
- #################################################################################
- # Firewall hochfahren
- #################################################################################
- function startefirewall() {
- #################################################################################
- # Grundeinstellungen, Variablen und Konstanten
- #################################################################################
- DSLIF=$2
- LANIF=$3
- DSLIP=`ip addr show dev $DSLIF | sed -n -e 's/^\ *inet\ \([0-9]\{1,3\}\.[0-9]\{1,3\}\.[0-9]\{1,3\}.[0-9]\{1,3\}\).*/\1/p'`
- DSLMASK=`ip addr show dev $DSLIF | sed -n -e 's/^\ *inet\ .*\/\([0-9]\{1,2\}\).*/\1/p'`
- DSLNET=$DSLIP/$DSLMASK
- LANIP=`ip addr show dev $LANIF | sed -n -e 's/^\ *inet\ \([0-9]\{1,3\}\.[0-9]\{1,3\}\.[0-9]\{1,3\}.[0-9]\{1,3\}\).*/\1/p'`
- LANMASK=`ip addr show dev $LANIF | sed -n -e 's/^\ *inet\ .*\/\([0-9]\{1,2\}\).*/\1/p'`
- LANNET=$LANIP/$LANMASK
- logger -p daemon.info "FW(START): DSLIP=<$DSLIP>, DSLMASK=<$DSLMASK>, LANIP=<$LANIP>, LANMASK=<$LANMASK>."
- let MLPORTCLIENT=4662
- let MLPORTSERVER=$MLPORTCLIENT+4
- #################################################################################
- # Iptables Regeln
- #################################################################################
- logger -p daemon.info "FW: Default Policy DROP."
- iptables -P INPUT DROP
- iptables -P OUTPUT DROP
- iptables -P FORWARD DROP
- logger -p daemon.info "FW: Alle Regeln in den Chains geloescht."
- iptables --flush
- logger -p daemon.info "FW: Eigene Chains geloescht."
- iptables --delete-chain
- logger -p daemon.info "FW: Regeln fuer gespoofte Packete."
- iptables -A INPUT ! -i lo -s 127.0.0.1 -m limit --limit 3/s -j LOG --log-level warning --log-prefix "Loopback gespooft: "
- iptables -A INPUT ! -i lo -s 127.0.0.1 -j DROP
- iptables -A FORWARD ! -i lo -s 127.0.0.1 -m limit --limit 3/s -j LOG --log-level warning --log-prefix "Loopback gespooft: "
- iptables -A FORWARD ! -i lo -s 127.0.0.1 -j DROP
- logger -p daemon.info "FW: Regeln fuer Ident Anfragen."
- iptables -A INPUT ! -i lo -p tcp --dport 113 -m limit --limit 3/s -j LOG --log-level info --log-prefix "IDENT Anfrage: "
- iptables -A INPUT ! -i lo -p tcp --dport 113 -j REJECT
- logger -p daemon.info "FW: Loopback erlauben."
- iptables -A INPUT -i lo -j ACCEPT
- iptables -A OUTPUT -o lo -j ACCEPT
- if \
- iptables -N attacksinput && \
- iptables -A INPUT -i "$DSLIF" -j attacksinput && \
- iptables -A attacksinput -m conntrack --ctstate ESTABLISHED,RELATED -j RETURN && \
- #iptables -A attacksinput -m recent --rcheck -m hashlimit --hashlimit-name attacksin_bl --hashlimit-upto 6/hour --hashlimit-burst 20 --hashlimit-mode srcip -j LOG --log-level info --log-prefix "attacksinput(bl): " && \
- iptables -A attacksinput -m recent --update --seconds 600 -j DROP && \
- iptables -A attacksinput -p tcp -m conntrack --ctstate NEW -m multiport --dports 1:79,81:442,444:65535 -m hashlimit --hashlimit-name attacksinnot_80 --hashlimit-upto 20/second --hashlimit-burst 20 --hashlimit-mode srcip --hashlimit-srcmask 28 -j LOG --log-level info --log-prefix "attacksinput(!80): " && \
- iptables -A attacksinput -p tcp -m conntrack --ctstate NEW -m multiport --dports 1:79,81:442,444:65535 -m recent --set -j DROP && \
- iptables -A attacksinput -p tcp -m conntrack --ctstate NEW -m hashlimit --hashlimit-name http --hashlimit-upto 5/second --hashlimit-burst 20 --hashlimit-mode srcip --hashlimit-srcmask 28 --dport 80 -j ACCEPT && \
- iptables -A attacksinput -p tcp -m conntrack --ctstate NEW,DNAT -m hashlimit --hashlimit-name https --hashlimit-upto 5/second --hashlimit-burst 20 --hashlimit-mode srcip --hashlimit-srcmask 28 --dport 443 -j ACCEPT && \
- iptables -A attacksinput -p icmp --icmp-type 8 -j RETURN && \
- iptables -A attacksinput -m conntrack --ctstate NEW -m hashlimit --hashlimit-name attacksin_new --hashlimit-upto 5/second --hashlimit-burst 20 --hashlimit-mode srcip --hashlimit-srcmask 28 -j LOG --log-level info --log-prefix "attacksinput(NEW): " && \
- iptables -A attacksinput -m conntrack --ctstate INVALID -m hashlimit --hashlimit-name attacksin_inv --hashlimit-upto 5/second --hashlimit-burst 20 --hashlimit-mode srcip --hashlimit-srcmask 28 -j LOG --log-level info --log-prefix "attacksinput(INVALID): " && \
- iptables -A attacksinput -m conntrack --ctstate NEW,INVALID -m recent --set -j DROP && \
- iptables -A attacksinput -m hashlimit --hashlimit-name attacksin_rest --hashlimit-upto 5/second --hashlimit-burst 20 --hashlimit-mode srcip --hashlimit-srcmask 28 -j LOG --log-level info --log-prefix "attacksinput: " && \
- iptables -A attacksinput -m recent --set -j DROP; \
- then
- echo "attacksinput"
- else
- logger -p daemon.err "FW: error: attacksinput"
- fi
- if \
- iptables -N attacksforward && \
- iptables -A FORWARD -i "$DSLIF" -j attacksforward && \
- iptables -A attacksforward -m state --state ESTABLISHED,RELATED -j RETURN && \
- #iptables -A attacksforward -m recent --rcheck -m hashlimit --hashlimit-name attacksfor_bl --hashlimit-upto 6/hour --hashlimit-burst 20 --hashlimit-mode srcip -j LOG --log-level info --log-prefix "attacksforward(bl): " && \
- iptables -A attacksforward -m recent --update --seconds 600 -j DROP && \
- iptables -A attacksforward -m state --state NEW -m hashlimit --hashlimit-name attacksfor_new --hashlimit-upto 20/second --hashlimit-burst 100 --hashlimit-mode srcip --hashlimit-srcmask 28 -j LOG --log-level info --log-prefix "attacksforward(NEW): " && \
- iptables -A attacksforward -m state --state INVALID -m hashlimit --hashlimit-name attacksfor_inv --hashlimit-upto 10/second --hashlimit-burst 20 --hashlimit-mode srcip --hashlimit-srcmask 28 -j LOG --log-level info --log-prefix "attacksforward(INVALID): " && \
- iptables -A attacksforward -m state --state NEW,INVALID -m recent --set -j DROP && \
- iptables -A attacksforward -m hashlimit --hashlimit-name attacksfor_rest --hashlimit-upto 10/second --hashlimit-burst 20 --hashlimit-mode srcip --hashlimit-srcmask 28 -j LOG --log-level info --log-prefix "attacksforward: " && \
- iptables -A attacksforward -m recent --set -j DROP; \
- then
- echo "attacksforward"
- else
- logger -p daemon.err "FW: error: attacksforward"
- fi
- if \
- iptables -A INPUT -p udp -i "$DSLIF" -m multiport --ports 137:139,445 -j DROP && \
- iptables -A INPUT -p tcp -i "$DSLIF" -m multiport --ports 137:139,445 -j DROP && \
- iptables -A FORWARD -p udp -i "$DSLIF" -o "$LANIF" -m multiport --ports 137:139,445 -j DROP && \
- iptables -A FORWARD -p tcp -i "$DSLIF" -o "$LANIF" -m multiport --ports 137:139,445 -j DROP && \
- iptables -A FORWARD -p udp -i "$LANIF" -o "$DSLIF" -m multiport --ports 137:139,445 -j DROP && \
- iptables -A FORWARD -p tcp -i "$LANIF" -o "$DSLIF" -m multiport --ports 137:139,445 -j DROP; \
- then
- echo "Netbios"
- else
- logger -p daemon.err "FW: error: Netbios"
- fi
- if \
- iptables -A INPUT -p icmp --icmp-type 0 -j ACCEPT && \
- iptables -A INPUT -p icmp --icmp-type 3 -j ACCEPT && \
- iptables -A INPUT -p icmp --icmp-type 8 -j ACCEPT && \
- iptables -A INPUT -p icmp --icmp-type 11 -j ACCEPT && \
- iptables -A INPUT -p icmp --icmp-type 12 -j ACCEPT && \
- iptables -A FORWARD -p icmp --icmp-type 0 -j ACCEPT && \
- iptables -A FORWARD -p icmp --icmp-type 3 -j ACCEPT && \
- iptables -A FORWARD -p icmp --icmp-type 8 -j ACCEPT && \
- iptables -A FORWARD -p icmp --icmp-type 11 -j ACCEPT && \
- iptables -A FORWARD -p icmp --icmp-type 12 -j ACCEPT && \
- iptables -A OUTPUT -p icmp -j ACCEPT; \
- then
- echo "ICMP"
- else
- logger -p daemon.info "FW: error: ICMP"
- fi
- if \
- iptables -N dsl-in && \
- iptables -N dsl-out && \
- iptables -N ext-fw && \
- iptables -N int-fw && \
- iptables -N int-in && \
- iptables -N int-out && \
- iptables -N int-int-fw; \
- then
- echo "Eigene Chain"
- else
- logger -p daemon.info "FW: Eigene Chains wurden erstellt"
- fi
- if \
- iptables -A INPUT -i "$DSLIF" -j dsl-in && \
- iptables -A INPUT -i "$LANIF" -j int-in && \
- iptables -A OUTPUT -o "$DSLIF" -j dsl-out && \
- iptables -A OUTPUT -o "$LANIF" -j int-out && \
- iptables -A FORWARD -i "$DSLIF" -o "$LANIF" -j ext-fw && \
- iptables -A FORWARD -i "$LANIF" -o "$DSLIF" -j int-fw && \
- iptables -A FORWARD -i "$LANIF" -o "$LANIF" -j int-int-fw; \
- then
- echo "Verteilung"
- else
- logger -p daemon.err "FW: error: Verteilung der Pakete auf eigene Chains"
- fi
- if \
- iptables -A int-in -j ACCEPT && \
- iptables -A int-out -j ACCEPT && \
- iptables -A int-int-fw -j ACCEPT; \
- then
- echo "Kommunikation"
- else
- logger -p daemon.err "FW: error: Kommunikation lokales Netz."
- fi
- if \
- iptables -A dsl-out -p udp --sport 123 --dport 123 -j ACCEPT && \
- iptables -A dsl-in -p udp --sport 123 --dport 123 -m conntrack ! --ctstate NEW -j ACCEPT && \
- iptables -A int-fw -p udp --dport 123 -m multiport --sports 123,1024:65535 -j ACCEPT && \
- iptables -A ext-fw -p udp --sport 123 -m multiport --dports 123,1024:65535 -m conntrack ! --ctstate NEW -j ACCEPT; \
- then
- echo "NTP"
- else
- logger -p daemon.err "FW: error: NTP Zeitsynchronisation (123)"
- fi
- DNSSERVER_EXTERN=`cat /etc/resolv.conf /etc/ppp/resolv.conf | grep '^nameserver'\
- | sed 's/nameserver//' | sed 's/127.0.0.1//'`
- if [ -n "$DNSSERVER_EXTERN" ]; then
- for DNS in $DNSSERVER_EXTERN
- do
- if [ -n "$DNS" ]; then
- iptables -A dsl-in -p tcp -s "$DNS" --dport 1024:65535 --sport 53 -m conntrack ! --ctstate NEW -j ACCEPT
- iptables -A dsl-in -p udp -s "$DNS" --dport 1024:65535 --sport 53 -m conntrack ! --ctstate NEW -j ACCEPT
- iptables -A dsl-out -p tcp -d "$DNS" --sport 1024:65535 --dport 53 -j ACCEPT
- iptables -A dsl-out -p udp -d "$DNS" --sport 1024:65535 --dport 53 -j ACCEPT
- iptables -A ext-fw -p tcp -s "$DNS" --dport 1024:65535 --sport 53 -m conntrack ! --ctstate NEW -j ACCEPT
- iptables -A ext-fw -p udp -s "$DNS" --dport 1024:65535 --sport 53 -m conntrack ! --ctstate NEW -j ACCEPT
- iptables -A int-fw -p tcp -d "$DNS" --sport 1024:65535 --dport 53 -j ACCEPT
- iptables -A int-fw -p udp -d "$DNS" --sport 1024:65535 --dport 53 -j ACCEPT
- logger -p daemon.info "FW: Kommunikation mit DNS-Server $DNS erlaubt."
- fi
- done
- else
- logger -p daemon.err "FW: error: DNS-Server: Keine DNS Server vorhanden !!!"
- fi
- ROOTDNSSERVER=`grep ' A ' /etc/bind/db.root | sed 's/.*\ *A //'`
- if [ -n "$ROOTDNSSERVER" ]; then
- for DNS in $ROOTDNSSERVER
- do
- if [ -n "$DNS" ]; then
- iptables -A dsl-in -p tcp -s "$DNS" --dport 1024:65535 --sport 53 -m conntrack ! --ctstate NEW -j ACCEPT
- iptables -A dsl-in -p udp -s "$DNS" --dport 1024:65535 --sport 53 -m conntrack ! --ctstate NEW -j ACCEPT
- iptables -A dsl-out -p tcp -d "$DNS" --sport 1024:65535 --dport 53 -j ACCEPT
- iptables -A dsl-out -p udp -d "$DNS" --sport 1024:65535 --dport 53 -j ACCEPT
- logger -p daemon.info "FW: Kommunikation mit ROOT DNS-Server $DNS erlaubt."
- fi
- done
- else
- logger -p daemon.err "FW: ROOT DNS-Server: Keine ROOT DNS-Server vorhanden !"
- fi
- if \
- #FTP - Kontrollverbindungen
- iptables -A dsl-in -p tcp --dport 1024:65535 --sport 21 -m conntrack ! --ctstate NEW -j ACCEPT && \
- iptables -A dsl-out -p tcp --sport 1024:65535 --dport 21 -j ACCEPT && \
- iptables -A ext-fw -p tcp --dport 1024:65535 --sport 21 -m conntrack ! --ctstate NEW -j ACCEPT && \
- iptables -A int-fw -p tcp --sport 1024:65535 --dport 21 -j ACCEPT && \
- #FTP - aktives FTP
- iptables -A dsl-in -p tcp --dport 1024:65535 --sport 20 -m conntrack ! --ctstate NEW -m helper --helper ftp -j ACCEPT && \
- iptables -A dsl-out -p tcp --sport 1024:65535 --dport 20 -m helper --helper ftp -j ACCEPT && \
- iptables -A ext-fw -p tcp --dport 1024:65535 --sport 20 -m conntrack ! --ctstate NEW -m helper --helper ftp -j ACCEPT && \
- iptables -A int-fw -p tcp --sport 1024:65535 --dport 20 -m helper --helper ftp -j ACCEPT && \
- #FTP - passives FTP
- iptables -A dsl-in -p tcp --dport 1024:65535 --sport 1024:65535 -m conntrack ! --ctstate NEW -m helper --helper ftp -j ACCEPT && \
- iptables -A dsl-out -p tcp --sport 1024:65535 --dport 1024:65535 -m helper --helper ftp -j ACCEPT && \
- iptables -A ext-fw -p tcp --dport 1024:65535 --sport 1024:65535 -m conntrack ! --ctstate NEW -m helper --helper ftp -j ACCEPT && \
- iptables -A int-fw -p tcp --sport 1024:65535 --dport 1024:65535 -m helper --helper ftp -j ACCEPT; \
- then
- logger -p daemon.info "FW: FTP"
- logger -p daemon.info "FW: FTP - Kontrollverbindung"
- else
- logger -p daemon.err "FW: error: FTP"
- fi
- if \
- iptables -A dsl-in -p tcp --sport 1024:65535 --dport 80 -m conntrack ! --ctstate NEW -j ACCEPT && \
- iptables -A dsl-out -p tcp --dport 1024:65535 --sport 80 -j ACCEPT && \
- #HTTPS feld-server (443)
- iptables -A dsl-in -p tcp --sport 1024:65535 --dport 443 -m conntrack ! --ctstate NEW -j ACCEPT && \
- iptables -A dsl-out -p tcp --dport 1024:65535 --sport 443 -j ACCEPT && \
- #HTTP (80,8000,8080)
- iptables -A dsl-out -p tcp --sport 1024:65535 -m multiport --dports 80,8000,8080 -j ACCEPT && \
- iptables -A dsl-in -p tcp --dport 1024:65535 -m multiport --sports 80,8000,8080 -m conntrack ! --ctstate NEW -j ACCEPT && \
- iptables -A int-fw -p tcp --sport 1024:65535 -m multiport --dports 80,8000,8080 -j ACCEPT && \
- iptables -A ext-fw -p tcp --dport 1024:65535 -m multiport --sports 80,8000,8080 -m conntrack ! --ctstate NEW -j ACCEPT && \
- #HTTPS (443)
- iptables -A dsl-in -p tcp --dport 1024:65535 --sport 443 -m conntrack ! --ctstate NEW -j ACCEPT && \
- iptables -A dsl-out -p tcp --sport 1024:65535 --dport 443 -j ACCEPT && \
- iptables -A ext-fw -p tcp --dport 1024:65535 --sport 443 -m conntrack ! --ctstate NEW -j ACCEPT && \
- iptables -A int-fw -p tcp --sport 1024:65535 --dport 443 -j ACCEPT; \
- then
- logger -p daemon.info "FW: HTTP feld-server (80)"
- else
- logger -p daemon.err "FW: error: HTTP feld-server (80)"
- fi
- if \
- iptables -A int-fw -p tcp --sport 1024:65535 --dport 25 -j ACCEPT && \
- iptables -A ext-fw -p tcp --dport 1024:65535 --sport 25 -m conntrack ! --ctstate NEW -j ACCEPT; \
- then
- echo "SMTP"
- else
- logger -p daemon.err "FW: error: SMTP (25)"
- fi
- if \
- iptables -A ext-fw -p tcp --dport 1024:65535 --sport 465 -m conntrack ! --ctstate NEW -j ACCEPT && \
- iptables -A int-fw -p tcp --sport 1024:65535 --dport 465 -j ACCEPT; \
- then
- echo "SSMTP"
- else
- logger -p daemon.err "FW: error: SSMTP (465)"
- fi
- if \
- iptables -A ext-fw -p tcp --dport 1024:65535 --sport 110 -m conntrack ! --ctstate NEW -j ACCEPT && \
- iptables -A int-fw -p tcp --sport 1024:65535 --dport 110 -j ACCEPT; \
- then
- echo "POP3"
- else
- logger -p daemon.err "FW: error: POP3 (110)"
- fi
- if \
- iptables -A ext-fw -p tcp --dport 1024:65535 --sport 995 -m conntrack ! --ctstate NEW -j ACCEPT && \
- iptables -A int-fw -p tcp --sport 1024:65535 --dport 995 -j ACCEPT; \
- then
- echo "POP3S"
- else
- logger -p daemon.err "FW: error: POP3S (995)"
- fi
- if \
- iptables -A ext-fw -p tcp --dport 1024:65535 --sport 143 -m conntrack ! --ctstate NEW -j ACCEPT && \
- iptables -A int-fw -p tcp --sport 1024:65535 --dport 143 -j ACCEPT; \
- then
- echo "IMAP"
- else
- logger -p daemon.err "FW: error: IMAP (143)"
- fi
- if \
- iptables -A ext-fw -p tcp --dport 1024:65535 --sport 993 -m conntrack ! --ctstate NEW -j ACCEPT && \
- iptables -A int-fw -p tcp --sport 1024:65535 --dport 993 -j ACCEPT; \
- then
- echo "IMAPS"
- else
- logger -p daemon.erro "FW: error: IMAPS (993)"
- fi
- if \
- iptables -A ext-fw -p tcp --dport 1024:65535 --sport 119 -m conntrack ! --ctstate NEW -j ACCEPT && \
- iptables -A int-fw -p tcp --sport 1024:65535 --dport 119 -j ACCEPT; \
- then
- echo "NNTP"
- else
- logger -p daemon.err "FW: error: NNTP (119)"
- fi
- if \
- iptables -A ext-fw -p tcp --dport 1024:65535 --sport 563 -m conntrack ! --ctstate NEW -j ACCEPT && \
- iptables -A int-fw -p tcp --sport 1024:65535 --dport 563 -j ACCEPT; \
- then
- echo "NNTPS"
- else
- logger -p daemon.err "FW: error: NNTPS (563)"
- fi
- if \
- iptables -A ext-fw -p tcp --dport 1024:65535 --sport 70 -m conntrack ! --ctstate NEW -j ACCEPT && \
- iptables -A int-fw -p tcp --sport 1024:65535 --dport 70 -j ACCEPT && \
- iptables -A ext-fw -p tcp --dport 1024:65535 --sport 210 -m conntrack ! --ctstate NEW -j ACCEPT && \
- iptables -A int-fw -p tcp --sport 1024:65535 --dport 210 -j ACCEPT; \
- then
- echo "Gopher und Wais"
- else
- logger -p daemon.err "FW: error: GOPHER und WAIS (70 und 210)"
- fi
- if \
- iptables -A int-fw -p tcp --sport 1024:65535 --dport 22 -j ACCEPT && \
- iptables -A ext-fw -p tcp --sport 22 --dport 1024:65535 -m conntrack ! --ctstate NEW -j ACCEPT; \
- then
- echo "SSH"
- else
- logger -p daemon.err "FW: error: SSH"
- fi
- if \
- iptables -A int-fw -p tcp --sport 1024:65535 --dport 6667 -j ACCEPT; \
- iptables -A ext-fw -p tcp --sport 6667 --dport 1024:65535 -m conntrack ! --ctstate NEW -j ACCEPT; \
- then
- echo "IRC"
- else
- logger -p daemon.err "FW: error: IRC"
- fi
- if \
- iptables -A int-fw -p tcp --sport 1024:65535 --dport 9418 -j ACCEPT && \
- iptables -A ext-fw -p tcp --sport 9418 --dport 1024:65535 -m conntrack ! --ctstate NEW -j ACCEPT; \
- then
- echo "GIT"
- else
- logger -p daemon.err "FW: error: GIT"
- fi
- if \
- #UDP -> Elite Warriors
- iptables -A int-fw -p udp --sport 2421 -m multiport --dports 2500:2600 -j ACCEPT && \
- #iptables -A ext-fw -p udp -m multiport --dports 2304 -m multiport --sports 2352,2552,2752 -m conntrack ! --ctstate NEW -j ACCEPT && \
- #UDP -> 3.Jaegerkompanie
- iptables -A int-fw -p udp --sport 2304 -m multiport --dports 2352,2552,2752 -j ACCEPT && \
- iptables -A ext-fw -p udp -m multiport --dports 2304 -m multiport --sports 2352,2552,2752 -m conntrack ! --ctstate NEW -j ACCEPT && \
- #UDP -> TF47 Public
- iptables -A int-fw -p udp --sport 1024:65535 -m multiport --dports 2303:2500 -j ACCEPT && \
- iptables -A ext-fw -p udp --dport 1024:65535 -m multiport --sports 2303:2500 -m conntrack ! --ctstate NEW -j ACCEPT && \
- #UDP -> BECTI Warfare www.ofps.net
- iptables -A int-fw -p udp --sport 1024:65535 -m multiport --dports 2320 -j ACCEPT && \
- iptables -A ext-fw -p udp --dport 1024:65535 -m multiport --sports 2320 -m conntrack ! --ctstate NEW -j ACCEPT && \
- #UDP -> 3CB
- iptables -A int-fw -p udp --sport 1024:65535 -m multiport --dports 2302,2362,2363,3544,36653 -j ACCEPT && \
- iptables -A ext-fw -p udp --dport 1024:65535 -m multiport --sports 2302,2362,2363,3544 -m conntrack ! --ctstate NEW -j ACCEPT && \
- #UDP -> EUTW.NET
- iptables -A int-fw -p udp --sport 1024:65535 -m multiport --dports 2302,4660,4670,4680,4681,4693 -j ACCEPT && \
- iptables -A ext-fw -p udp --dport 1024:65535 -m multiport --sports 2302,4660,4670,4680,4681,4693 -m conntrack ! --ctstate NEW -j ACCEPT; \
- #TCP
- then
- echo "ARMA 2, ARMA 3"
- else
- logger -p daemon.info "FW: error: ARMA 2"
- fi
- # if \
- # iptables -A int-fw -p udp --sport 1024:65535 --dport 33001 -j ACCEPT; \
- # then
- # echo "Auteria"
- # else
- # logger -p daemon.err "FW: error: Auteria"
- # fi
- if \
- iptables -A int-fw -p tcp --sport 1024:65535 --dport 2000 -j ACCEPT && \
- iptables -A ext-fw -p tcp --sport 2000 --dport 1024:65535 -m conntrack ! --ctstate NEW -j ACCEPT; \
- then
- echo "Eternal Lands"
- else
- logger -p daemon.err "FW: error: Eternal Lands"
- fi
- if \
- iptables -A int-fw -p tcp --sport 1024:65535 --dport 3074 -j ACCEPT && \
- iptables -A ext-fw -p tcp --sport 3074 --dport 1024:65535 -m conntrack ! --ctstate NEW -j ACCEPT && \
- iptables -A int-fw -p udp --sport 1024:65535 -m multiport --dports 16587,21000,26116,27040,27633,27701:27703,27733,30000,48320 -j ACCEPT && \
- iptables -A ext-fw -p udp --dport 1024:65535 -m multiport --sports 16587,21000,26116,27040,27633,27733,30000,48320,27701:27703 -m conntrack ! --ctstate NEW -j ACCEPT; \
- then
- echo "ETQW"
- else
- logger -p daemon.err "FW: error: ETQW"
- fi
- # if \
- # iptables -A int-fw -p udp --sport 27960 --dport 27960 -j ACCEPT && \
- # iptables -A int-fw -p udp --sport 27960 --dport 27950 -j ACCEPT && \
- # iptables -A int-fw -p udp --sport 27960 --dport 27951 -j ACCEPT; \
- # then
- # echo "ET"
- # else
- # logger -p daemon.info "FW: error: ET"
- # fi
- if\
- #Client
- iptables -A int-fw -p tcp --sport 1024:65535 --dport 1802 -j ACCEPT && \
- iptables -A ext-fw -p tcp --sport 1802 --dport 1024:65535 -m conntrack ! --ctstate NEW -j ACCEPT; \
- #SERVER
- iptables -A ext-fw -p tcp --sport 1024:65535 --dport 1802 -m conntrack ! --ctstate NEW -j ACCEPT; \
- then
- echo "FantasyGrounds2"
- else
- logger -p daemon.err "FW: error: FantasyGrounds2"
- fi
- # if \
- # iptables -A int-fw -p udp --sport 7808 --dport 7808 -j ACCEPT && \
- # iptables -A int-fw -p tcp --sport 7808 --dport 7808 -j ACCEPT && \
- # iptables -A ext-fw -p udp --sport 7808 --dport 7808 -m conntrack ! --ctstate NEW -j ACCEPT && \
- # iptables -A ext-fw -p tcp --sport 7808 --dport 7808 -m conntrack ! --ctstate NEW -j ACCEPT && \
- # iptables -A int-fw -p udp --sport 7117 --dport 7117 -j ACCEPT && \
- # iptables -A int-fw -p tcp --sport 7117 --dport 7117 -j ACCEPT && \
- # iptables -A ext-fw -p udp --sport 7117 --dport 7117 -m conntrack ! --ctstate NEW -j ACCEPT && \
- # iptables -A ext-fw -p tcp --sport 7117 --dport 7117 -m conntrack ! --ctstate NEW -j ACCEPT && \
- # iptables -A int-fw -p udp --sport 7808 --dport 1234 -j ACCEPT && \
- # iptables -A int-fw -p tcp --sport 7808 --dport 1234 -j ACCEPT && \
- # iptables -A ext-fw -p udp --sport 1234 --dport 7808 -m conntrack ! --ctstate NEW -j ACCEPT; \
- # then
- # echo "Freespace"
- # else
- # logger -p daemon.err "FW: error: Freespace2"
- # fi
- if \
- iptables -A int-fw -p tcp --sport 1024:65535 --dport 11031 -j ACCEPT && \
- iptables -A ext-fw -p tcp --sport 11031 --dport 1024:65535 -m conntrack ! --ctstate NEW -j ACCEPT && \
- iptables -A int-fw -p udp --sport 1024:65535 -m multiport --dports 11436:11450 -j ACCEPT && \
- iptables -A ext-fw -p udp --dport 1024:65535 -m multiport --sports 11436:11450 -m conntrack ! --ctstate NEW -j ACCEPT && \
- iptables -A int-fw -p udp --sport 1024:65535 --dport 11235:11335 -j ACCEPT && \
- iptables -A ext-fw -p udp --sport 11235:11335 --dport 1024:65535 -m conntrack ! --ctstate NEW -j ACCEPT; \
- then
- echo "HoN"
- else
- logger -p daemon.err "FW: error: HoN"
- fi
- if \
- iptables -A int-fw -p tcp --sport 1024:65535 --dport 8393:8400 -j ACCEPT && \
- iptables -A ext-fw -p tcp --sport 8393:8400 --dport 1024:65535 -m conntrack ! --ctstate NEW -j ACCEPT && \
- iptables -A int-fw -p udp --sport 1024:65535 -m multiport --dports 5000:5500 -j ACCEPT && \
- iptables -A ext-fw -p udp --dport 1024:65535 -m multiport --sports 5000:5500 -m conntrack ! --ctstate NEW -j ACCEPT && \
- iptables -A int-fw -p tcp --sport 1024:65535 -m multiport --dports 2099,5223,5222 -j ACCEPT && \
- iptables -A ext-fw -p tcp --dport 1024:65535 -m multiport --sports 2099,5223,5222 -m conntrack ! --ctstate NEW -j ACCEPT; \
- then
- echo "LoL"
- else
- logger -p daemon.err "FW: error: League of Legends"
- fi
- if\
- iptables -A int-fw -p tcp --sport 1024:65535 --dport 51234 -j ACCEPT && \
- iptables -A ext-fw -p tcp --sport 51234 --dport 1024:65535 -m conntrack ! --ctstate NEW -j ACCEPT; \
- then
- echo "MapTool"
- else
- logger -p daemon.err "FW: error: MapTool"
- fi
- #echo -e "\nMldonkey"
- #echo -e "\nMldonkey DSLIN . . ."
- #iptables -A dsl-in -p udp --sport 1024:65535 --dport "$MLPORTSERVER" -j ACCEPT
- #iptables -A dsl-in -p tcp --sport 1024:65535 --dport "$MLPORTSERVER" -j ACCEPT
- #iptables -A dsl-in -p udp --sport 1024:65535 --dport "$MLPORTCLIENT" -j ACCEPT
- #iptables -A dsl-in -p tcp --sport 1024:65535 --dport "$MLPORTCLIENT" -j ACCEPT
- #echo -e "\nMldonkey DSLOUT . . ."
- #iptables -A dsl-out -p udp --sport "$MLPORTSERVER" --dport 1024:65535 -j ACCEPT
- #echo -e "\nMldonkey Forwarding"
- #echo -e "\nMldonkey Forwarding EXTFW . . ."
- #iptables -A ext-fw -p udp --sport 1024:65535 --dport "$MLPORTSERVER" -j ACCEPT
- #iptables -A ext-fw -p tcp --sport 1024:65535 --dport "$MLPORTSERVER" -j ACCEPT
- #iptables -A ext-fw -p udp --sport 1024:65535 --dport "$MLPORTCLIENT" -j ACCEPT
- #iptables -A ext-fw -p tcp --sport 1024:65535 --dport "$MLPORTCLIENT" -j ACCEPT
- #echo -e "\nMldonkey Forwarding INTFW . . ."
- #iptables -A int-fw -p udp --sport "$MLPORTSERVER" --dport 1024:65535 -j ACCEPT
- #iptables -A int-fw -p udp --sport 1024:65535 --dport 24944 -j ACCEPT
- if\
- iptables -A int-fw -p udp --sport 1024:65535 --dport 64738 -j ACCEPT && \
- iptables -A int-fw -p tcp --sport 1024:65535 --dport 64738 -j ACCEPT && \
- iptables -A ext-fw -p udp --sport 64738 --dport 1024:65535 -m conntrack ! --ctstate NEW -j ACCEPT && \
- iptables -A ext-fw -p tcp --sport 64738 --dport 1024:65535 -m conntrack ! --ctstate NEW -j ACCEPT; \
- then
- echo "Mumble"
- else
- logger -p daemon.err "FW: error: Mumble"
- fi
- # if \
- # iptables -A int-fw -p udp --sport 5120:5300 --dport 6121 -j ACCEPT && \
- # iptables -A int-fw -p udp --sport 1024:65535 --dport 5120:5300 -j ACCEPT && \
- # iptables -A int-fw -p udp --sport 13139 --dport 13139 -j ACCEPT && \
- # iptables -A int-fw -p udp --sport 5120:5300 --dport 5120:5300 -j ACCEPT; \
- # then
- # echo "NWN2"
- # else
- # logger -p daemon.err "FW: error: NWN2"
- # fi
- # if \
- # iptables -A int-fw -p udp --sport 1024:65535 --dport 7777 -j ACCEPT; \
- # then
- # echo "Planeshift"
- # else
- # logger -p daemon.err "FW: error: Planeshift"
- # fi
- if \
- iptables -A int-fw -p tcp --sport 1024:65535 -m multiport --dports 9200 -j ACCEPT && \
- iptables -A int-fw -p udp --dport 1024:65535 -m multiport --sports 46327,50001:50052 -j ACCEPT && \
- iptables -A int-fw -p udp --sport 1024:65535 -m multiport --dports 25903,27011 -j ACCEPT && \
- iptables -A ext-fw -p udp --sport 1024:65535 -m multiport --dports 46327,50001:50052 -m conntrack ! --ctstate NEW -j ACCEPT && \
- iptables -A ext-fw -p udp --dport 1024:65535 -m multiport --sports 25903,27011 -m conntrack ! --ctstate NEW -j ACCEPT; \
- then
- echo "Play WithSIX"
- else
- logger -p daemon.err "FW: error: Play WithSix"
- fi
- # if \
- # iptables -A int-fw -p tcp --sport 1024:65535 --dport 47300 -j ACCEPT && \
- # iptables -A int-fw -p tcp --sport 1024:65535 --dport 48000:48001 -j ACCEPT && \
- # iptables -A int-fw -p udp --sport 9960:9963 --dport 9960:9963 -j ACCEPT && \
- # iptables -A ext-fw -p udp --sport 9960:9963 --dport 9960:9963 -m conntrack ! --ctstate NEW -j ACCEPT && \
- # iptables -A ext-fw -p tcp --sport 48000:48001 --dport 1024:65535 -m conntrack ! --ctstate NEW -j ACCEPT && \
- # iptables -A ext-fw -p tcp --sport 47300 --dport 1024:65535 -m conntrack ! --ctstate NEW -j ACCEPT; \
- # then
- # echo "Regnum Online"
- # else
- # logger -p daemon.err "FW: error: Regnum Online"
- # fi
- if \
- iptables -A int-fw -p tcp --sport 1024:65535 --dport 50000 -j ACCEPT && \
- iptables -A int-fw -p tcp --sport 1024:65535 --dport 40916 -j ACCEPT && \
- iptables -A int-fw -p tcp --sport 1024:65535 --dport 43434 -j ACCEPT && \
- iptables -A int-fw -p udp --sport 1024:65535 --dport 47851:47860 -j ACCEPT && \
- iptables -A int-fw -p tcp --sport 1024:65535 --dport 48851:48860 -j ACCEPT && \
- iptables -A ext-fw -p tcp --sport 50000 --dport 1024:65535 -m conntrack ! --ctstate NEW -j ACCEPT && \
- iptables -A ext-fw -p tcp --sport 40916 --dport 1024:65535 -m conntrack ! --ctstate NEW -j ACCEPT && \
- iptables -A ext-fw -p tcp --sport 43434 --dport 1024:65535 -m conntrack ! --ctstate NEW -j ACCEPT && \
- iptables -A ext-fw -p udp --sport 47851:47860 --dport 1024:65535 -m conntrack ! --ctstate NEW -j ACCEPT && \
- iptables -A ext-fw -p tcp --sport 48851:48860 --dport 1024:65535 -m conntrack ! --ctstate NEW -j ACCEPT; \
- then
- echo "Ryzom"
- else
- logger -p daemon.err "FW: error: Ryzom"
- fi
- # if \
- # iptables -A int-fw -p udp --sport 11235:11238 --dport 22340 -j ACCEPT && \
- # iptables -A int-fw -p udp --sport 1024:65535 --dport 11235:11238 -j ACCEPT && \
- # iptables -A ext-fw -p udp --sport 11235:11238 --dport 1024:65535 -m conntrack ! --ctstate NEW -j ACCEPT && \
- # iptables -A ext-fw -p udp --sport 56158 --dport 56158 -m conntrack ! --ctstate NEW -j ACCEPT; \
- # then
- # echo "Savage2"
- # else
- # logger -p daemon.err "FW: error: Savage2"
- # fi
- if \
- iptables -A int-fw -p udp --sport 33033 -m multiport --dports 80,443,1024:65535 -j ACCEPT && \
- iptables -A int-fw -p tcp --sport 33033 -m multiport --dports 80,443,1024:65535 -j ACCEPT && \
- iptables -A ext-fw -p udp --dport 33033 -m multiport --sports 80,443,1024:65535 -m conntrack ! --ctstate NEW -j ACCEPT && \
- iptables -A ext-fw -p tcp --dport 33033 -m multiport --sports 80,443,1024:65535 -m conntrack ! --ctstate NEW -j ACCEPT; \
- # iptables -A int-fw -p udp --sport 1024:65535 -m multiport --dports 1024:65535 -j ACCEPT && \
- # iptables -A int-fw -p tcp --sport 1024:65535 -m multiport --dports 1024:65535 -j ACCEPT && \
- # iptables -A ext-fw -p udp --dport 1024:65535 -m multiport --sports 1024:65535 -m conntrack ! --ctstate NEW -j ACCEPT && \
- # iptables -A ext-fw -p tcp --dport 1024:65535 -m multiport --sports 1024:65535 -m conntrack ! --ctstate NEW -j ACCEPT; \
- then
- echo "Skype"
- else
- logger -p daemon.err "FW: error: Skype"
- fi
- # if \
- # iptables -A int-fw -p tcp --sport 1024:65535 --dport 8200 -j ACCEPT && \
- # iptables -A int-fw -p udp --sport 1024:65535 --dport 8452 -j ACCEPT && \
- # iptables -A ext-fw -p udp --sport 8452 --dport 1024:65535 -m conntrack ! --ctstate NEW -j ACCEPT && \
- # iptables -A ext-fw -p tcp --sport 8200 --dport 1024:65535 -m conntrack ! --ctstate NEW -j ACCEPT; \
- # then
- # echo "Spring"
- # else
- # logger -p daemon.err "FW: error: Spring"
- # fi
- if \
- iptables -A int-fw -p udp --sport 64090 -m multiport --dports 64000:64100 -j ACCEPT && \
- # iptables -A int-fw -p tcp --sport 1024:65535 --dport 27015:27050 -j ACCEPT && \
- iptables -A ext-fw -p udp --dport 64090 -m multiport --sports 64000:64100 -m conntrack ! --ctstate NEW -j ACCEPT; \
- # iptables -A ext-fw -p tcp --dport 1024:65535 --sport 27015:27050 -m conntrack ! --ctstate NEW -j ACCEPT; \
- then
- echo "Star Citizens"
- else
- logger -p daemon.err "FW: error: Star Citizens"
- fi
- if \
- iptables -A int-fw -p udp --sport 1024:65535 -m multiport --dports 3478,4379,4380,12000,27000:27030 -j ACCEPT && \
- iptables -A int-fw -p tcp --sport 1024:65535 --dport 27015:27050 -j ACCEPT && \
- iptables -A ext-fw -p udp --dport 1024:65535 -m multiport --sports 3478,4379,4380,12000,27000:27030 -m conntrack ! --ctstate NEW -j ACCEPT && \
- iptables -A ext-fw -p tcp --dport 1024:65535 --sport 27015:27050 -m conntrack ! --ctstate NEW -j ACCEPT; \
- then
- echo "Steam"
- else
- logger -p daemon.err "FW: error: Steam"
- fi
- if\
- #Teamspeak aktualisieren
- iptables -A int-fw -p udp --sport 1024:65535 -m multiport --dports 9987,14100,17384:17385,21230 -j ACCEPT && \
- iptables -A ext-fw -p udp --dport 1024:65535 -m multiport --sports 9987,14100,17384:17385,21230 -m conntrack ! --ctstate NEW -j ACCEPT && \
- #alles weitere
- iptables -A int-fw -p udp --sport 1024:65535 --dport 9987:10011 -j ACCEPT && \
- iptables -A int-fw -p tcp --sport 1024:65535 --dport 2010 -j ACCEPT && \
- iptables -A int-fw -p tcp --sport 1024:65535 -m multiport --dports 21231,30033,18567,41144 -j ACCEPT && \
- iptables -A int-fw -p udp --sport 1024:65535 -m multiport --dports 30033,18567 -j ACCEPT && \
- iptables -A ext-fw -p udp --sport 9987:10011 --dport 1024:65535 -m conntrack ! --ctstate NEW -j ACCEPT && \
- iptables -A ext-fw -p udp --dport 1024:65535 -m multiport --sports 30033,18567 -m conntrack ! --ctstate NEW -j ACCEPT && \
- iptables -A ext-fw -p tcp --dport 1024:65535 -m multiport --sports 21231,30033,18567,41144 -m conntrack ! --ctstate NEW -j ACCEPT && \
- iptables -A ext-fw -p tcp --sport 2010 --dport 1024:65535 -m conntrack ! --ctstate NEW -j ACCEPT; \
- then
- echo "Teamspeak"
- else
- logger -p daemon.err "FW: error: Teamspeak"
- fi
- if\
- iptables -A int-fw -p tcp --sport 1024:65535 -m multiport --dports 9001,9030,9090,9100,9101 -j ACCEPT && \
- iptables -A ext-fw -p tcp --dport 1024:65535 -m multiport --sports 9001,9030,9090,9100,9101 -m conntrack ! --ctstate NEW -j ACCEPT; \
- then
- echo "Tor"
- else
- logger -p daemon.err "FW: error: Tor"
- fi
- if\
- iptables -A int-fw -p tcp --sport 1024:65535 -m multiport --dports 27388,29692,21250,39688,44638,51413,50561,47435,6881:6969 -j ACCEPT && \
- iptables -A ext-fw -p tcp --dport 1024:65535 -m multiport --sports 27388,29692,21250,39688,44638,51413,47435,57888,6881:6969 -m conntrack ! --ctstate NEW -j ACCEPT && \
- iptables -A ext-fw -p tcp --sport 1024:65535 --dport 51413 -m conntrack ! --ctstate NEW -j ACCEPT; \
- then
- echo "Torrent"
- else
- logger -p daemon.err "FW: error: Torrent"
- fi
- if\
- iptables -A int-fw -p tcp --sport 1024:65535 -m multiport --dports 13000,14000,14008 -j ACCEPT && \
- iptables -A int-fw -p udp --sport 3074 -m multiport --dports 24650,24651,24656 -j ACCEPT && \
- iptables -A ext-fw -p tcp --dport 1024:65535 -m multiport --sports 13000,14000,14008 -m conntrack ! --ctstate NEW -j ACCEPT && \
- iptables -A ext-fw -p udp --dport 3074 -m multiport --sports 24650,24651,24656 -m conntrack ! --ctstate NEW -j ACCEPT; \
- then
- echo "Uplay"
- else
- logger -p daemon.err "FW: error: Uplay"
- fi
- if\
- #iptables -A int-fw -p tcp --sport 1024:65535 -m multiport --dports 13000,14000,14008 -j ACCEPT && \
- iptables -A int-fw -p udp --sport 1024:65535 -m multiport --dports 53,443,1195,19302 -j ACCEPT && \
- #iptables -A ext-fw -p tcp --dport 1024:65535 -m multiport --sports 13000,14000,14008 -m conntrack ! --ctstate NEW -j ACCEPT && \
- iptables -A ext-fw -p udp --dport 1024:65535 -m multiport --sports 53,443,1195,19302 -m conntrack ! --ctstate NEW -j ACCEPT; \
- then
- echo "VPN CyberGhost"
- else
- logger -p daemon.err "FW: error: VPN CyberGhost"
- fi
- ###########################################################################
- echo -e "\nAlle Packete des lokalen Netzes muessen maskiert werden."
- ###########################################################################
- echo 1 >/proc/sys/net/ipv4/ip_forward
- #
- iptables -t nat -A POSTROUTING -o "$DSLIF" -j MASQUERADE
- #
- ###########################################################################
- # Um zu testen ob man ueberhaupt rauskommt
- ###########################################################################
- #iptables -I INPUT 1 -s 0.0.0.0/0 -d 0.0.0.0/0 -j ACCEPT
- #iptables -I OUTPUT 1 -s 0.0.0.0/0 -d 0.0.0.0/0 -j ACCEPT
- ###########################################################################
- echo -e "\nProtokollierung von unbestimmten Paketen."
- ###########################################################################
- iptables -A dsl-in -s 0.0.0.0/0 -m limit --limit 3/s -j LOG --log-level info --log-prefix "DSLIN: "
- iptables -A dsl-out -s 0.0.0.0/0 -m limit --limit 3/s -j LOG --log-level info --log-prefix "DSLOUT: "
- iptables -A ext-fw -s 0.0.0.0/0 -m limit --limit 3/s -j LOG --log-level info --log-prefix "EXTFW: "
- iptables -A int-fw -s 0.0.0.0/0 -m limit --limit 3/s -j LOG --log-level info --log-prefix "INTFW: "
- iptables -A int-in -s 0.0.0.0/0 -m limit --limit 3/s -j LOG --log-level info --log-prefix "INTIN: "
- iptables -A int-out -s 0.0.0.0/0 -m limit --limit 3/s -j LOG --log-level info --log-prefix "INTOUT: "
- iptables -A int-int-fw -s 0.0.0.0/0 -m limit --limit 3/s -j LOG --log-level info --log-prefix "INTINTFW: "
- iptables -A INPUT -s 0.0.0.0/0 -m limit --limit 3/s -j LOG --log-level info --log-prefix "INPUT: "
- iptables -A OUTPUT -s 0.0.0.0/0 -m limit --limit 3/s -j LOG --log-level info --log-prefix "OUTPUT: "
- iptables -A FORWARD -s 0.0.0.0/0 -m limit --limit 3/s -j LOG --log-level info --log-prefix "FORWARD: "
- iptables -A INPUT -s 0.0.0.0/0 -j DROP
- iptables -A OUTPUT -s 0.0.0.0/0 -j DROP
- iptables -A FORWARD -s 0.0.0.0/0 -j DROP
- iptables -A dsl-in -s 0.0.0.0/0 -j DROP
- iptables -A dsl-out -s 0.0.0.0/0 -j DROP
- iptables -A ext-fw -s 0.0.0.0/0 -j DROP
- iptables -A int-fw -s 0.0.0.0/0 -j DROP
- iptables -A int-in -s 0.0.0.0/0 -j DROP
- iptables -A int-out -s 0.0.0.0/0 -j DROP
- iptables -A int-int-fw -s 0.0.0.0/0 -j DROP
- }
- #################################################################################
- # Ausgabe des Scriptes beim starten mit veschiedenen Parametern.
- #################################################################################
- case "$1" in
- start)
- logger -p daemon.info "FW(START): We are going to start the Firewall at DSLIF <$2>, LANIF <$3>."
- startefirewall $1 $2 $3
- ;;
- stop)
- logger -p daemon.info "FW(STOP): We are going to STOP the Firewall at DSLIF <$2>, LANIF and <$3> (Local)."
- stoppefirewall
- ;;
- *)
- logger -p daemon.info "FW: Benutze $0 {start|stop} <DSLIF> <LANIF>."
- ;;
- esac
- exit 0
Quellcode
Hier kannst du den Code kopieren und ihn in deinen bevorzugten Editor einfügen. PASTEBIN_DOWNLOAD_SNIPPET_EXPLAIN