Platon Technologies
neprihlásený Prihlásiť Registrácia
SlovakEnglish
open source software development oslavujeme 10 rokov vývoja otvoreného softvéru! Piatok, 19. apríl 2024

Rozdiely pre scripts/shell/firewall/fw-universal.sh medzi verziami 2.15 a 2.19

verzia 2.15, 2005/01/16 12:13:32 verzia 2.19, 2005/03/01 23:17:11
Riadok 9 
Riadok 9 
 # Licensed under terms of GNU General Public License.  # Licensed under terms of GNU General Public License.
 # All rights reserved.  # All rights reserved.
 #  #
 # $Platon: scripts/shell/firewall/fw-universal.sh,v 2.14 2005/01/16 11:06:46 rajo Exp $  # $Platon: scripts/shell/firewall/fw-universal.sh,v 2.18 2005/03/01 21:47:20 rajo Exp $
 #  #
 # Changelog:  # Changelog:
 # 2003-10-24 - created  # 2003-10-24 - created
Riadok 48  AWK="${AWK:=/usr/bin/awk}"
Riadok 48  AWK="${AWK:=/usr/bin/awk}"
 LO_IFACE="${LO_IFACE:=lo}"  LO_IFACE="${LO_IFACE:=lo}"
 LO_IP="IP_$LO_IFACE"  LO_IP="IP_$LO_IFACE"
   
   #
   # CONSTANTS - Do not edit
   #
   ANYWHERE="0.0.0.0/0"                            # Match any IP address
   BROADCAST_SRC="0.0.0.0"                         # Broadcast Source Address
   BROADCAST_DEST="255.255.255.255"        # Broadcast Destination Address
   CLASS_A="10.0.0.0/8"                            # Class-A Private (RFC-1918) Networks
   CLASS_B="172.16.0.0/12"                         # Class-B Private (RFC-1918) Networks
   CLASS_C="192.168.0.0/16"                        # Class-C Private (RFC-1918) Networks
   CLASS_D_MULTICAST="224.0.0.0/4"         # Class-D Multicast Addresses
   CLASS_E_RESERVED_NET="240.0.0.0/5"      # Class-E Reserved Addresses
   PRIVPORTS="0:1023"                                      # Well-Known, Privileged Port Range
   UNPRIVPORTS="1024:65535"                        # Unprivileged Port Range
   TRACEROUTE_SRC_PORTS="32769:65535"      # Traceroute Source Ports
   TRACEROUTE_DEST_PORTS="33434:33523"     # Traceroute Destination Ports
   
   
 # allow some ICMP packets - needed for ping etc.  # allow some ICMP packets - needed for ping etc.
 ACCEPT_ICMP_PACKETS="${ACCEPT_ICMP_PACKETS:=echo-reply destination-unreachable echo-request time-exceeded}"  ACCEPT_ICMP_PACKETS="${ACCEPT_ICMP_PACKETS:=echo-reply destination-unreachable echo-request time-exceeded}"
   
   
 # load necessary modules from $MODULES variable  # load necessary modules from $MODULES variable
 load_modules()  load_modules()
 { # {{{  { # {{{
Riadok 107  remove_chains()
Riadok 125  remove_chains()
         for table in filter nat mangle; do          for table in filter nat mangle; do
                 $IPTABLES -t $table -F # clear all chains                  $IPTABLES -t $table -F # clear all chains
                 $IPTABLES -t $table -X # remove all chains                  $IPTABLES -t $table -X # remove all chains
                   $IPTABLES -t $table -Z # zero counts
         done          done
   
 } # }}}  } # }}}
Riadok 266  masquerade()
Riadok 285  masquerade()
   
                 # alow packets from private subnet                  # alow packets from private subnet
                 $IPTABLES -A FORWARD -s ! $localnet -i $NAT_SUBNET_IFACE -j DROP                  $IPTABLES -A FORWARD -s ! $localnet -i $NAT_SUBNET_IFACE -j DROP
                   for client_ip in $NAT_CLIENT_DROP; do
                           echo -en " !$client_ip";
                           $IPTABLES -A FORWARD -s $client_ip -i $NAT_SUBNET_IFACE -j DROP
                   done
   
                 for redirect in $NAT_TCP_PORT_REDIRECT; do                  for redirect in $NAT_TCP_PORT_REDIRECT; do
                         eval `echo $redirect | awk -v FS=: '{ printf "remote_port=%s; local_port=%s;", $1, $2; }'`                          eval `echo $redirect | awk -v FS=: '{ printf "remote_port=%s; local_port=%s;", $1, $2; }'`
Riadok 318  masquerade()
Riadok 341  masquerade()
                 #$IPTABLES -A FORWARD -p ICMP -j LOG --log-prefix "FWD ICMP: "                  #$IPTABLES -A FORWARD -p ICMP -j LOG --log-prefix "FWD ICMP: "
                 echo " done."                  echo " done."
   
                   # Port forwarding to local machines
                   if [ ! -z "$NAT_TCP_PORT_FORWARD" ]; then
                           echo -en "\tForwarding ports to local machines:"
                           for redirect in $NAT_TCP_PORT_FORWARD; do
                                   eval `echo $redirect | awk -v FS=: '{ printf "src_port=%s; local_machine=%s; dest_port=%s;", $1, $2, $3; }'`
                                   echo -en " $src_port -> $local_machine:$dest_port"
                                   $IPTABLES -t nat -A PREROUTING -p TCP -i $NAT_LAN_IFACE -d ${!lan_ip} \
                                   --dport $src_port -j DNAT --to $local_machine:$dest_port
                                   $IPTABLES -A FORWARD -p TCP -i eth0 -d $local_machine --dport $dest_port -j ACCEPT
                           done
                           echo " done."
                   fi
   
                 # Keep state of connections from private subnets                  # Keep state of connections from private subnets
                 $IPTABLES -A OUTPUT  -m state --state NEW -o $NAT_LAN_IFACE -j ACCEPT                  $IPTABLES -A OUTPUT  -m state --state NEW -o $NAT_LAN_IFACE -j ACCEPT
                 #$IPTABLES -A FORWARD -m state --state NEW -o $NAT_LAN_IFACE -j ACCEPT                  #$IPTABLES -A FORWARD -m state --state NEW -o $NAT_LAN_IFACE -j ACCEPT
Riadok 440  allow_input()
Riadok 476  allow_input()
                 fi                  fi
         done          done
   
           # Enable outgoing TRACEROUTE requests (required e.g. by Skype, http://www.skype.com)
           if [ ! -z "$TRACEROUTE_IFACE" ]; then
                   ip="IP_$ANTISPOOF_IFACE";
                   echo -en "Accepting traceroute:"
   
                   $IPTABLES -A OUTPUT -o $ANTISPOOF_IFACE -p UDP \
                           --sport $TRACEROUTE_SRC_PORTS --dport $TRACEROUTE_DEST_PORTS \
                           -s ${!ip} -d $ANYWHERE -j ACCEPT
   
                   for iface in $TRACEROUTE_IFACE; do
                           $IPTABLES -A FORWARD -p UDP -i $iface --sport $TRACEROUTE_SRC_PORTS \
                                   --dport $TRACEROUTE_DEST_PORTS -j ACCEPT
                   done
                   echo " done."
           fi
   
 } # }}}  } # }}}
   
 # ACCEPT all packets from our IP address  # ACCEPT all packets from our IP address

Legend:
Odstranené z verzie2.15  
zmenené riadky
  Pridané vo verzii2.19

Platon Group <platon@platon.sk> http://platon.sk/
Copyright © 2002-2006 Platon Group
Stránka používa redakčný systém Metafox
Na začiatok