mrdozer

Hozzászólások

10 bejegyzés megtekintése - 41-50 / 79
  • Szerző
    Bejegyzés
  • Hozzászólás: UHU linux alatt port forwarding #2140634
    mrdozer
    Felhasználó
      dotmind wrote:
      bocsi, –log-prefix, nem –log_prefix

      Megcsináltam a dumpot de a fájlból nem sokat értek…
      A logolás megy. Legközelebb hétfőn este leszek. Akkor végignézem a a logot.

      Hozzászólás: UHU linux alatt port forwarding #2140635
      mrdozer
      Felhasználó
        dotmind wrote:
        bocsi, –log-prefix, nem –log_prefix

        Megcsináltam a dumpot de a fájlból nem sokat értek…
        A logolás megy. Legközelebb hétfőn este leszek. Akkor végignézem a a logot.

        Hozzászólás: UHU linux alatt port forwarding #2140628
        mrdozer
        Felhasználó
          dotmind wrote:
          Szerintem megerett az ido arra, hogy elkezd logozni a csomagogat, es kb 5 perc alatt rajojj, hogy mi a baj…
          a scripted vegere:

          iptables -A INPUT -j LOG –log_prefix ” INPUT”
          iptables -A FORWARD -j LOG –log_prefix ” FORWARD”
          iptables -A OUTPUT -j LOG –log_prefix ” OUTPUT”

          ez ha minden igaz, akkor a syslogba fogja dokumentalni azokat a csomagokat, amikre nem illeszkedik egy szabaly sem. (tehat csak akkor kerul bele, ha nem fogadod/dobod el elotte)

          masik nagyon hasznos eszkoz a tcpdump. bovebb info a manban.

          Ok. Igazad van most akkor logozom kicsit!

          Nekem a log prefixre hibát dob ki, nincs ilyen argumetrum de kiszedtem gondolom igy is jó csak nehezebb megtalálni…

          A dumpot is elinditottam

          Hozzászólás: UHU linux alatt port forwarding #2140629
          mrdozer
          Felhasználó
            dotmind wrote:
            Szerintem megerett az ido arra, hogy elkezd logozni a csomagogat, es kb 5 perc alatt rajojj, hogy mi a baj…
            a scripted vegere:

            iptables -A INPUT -j LOG –log_prefix ” INPUT”
            iptables -A FORWARD -j LOG –log_prefix ” FORWARD”
            iptables -A OUTPUT -j LOG –log_prefix ” OUTPUT”

            ez ha minden igaz, akkor a syslogba fogja dokumentalni azokat a csomagokat, amikre nem illeszkedik egy szabaly sem. (tehat csak akkor kerul bele, ha nem fogadod/dobod el elotte)

            masik nagyon hasznos eszkoz a tcpdump. bovebb info a manban.

            Ok. Igazad van most akkor logozom kicsit!

            Nekem a log prefixre hibát dob ki, nincs ilyen argumetrum de kiszedtem gondolom igy is jó csak nehezebb megtalálni…

            A dumpot is elinditottam

            Hozzászólás: UHU linux alatt port forwarding #2140626
            mrdozer
            Felhasználó
              lada2105 wrote:
              Biztos kell ez a sok egyéb, ti biztos jobban tudjátok, de nálam kb ennyivel megy

              nahh persze a modulok, ha nem megy valami, szükségesek, de nálam így tök jól müködik minden.
              Jó, persze nem a legbiztonságosabb, de legalább nem kell minden egyes programnál keresni a portokat amin kifelé kommunikál, hogy engedélyezze az ember…

              Kibróbálom aztán meglátjuk mi lesz!

              huh.gif nem müxik…

              Hozzászólás: UHU linux alatt port forwarding #2140627
              mrdozer
              Felhasználó
                lada2105 wrote:
                Biztos kell ez a sok egyéb, ti biztos jobban tudjátok, de nálam kb ennyivel megy

                nahh persze a modulok, ha nem megy valami, szükségesek, de nálam így tök jól müködik minden.
                Jó, persze nem a legbiztonságosabb, de legalább nem kell minden egyes programnál keresni a portokat amin kifelé kommunikál, hogy engedélyezze az ember…

                Kibróbálom aztán meglátjuk mi lesz!

                huh.gif nem müxik…

                Hozzászólás: UHU linux alatt port forwarding #2140620
                mrdozer
                Felhasználó

                  Egyik barátomtól kaptam, de ez sem müxik, pedig nagyon korrekt…
                  .. másik gépen tuti jó.l bevanlőve az apache a weboldal csak a belső hálón a saját ipjével látszik : 192.168.0.200
                  pedig a külső hálókártya ipjével is kéne: 213.257.215.90:2080
                  de semmi. (A külső ip cím itt is fiktiv csupán a példa kedvéért!!!!)

                  A script:
                  [SHADOW=red,left]

                  #!/bin/sh

                  # Firewall script for the Linux 2.4 kernel
                  # copyright 2002 Timothy Scott Morizot

                  ###############################################################################
                  #
                  # Local Settings
                  #

                  # sysctl location. If set, it will use sysctl to adjust the kernel parameters.
                  # If this is set to the empty string (or is unset), the use of sysctl
                  # is disabled.

                  SYSCTL=”/sbin/sysctl -w”

                  # To echo the value directly to the /proc file instead
                  # SYSCTL=””

                  # IPTables Location – adjust if needed

                  IPT=”/usr/sbin/iptables”
                  IPTS=”/usr/sbin/iptables-save”
                  IPTR=”/usr/sbin/iptables-restore”

                  # Internet Interface
                  INET_IFACE=”eth1″

                  # Local Interface Information
                  LOCAL_IFACE=”eth0″
                  LOCAL_IP=”192.168.0.1″
                  LOCAL_NET=”192.168.0.0/24″
                  LOCAL_BCAST=”192.168.0.255″

                  # Localhost Interface

                  LO_IFACE=”lo”
                  LO_IP=”127.0.0.1″

                  # Save and Restore arguments handled here
                  if [ „$1” = „save” ]
                  then
                  echo -n „Saving firewall to /etc/sysconfig/iptables … „
                  $IPTS > /etc/sysconfig/iptables
                  echo „done”
                  exit 0
                  elif [ „$1” = „restore” ]
                  then
                  echo -n „Restoring firewall from /etc/sysconfig/iptables … „
                  $IPTR /proc/sys/net/ipv4/ip_forward
                  else
                  $SYSCTL net.ipv4.ip_forward=”1″
                  fi

                  # This enables dynamic address hacking.
                  # This may help if you have a dynamic IP address (e.g. slip, ppp, dhcp).
                  #if [ „$SYSCTL” = „” ]
                  #then
                  # echo „1” > /proc/sys/net/ipv4/ip_dynaddr
                  #else
                  # $SYSCTL net.ipv4.ip_dynaddr=”1″
                  #fi

                  # This enables SYN flood protection.
                  # The SYN cookies activation allows your system to accept an unlimited
                  # number of TCP connections while still trying to give reasonable
                  # service during a denial of service attack.
                  if [ „$SYSCTL” = „” ]
                  then
                  echo „1” > /proc/sys/net/ipv4/tcp_syncookies
                  else
                  $SYSCTL net.ipv4.tcp_syncookies=”1″
                  fi

                  # Turn it off if you use multiple NICs connected to the same network.
                  if [ „$SYSCTL” = „” ]
                  then
                  echo „1” > /proc/sys/net/ipv4/conf/all/rp_filter
                  else
                  $SYSCTL net.ipv4.conf.all.rp_filter=”1″
                  fi

                  #if [ „$SYSCTL” = „” ]
                  #then
                  # echo „1” > /proc/sys/net/ipv4/conf/all/proxy_arp
                  #else
                  # $SYSCTL net.ipv4.conf.all.proxy_arp=”1″
                  #fi

                  # The following kernel settings were suggested by Alex Weeks. Thanks!

                  # This kernel parameter instructs the kernel to ignore all ICMP
                  # echo requests sent to the broadcast address. This prevents
                  # a number of smurfs and similar DoS nasty attacks.
                  if [ „$SYSCTL” = „” ]
                  then
                  echo „1” > /proc/sys/net/ipv4/icmp_echo_ignore_broadcasts
                  else
                  $SYSCTL net.ipv4.icmp_echo_ignore_broadcasts=”1″
                  fi

                  # This option can be used to accept or refuse source routed
                  # packets. It is usually on by default, but is generally
                  # considered a security risk. This option turns it off.
                  if [ „$SYSCTL” = „” ]
                  then
                  echo „0” > /proc/sys/net/ipv4/conf/all/accept_source_route
                  else
                  $SYSCTL net.ipv4.conf.all.accept_source_route=”0″
                  fi

                  # This option can disable ICMP redirects. ICMP redirects
                  # are generally considered a security risk and shouldn’t be
                  # needed by most systems using this generator.
                  #if [ „$SYSCTL” = „” ]
                  #then
                  # echo „0” > /proc/sys/net/ipv4/conf/all/accept_redirects
                  #else
                  # $SYSCTL net.ipv4.conf.all.accept_redirects=”0″
                  #fi

                  # However, we’ll ensure the secure_redirects option is on instead.
                  # This option accepts only from gateways in the default gateways list.
                  if [ „$SYSCTL” = „” ]
                  then
                  echo „1” > /proc/sys/net/ipv4/conf/all/secure_redirects
                  else
                  $SYSCTL net.ipv4.conf.all.secure_redirects=”1″
                  fi

                  # This option logs packets from impossible addresses.
                  if [ „$SYSCTL” = „” ]
                  then
                  echo „1” > /proc/sys/net/ipv4/conf/all/log_martians
                  else
                  $SYSCTL net.ipv4.conf.all.log_martians=”1″
                  fi

                  ###############################################################################
                  #
                  # Flush Any Existing Rules or Chains
                  #

                  echo „Flushing Tables …”

                  # Reset Default Policies
                  $IPT -P INPUT ACCEPT
                  $IPT -P FORWARD ACCEPT
                  $IPT -P OUTPUT ACCEPT
                  $IPT -t nat -P PREROUTING ACCEPT
                  $IPT -t nat -P POSTROUTING ACCEPT
                  $IPT -t nat -P OUTPUT ACCEPT
                  $IPT -t mangle -P PREROUTING ACCEPT
                  $IPT -t mangle -P OUTPUT ACCEPT

                  # Flush all rules
                  $IPT -F
                  $IPT -t nat -F
                  $IPT -t mangle -F

                  # Erase all non-default chains
                  $IPT -X
                  $IPT -t nat -X
                  $IPT -t mangle -X

                  if [ „$1” = „stop” ]
                  then
                  echo „Firewall completely flushed! Now running with no firewall.”
                  exit 0
                  fi

                  ###############################################################################
                  #
                  # Rules Configuration
                  #

                  ###############################################################################
                  #
                  # Filter Table
                  #
                  ###############################################################################

                  # Set Policies

                  $IPT -P INPUT DROP
                  $IPT -P OUTPUT DROP
                  $IPT -P FORWARD DROP

                  ###############################################################################
                  #
                  # User-Specified Chains
                  #
                  # Create user chains to reduce the number of rules each packet
                  # must traverse.

                  echo „Create and populate custom rule chains …”

                  # Create a chain to filter INVALID packets

                  $IPT -N bad_packets

                  # Create another chain to filter bad tcp packets

                  $IPT -N bad_tcp_packets

                  # Create separate chains for icmp, tcp (incoming and outgoing),
                  # and incoming udp packets.

                  $IPT -N icmp_packets

                  # Used for UDP packets inbound from the Internet
                  $IPT -N udp_inbound

                  # Used to block outbound UDP services from internal network
                  # Default to allow all
                  $IPT -N udp_outbound

                  # Used to allow inbound services if desired
                  # Default fail except for established sessions
                  $IPT -N tcp_inbound

                  # Used to block outbound services from internal network
                  # Default to allow all
                  $IPT -N tcp_outbound

                  ###############################################################################
                  #
                  # Populate User Chains
                  #

                  # bad_packets chain
                  #

                  # Drop packets received on the external interface
                  # claiming a source of the local network
                  $IPT -A bad_packets -p ALL -i $INET_IFACE -s $LOCAL_NET -j LOG
                  –log-prefix „Illegal source: „

                  $IPT -A bad_packets -p ALL -i $INET_IFACE -s $LOCAL_NET -j DROP

                  # Drop INVALID packets immediately
                  $IPT -A bad_packets -p ALL -m state –state INVALID -j LOG
                  –log-prefix „Invalid packet: „

                  $IPT -A bad_packets -p ALL -m state –state INVALID -j DROP

                  # Then check the tcp packets for additional problems
                  $IPT -A bad_packets -p tcp -j bad_tcp_packets

                  # All good, so return
                  $IPT -A bad_packets -p ALL -j RETURN

                  # bad_tcp_packets chain
                  #

                  $IPT -A bad_tcp_packets -p tcp -i $LOCAL_IFACE -j RETURN

                  # $IPT -A bad_tcp_packets -p tcp -i $LOCAL_IFACE ! –syn -m state
                  #  –state NEW -j DROP

                  $IPT -A bad_tcp_packets -p tcp ! –syn -m state –state NEW -j LOG
                  –log-prefix „New not syn: „
                  $IPT -A bad_tcp_packets -p tcp ! –syn -m state –state NEW -j DROP

                  $IPT -A bad_tcp_packets -p tcp –tcp-flags ALL NONE -j LOG
                  –log-prefix „Stealth scan: „
                  $IPT -A bad_tcp_packets -p tcp –tcp-flags ALL NONE -j DROP

                  $IPT -A bad_tcp_packets -p tcp –tcp-flags ALL ALL -j LOG
                  –log-prefix „Stealth scan: „
                  $IPT -A bad_tcp_packets -p tcp –tcp-flags ALL ALL -j DROP

                  $IPT -A bad_tcp_packets -p tcp –tcp-flags ALL FIN,URG,PSH -j LOG
                  –log-prefix „Stealth scan: „
                  $IPT -A bad_tcp_packets -p tcp –tcp-flags ALL FIN,URG,PSH -j DROP

                  $IPT -A bad_tcp_packets -p tcp –tcp-flags ALL SYN,RST,ACK,FIN,URG -j LOG
                  –log-prefix „Stealth scan: „
                  $IPT -A bad_tcp_packets -p tcp –tcp-flags ALL SYN,RST,ACK,FIN,URG -j DROP

                  $IPT -A bad_tcp_packets -p tcp –tcp-flags SYN,RST SYN,RST -j LOG
                  –log-prefix „Stealth scan: „
                  $IPT -A bad_tcp_packets -p tcp –tcp-flags SYN,RST SYN,RST -j DROP

                  $IPT -A bad_tcp_packets -p tcp –tcp-flags SYN,FIN SYN,FIN -j LOG
                  –log-prefix „Stealth scan: „
                  $IPT -A bad_tcp_packets -p tcp –tcp-flags SYN,FIN SYN,FIN -j DROP

                  # All good, so return
                  $IPT -A bad_tcp_packets -p tcp -j RETURN

                  # icmp_packets chain
                  #

                  # ICMP packets should fit in a Layer 2 frame, thus they should
                  # never be fragmented. Fragmented ICMP packets are a typical sign
                  # of a denial of service attack.
                  $IPT -A icmp_packets –fragment -p ICMP -j LOG
                  –log-prefix „ICMP Fragment: „
                  $IPT -A icmp_packets –fragment -p ICMP -j DROP

                  # Echo – uncomment to allow your system to be pinged.
                  # Uncomment the LOG command if you also want to log PING attempts
                  #
                  # $IPT -A icmp_packets -p ICMP -s 0/0 –icmp-type 8 -j LOG
                  # –log-prefix „Ping detected: „
                  # $IPT -A icmp_packets -p ICMP -s 0/0 –icmp-type 8 -j ACCEPT

                  $IPT -A icmp_packets -p ICMP -s 0/0 –icmp-type 8 -j DROP

                  # Time Exceeded
                  $IPT -A icmp_packets -p ICMP -s 0/0 –icmp-type 11 -j ACCEPT

                  # Not matched, so return so it will be logged
                  $IPT -A icmp_packets -p ICMP -j RETURN

                  # TCP & UDP
                  # Identify ports at:
                  # http://www.chebucto.ns.ca/~rakerman/port-table.html
                  # http://www.iana.org/assignments/port-numbers

                  # udp_inbound chain
                  #

                  $IPT -A udp_inbound -p UDP -s 0/0 –destination-port 137 -j DROP
                  $IPT -A udp_inbound -p UDP -s 0/0 –destination-port 138 -j DROP

                  # DNS Server

                  $IPT -A udp_inbound -p UDP -s 0/0 –destination-port 53 -j ACCEPT

                  $IPT -A udp_inbound -p UDP -s 0/0 –source-port 67 –destination-port 68
                  -j ACCEPT

                  # User specified allowed UDP protocol
                  $IPT -A udp_inbound -p UDP -s 0/0 –destination-port 6666:7000 -j ACCEPT

                  # Not matched, so return for logging
                  $IPT -A udp_inbound -p UDP -j RETURN

                  # No match, so ACCEPT
                  $IPT -A udp_outbound -p UDP -s 0/0 -j ACCEPT

                  # Web Server

                  # HTTP
                  $IPT -A tcp_inbound -p TCP -s 0/0 –destination-port 80 -j ACCEPT

                  # FTP Server (Control)
                  $IPT -A tcp_inbound -p TCP -s 0/0 –destination-port 21 -j ACCEPT

                  # FTP Client (Data Port for non-PASV transfers)
                  $IPT -A tcp_inbound -p TCP -s 0/0 –source-port 20 -j ACCEPT

                  # Passive FTP

                  $IPT -A tcp_inbound -p TCP -s 0/0 –destination-port 62000:64000 -j ACCEPT

                  # sshd
                  $IPT -A tcp_inbound -p TCP -s 0/0 –destination-port 22 -j ACCEPT

                  # MSN Messenger File Transfers
                  #

                  $IPT -A tcp_inbound -p TCP -s 0/0 –destination-port 6891:6900 -j ACCEPT

                  # User specified allowed UDP protocol
                  $IPT -A tcp_inbound -p TCP -s 0/0 –destination-port 6666:7000 -j ACCEPT

                  # Not matched, so return so it will be logged
                  $IPT -A tcp_inbound -p TCP -j RETURN

                  # No match, so ACCEPT
                  $IPT -A tcp_outbound -p TCP -s 0/0 -j ACCEPT

                  ###############################################################################
                  #
                  # INPUT Chain
                  #

                  echo „Process INPUT chain …”

                  # Allow all on localhost interface
                  $IPT -A INPUT -p ALL -i $LO_IFACE -j ACCEPT

                  # Drop bad packets
                  $IPT -A INPUT -p ALL -j bad_packets

                  $IPT -A INPUT -p ALL -d 224.0.0.1 -j DROP
                  # The rule to accept the packets.
                  # $IPT -A INPUT -p ALL -d 224.0.0.1 -j ACCEPT

                  # Rules for the private network (accessing gateway system itself)
                  $IPT -A INPUT -p ALL -i $LOCAL_IFACE -s $LOCAL_NET -j ACCEPT
                  $IPT -A INPUT -p ALL -i $LOCAL_IFACE -d $LOCAL_BCAST -j ACCEPT

                  # Inbound Internet Packet Rules

                  # Accept Established Connections
                  $IPT -A INPUT -p ALL -i $INET_IFACE -m state –state ESTABLISHED,RELATED
                  -j ACCEPT

                  # Route the rest to the appropriate user chain
                  $IPT -A INPUT -p TCP -i $INET_IFACE -j tcp_inbound
                  $IPT -A INPUT -p UDP -i $INET_IFACE -j udp_inbound
                  $IPT -A INPUT -p ICMP -i $INET_IFACE -j icmp_packets

                  # broadcast protocols.
                  $IPT -A INPUT -m pkttype –pkt-type broadcast -j DROP

                  # Log packets that still don’t match
                  $IPT -A INPUT -m limit –limit 3/minute –limit-burst 3 -j LOG
                  –log-prefix „INPUT packet died: „

                  ###############################################################################
                  #
                  # FORWARD Chain
                  #

                  echo „Process FORWARD chain …”

                  # Used if forwarding for a private network

                  # Drop bad packets
                  $IPT -A FORWARD -p ALL -j bad_packets

                  # Accept TCP packets we want to forward from internal sources
                  $IPT -A FORWARD -p tcp -i $LOCAL_IFACE -j tcp_outbound

                  # Accept UDP packets we want to forward from internal sources
                  $IPT -A FORWARD -p udp -i $LOCAL_IFACE -j udp_outbound

                  # If not blocked, accept any other packets from the internal interface
                  $IPT -A FORWARD -p ALL -i $LOCAL_IFACE -j ACCEPT

                  # Deal with responses from the internet
                  $IPT -A FORWARD -i $INET_IFACE -m state –state ESTABLISHED,RELATED
                  -j ACCEPT

                  # Port Forwarding is enabled, so accept forwarded traffic
                  $IPT -A FORWARD -p tcp -i $INET_IFACE –destination-port 80
                  –destination 192.168.0.200 -j ACCEPT

                  # Log packets that still don’t match
                  $IPT -A FORWARD -m limit –limit 3/minute –limit-burst 3 -j LOG
                  –log-prefix „FORWARD packet died: „

                  ###############################################################################
                  #
                  # OUTPUT Chain
                  #

                  echo „Process OUTPUT chain …”

                  # Generally trust the firewall on output

                  # However, invalid icmp packets need to be dropped
                  # to prevent a possible exploit.
                  $IPT -A OUTPUT -m state -p icmp –state INVALID -j DROP

                  # Localhost
                  $IPT -A OUTPUT -p ALL -s $LO_IP -j ACCEPT
                  $IPT -A OUTPUT -p ALL -o $LO_IFACE -j ACCEPT

                  # To internal network
                  $IPT -A OUTPUT -p ALL -s $LOCAL_IP -j ACCEPT
                  $IPT -A OUTPUT -p ALL -o $LOCAL_IFACE -j ACCEPT

                  # To internet
                  $IPT -A OUTPUT -p ALL -o $INET_IFACE -j ACCEPT

                  # Log packets that still don’t match
                  $IPT -A OUTPUT -m limit –limit 3/minute –limit-burst 3 -j LOG
                  –log-prefix „OUTPUT packet died: „

                  ###############################################################################
                  #
                  # nat table
                  #
                  ###############################################################################

                  echo „Load rules for nat table …”

                  ###############################################################################
                  #
                  # PREROUTING chain
                  #

                  # Port Forwarding
                  #

                  $IPT -t nat -A PREROUTING -p tcp -i $INET_IFACE –destination-port 2080
                  -j DNAT –to-destination 192.168.0.200:80

                  ###############################################################################
                  #
                  # POSTROUTING chain
                  #

                  $IPT -t nat -A POSTROUTING -o $INET_IFACE -j MASQUERADE

                  ###############################################################################

                  echo „Load rules for mangle table …”

                  [/SHADOW]

                  Hozzászólás: UHU linux alatt port forwarding #2140621
                  mrdozer
                  Felhasználó

                    Egyik barátomtól kaptam, de ez sem müxik, pedig nagyon korrekt…
                    .. másik gépen tuti jó.l bevanlőve az apache a weboldal csak a belső hálón a saját ipjével látszik : 192.168.0.200
                    pedig a külső hálókártya ipjével is kéne: 213.257.215.90:2080
                    de semmi. (A külső ip cím itt is fiktiv csupán a példa kedvéért!!!!)

                    A script:
                    [SHADOW=red,left]

                    #!/bin/sh

                    # Firewall script for the Linux 2.4 kernel
                    # copyright 2002 Timothy Scott Morizot

                    ###############################################################################
                    #
                    # Local Settings
                    #

                    # sysctl location. If set, it will use sysctl to adjust the kernel parameters.
                    # If this is set to the empty string (or is unset), the use of sysctl
                    # is disabled.

                    SYSCTL=”/sbin/sysctl -w”

                    # To echo the value directly to the /proc file instead
                    # SYSCTL=””

                    # IPTables Location – adjust if needed

                    IPT=”/usr/sbin/iptables”
                    IPTS=”/usr/sbin/iptables-save”
                    IPTR=”/usr/sbin/iptables-restore”

                    # Internet Interface
                    INET_IFACE=”eth1″

                    # Local Interface Information
                    LOCAL_IFACE=”eth0″
                    LOCAL_IP=”192.168.0.1″
                    LOCAL_NET=”192.168.0.0/24″
                    LOCAL_BCAST=”192.168.0.255″

                    # Localhost Interface

                    LO_IFACE=”lo”
                    LO_IP=”127.0.0.1″

                    # Save and Restore arguments handled here
                    if [ „$1” = „save” ]
                    then
                    echo -n „Saving firewall to /etc/sysconfig/iptables … „
                    $IPTS > /etc/sysconfig/iptables
                    echo „done”
                    exit 0
                    elif [ „$1” = „restore” ]
                    then
                    echo -n „Restoring firewall from /etc/sysconfig/iptables … „
                    $IPTR /proc/sys/net/ipv4/ip_forward
                    else
                    $SYSCTL net.ipv4.ip_forward=”1″
                    fi

                    # This enables dynamic address hacking.
                    # This may help if you have a dynamic IP address (e.g. slip, ppp, dhcp).
                    #if [ „$SYSCTL” = „” ]
                    #then
                    # echo „1” > /proc/sys/net/ipv4/ip_dynaddr
                    #else
                    # $SYSCTL net.ipv4.ip_dynaddr=”1″
                    #fi

                    # This enables SYN flood protection.
                    # The SYN cookies activation allows your system to accept an unlimited
                    # number of TCP connections while still trying to give reasonable
                    # service during a denial of service attack.
                    if [ „$SYSCTL” = „” ]
                    then
                    echo „1” > /proc/sys/net/ipv4/tcp_syncookies
                    else
                    $SYSCTL net.ipv4.tcp_syncookies=”1″
                    fi

                    # Turn it off if you use multiple NICs connected to the same network.
                    if [ „$SYSCTL” = „” ]
                    then
                    echo „1” > /proc/sys/net/ipv4/conf/all/rp_filter
                    else
                    $SYSCTL net.ipv4.conf.all.rp_filter=”1″
                    fi

                    #if [ „$SYSCTL” = „” ]
                    #then
                    # echo „1” > /proc/sys/net/ipv4/conf/all/proxy_arp
                    #else
                    # $SYSCTL net.ipv4.conf.all.proxy_arp=”1″
                    #fi

                    # The following kernel settings were suggested by Alex Weeks. Thanks!

                    # This kernel parameter instructs the kernel to ignore all ICMP
                    # echo requests sent to the broadcast address. This prevents
                    # a number of smurfs and similar DoS nasty attacks.
                    if [ „$SYSCTL” = „” ]
                    then
                    echo „1” > /proc/sys/net/ipv4/icmp_echo_ignore_broadcasts
                    else
                    $SYSCTL net.ipv4.icmp_echo_ignore_broadcasts=”1″
                    fi

                    # This option can be used to accept or refuse source routed
                    # packets. It is usually on by default, but is generally
                    # considered a security risk. This option turns it off.
                    if [ „$SYSCTL” = „” ]
                    then
                    echo „0” > /proc/sys/net/ipv4/conf/all/accept_source_route
                    else
                    $SYSCTL net.ipv4.conf.all.accept_source_route=”0″
                    fi

                    # This option can disable ICMP redirects. ICMP redirects
                    # are generally considered a security risk and shouldn’t be
                    # needed by most systems using this generator.
                    #if [ „$SYSCTL” = „” ]
                    #then
                    # echo „0” > /proc/sys/net/ipv4/conf/all/accept_redirects
                    #else
                    # $SYSCTL net.ipv4.conf.all.accept_redirects=”0″
                    #fi

                    # However, we’ll ensure the secure_redirects option is on instead.
                    # This option accepts only from gateways in the default gateways list.
                    if [ „$SYSCTL” = „” ]
                    then
                    echo „1” > /proc/sys/net/ipv4/conf/all/secure_redirects
                    else
                    $SYSCTL net.ipv4.conf.all.secure_redirects=”1″
                    fi

                    # This option logs packets from impossible addresses.
                    if [ „$SYSCTL” = „” ]
                    then
                    echo „1” > /proc/sys/net/ipv4/conf/all/log_martians
                    else
                    $SYSCTL net.ipv4.conf.all.log_martians=”1″
                    fi

                    ###############################################################################
                    #
                    # Flush Any Existing Rules or Chains
                    #

                    echo „Flushing Tables …”

                    # Reset Default Policies
                    $IPT -P INPUT ACCEPT
                    $IPT -P FORWARD ACCEPT
                    $IPT -P OUTPUT ACCEPT
                    $IPT -t nat -P PREROUTING ACCEPT
                    $IPT -t nat -P POSTROUTING ACCEPT
                    $IPT -t nat -P OUTPUT ACCEPT
                    $IPT -t mangle -P PREROUTING ACCEPT
                    $IPT -t mangle -P OUTPUT ACCEPT

                    # Flush all rules
                    $IPT -F
                    $IPT -t nat -F
                    $IPT -t mangle -F

                    # Erase all non-default chains
                    $IPT -X
                    $IPT -t nat -X
                    $IPT -t mangle -X

                    if [ „$1” = „stop” ]
                    then
                    echo „Firewall completely flushed! Now running with no firewall.”
                    exit 0
                    fi

                    ###############################################################################
                    #
                    # Rules Configuration
                    #

                    ###############################################################################
                    #
                    # Filter Table
                    #
                    ###############################################################################

                    # Set Policies

                    $IPT -P INPUT DROP
                    $IPT -P OUTPUT DROP
                    $IPT -P FORWARD DROP

                    ###############################################################################
                    #
                    # User-Specified Chains
                    #
                    # Create user chains to reduce the number of rules each packet
                    # must traverse.

                    echo „Create and populate custom rule chains …”

                    # Create a chain to filter INVALID packets

                    $IPT -N bad_packets

                    # Create another chain to filter bad tcp packets

                    $IPT -N bad_tcp_packets

                    # Create separate chains for icmp, tcp (incoming and outgoing),
                    # and incoming udp packets.

                    $IPT -N icmp_packets

                    # Used for UDP packets inbound from the Internet
                    $IPT -N udp_inbound

                    # Used to block outbound UDP services from internal network
                    # Default to allow all
                    $IPT -N udp_outbound

                    # Used to allow inbound services if desired
                    # Default fail except for established sessions
                    $IPT -N tcp_inbound

                    # Used to block outbound services from internal network
                    # Default to allow all
                    $IPT -N tcp_outbound

                    ###############################################################################
                    #
                    # Populate User Chains
                    #

                    # bad_packets chain
                    #

                    # Drop packets received on the external interface
                    # claiming a source of the local network
                    $IPT -A bad_packets -p ALL -i $INET_IFACE -s $LOCAL_NET -j LOG
                    –log-prefix „Illegal source: „

                    $IPT -A bad_packets -p ALL -i $INET_IFACE -s $LOCAL_NET -j DROP

                    # Drop INVALID packets immediately
                    $IPT -A bad_packets -p ALL -m state –state INVALID -j LOG
                    –log-prefix „Invalid packet: „

                    $IPT -A bad_packets -p ALL -m state –state INVALID -j DROP

                    # Then check the tcp packets for additional problems
                    $IPT -A bad_packets -p tcp -j bad_tcp_packets

                    # All good, so return
                    $IPT -A bad_packets -p ALL -j RETURN

                    # bad_tcp_packets chain
                    #

                    $IPT -A bad_tcp_packets -p tcp -i $LOCAL_IFACE -j RETURN

                    # $IPT -A bad_tcp_packets -p tcp -i $LOCAL_IFACE ! –syn -m state
                    #  –state NEW -j DROP

                    $IPT -A bad_tcp_packets -p tcp ! –syn -m state –state NEW -j LOG
                    –log-prefix „New not syn: „
                    $IPT -A bad_tcp_packets -p tcp ! –syn -m state –state NEW -j DROP

                    $IPT -A bad_tcp_packets -p tcp –tcp-flags ALL NONE -j LOG
                    –log-prefix „Stealth scan: „
                    $IPT -A bad_tcp_packets -p tcp –tcp-flags ALL NONE -j DROP

                    $IPT -A bad_tcp_packets -p tcp –tcp-flags ALL ALL -j LOG
                    –log-prefix „Stealth scan: „
                    $IPT -A bad_tcp_packets -p tcp –tcp-flags ALL ALL -j DROP

                    $IPT -A bad_tcp_packets -p tcp –tcp-flags ALL FIN,URG,PSH -j LOG
                    –log-prefix „Stealth scan: „
                    $IPT -A bad_tcp_packets -p tcp –tcp-flags ALL FIN,URG,PSH -j DROP

                    $IPT -A bad_tcp_packets -p tcp –tcp-flags ALL SYN,RST,ACK,FIN,URG -j LOG
                    –log-prefix „Stealth scan: „
                    $IPT -A bad_tcp_packets -p tcp –tcp-flags ALL SYN,RST,ACK,FIN,URG -j DROP

                    $IPT -A bad_tcp_packets -p tcp –tcp-flags SYN,RST SYN,RST -j LOG
                    –log-prefix „Stealth scan: „
                    $IPT -A bad_tcp_packets -p tcp –tcp-flags SYN,RST SYN,RST -j DROP

                    $IPT -A bad_tcp_packets -p tcp –tcp-flags SYN,FIN SYN,FIN -j LOG
                    –log-prefix „Stealth scan: „
                    $IPT -A bad_tcp_packets -p tcp –tcp-flags SYN,FIN SYN,FIN -j DROP

                    # All good, so return
                    $IPT -A bad_tcp_packets -p tcp -j RETURN

                    # icmp_packets chain
                    #

                    # ICMP packets should fit in a Layer 2 frame, thus they should
                    # never be fragmented. Fragmented ICMP packets are a typical sign
                    # of a denial of service attack.
                    $IPT -A icmp_packets –fragment -p ICMP -j LOG
                    –log-prefix „ICMP Fragment: „
                    $IPT -A icmp_packets –fragment -p ICMP -j DROP

                    # Echo – uncomment to allow your system to be pinged.
                    # Uncomment the LOG command if you also want to log PING attempts
                    #
                    # $IPT -A icmp_packets -p ICMP -s 0/0 –icmp-type 8 -j LOG
                    # –log-prefix „Ping detected: „
                    # $IPT -A icmp_packets -p ICMP -s 0/0 –icmp-type 8 -j ACCEPT

                    $IPT -A icmp_packets -p ICMP -s 0/0 –icmp-type 8 -j DROP

                    # Time Exceeded
                    $IPT -A icmp_packets -p ICMP -s 0/0 –icmp-type 11 -j ACCEPT

                    # Not matched, so return so it will be logged
                    $IPT -A icmp_packets -p ICMP -j RETURN

                    # TCP & UDP
                    # Identify ports at:
                    # http://www.chebucto.ns.ca/~rakerman/port-table.html
                    # http://www.iana.org/assignments/port-numbers

                    # udp_inbound chain
                    #

                    $IPT -A udp_inbound -p UDP -s 0/0 –destination-port 137 -j DROP
                    $IPT -A udp_inbound -p UDP -s 0/0 –destination-port 138 -j DROP

                    # DNS Server

                    $IPT -A udp_inbound -p UDP -s 0/0 –destination-port 53 -j ACCEPT

                    $IPT -A udp_inbound -p UDP -s 0/0 –source-port 67 –destination-port 68
                    -j ACCEPT

                    # User specified allowed UDP protocol
                    $IPT -A udp_inbound -p UDP -s 0/0 –destination-port 6666:7000 -j ACCEPT

                    # Not matched, so return for logging
                    $IPT -A udp_inbound -p UDP -j RETURN

                    # No match, so ACCEPT
                    $IPT -A udp_outbound -p UDP -s 0/0 -j ACCEPT

                    # Web Server

                    # HTTP
                    $IPT -A tcp_inbound -p TCP -s 0/0 –destination-port 80 -j ACCEPT

                    # FTP Server (Control)
                    $IPT -A tcp_inbound -p TCP -s 0/0 –destination-port 21 -j ACCEPT

                    # FTP Client (Data Port for non-PASV transfers)
                    $IPT -A tcp_inbound -p TCP -s 0/0 –source-port 20 -j ACCEPT

                    # Passive FTP

                    $IPT -A tcp_inbound -p TCP -s 0/0 –destination-port 62000:64000 -j ACCEPT

                    # sshd
                    $IPT -A tcp_inbound -p TCP -s 0/0 –destination-port 22 -j ACCEPT

                    # MSN Messenger File Transfers
                    #

                    $IPT -A tcp_inbound -p TCP -s 0/0 –destination-port 6891:6900 -j ACCEPT

                    # User specified allowed UDP protocol
                    $IPT -A tcp_inbound -p TCP -s 0/0 –destination-port 6666:7000 -j ACCEPT

                    # Not matched, so return so it will be logged
                    $IPT -A tcp_inbound -p TCP -j RETURN

                    # No match, so ACCEPT
                    $IPT -A tcp_outbound -p TCP -s 0/0 -j ACCEPT

                    ###############################################################################
                    #
                    # INPUT Chain
                    #

                    echo „Process INPUT chain …”

                    # Allow all on localhost interface
                    $IPT -A INPUT -p ALL -i $LO_IFACE -j ACCEPT

                    # Drop bad packets
                    $IPT -A INPUT -p ALL -j bad_packets

                    $IPT -A INPUT -p ALL -d 224.0.0.1 -j DROP
                    # The rule to accept the packets.
                    # $IPT -A INPUT -p ALL -d 224.0.0.1 -j ACCEPT

                    # Rules for the private network (accessing gateway system itself)
                    $IPT -A INPUT -p ALL -i $LOCAL_IFACE -s $LOCAL_NET -j ACCEPT
                    $IPT -A INPUT -p ALL -i $LOCAL_IFACE -d $LOCAL_BCAST -j ACCEPT

                    # Inbound Internet Packet Rules

                    # Accept Established Connections
                    $IPT -A INPUT -p ALL -i $INET_IFACE -m state –state ESTABLISHED,RELATED
                    -j ACCEPT

                    # Route the rest to the appropriate user chain
                    $IPT -A INPUT -p TCP -i $INET_IFACE -j tcp_inbound
                    $IPT -A INPUT -p UDP -i $INET_IFACE -j udp_inbound
                    $IPT -A INPUT -p ICMP -i $INET_IFACE -j icmp_packets

                    # broadcast protocols.
                    $IPT -A INPUT -m pkttype –pkt-type broadcast -j DROP

                    # Log packets that still don’t match
                    $IPT -A INPUT -m limit –limit 3/minute –limit-burst 3 -j LOG
                    –log-prefix „INPUT packet died: „

                    ###############################################################################
                    #
                    # FORWARD Chain
                    #

                    echo „Process FORWARD chain …”

                    # Used if forwarding for a private network

                    # Drop bad packets
                    $IPT -A FORWARD -p ALL -j bad_packets

                    # Accept TCP packets we want to forward from internal sources
                    $IPT -A FORWARD -p tcp -i $LOCAL_IFACE -j tcp_outbound

                    # Accept UDP packets we want to forward from internal sources
                    $IPT -A FORWARD -p udp -i $LOCAL_IFACE -j udp_outbound

                    # If not blocked, accept any other packets from the internal interface
                    $IPT -A FORWARD -p ALL -i $LOCAL_IFACE -j ACCEPT

                    # Deal with responses from the internet
                    $IPT -A FORWARD -i $INET_IFACE -m state –state ESTABLISHED,RELATED
                    -j ACCEPT

                    # Port Forwarding is enabled, so accept forwarded traffic
                    $IPT -A FORWARD -p tcp -i $INET_IFACE –destination-port 80
                    –destination 192.168.0.200 -j ACCEPT

                    # Log packets that still don’t match
                    $IPT -A FORWARD -m limit –limit 3/minute –limit-burst 3 -j LOG
                    –log-prefix „FORWARD packet died: „

                    ###############################################################################
                    #
                    # OUTPUT Chain
                    #

                    echo „Process OUTPUT chain …”

                    # Generally trust the firewall on output

                    # However, invalid icmp packets need to be dropped
                    # to prevent a possible exploit.
                    $IPT -A OUTPUT -m state -p icmp –state INVALID -j DROP

                    # Localhost
                    $IPT -A OUTPUT -p ALL -s $LO_IP -j ACCEPT
                    $IPT -A OUTPUT -p ALL -o $LO_IFACE -j ACCEPT

                    # To internal network
                    $IPT -A OUTPUT -p ALL -s $LOCAL_IP -j ACCEPT
                    $IPT -A OUTPUT -p ALL -o $LOCAL_IFACE -j ACCEPT

                    # To internet
                    $IPT -A OUTPUT -p ALL -o $INET_IFACE -j ACCEPT

                    # Log packets that still don’t match
                    $IPT -A OUTPUT -m limit –limit 3/minute –limit-burst 3 -j LOG
                    –log-prefix „OUTPUT packet died: „

                    ###############################################################################
                    #
                    # nat table
                    #
                    ###############################################################################

                    echo „Load rules for nat table …”

                    ###############################################################################
                    #
                    # PREROUTING chain
                    #

                    # Port Forwarding
                    #

                    $IPT -t nat -A PREROUTING -p tcp -i $INET_IFACE –destination-port 2080
                    -j DNAT –to-destination 192.168.0.200:80

                    ###############################################################################
                    #
                    # POSTROUTING chain
                    #

                    $IPT -t nat -A POSTROUTING -o $INET_IFACE -j MASQUERADE

                    ###############################################################################

                    echo „Load rules for mangle table …”

                    [/SHADOW]

                    Hozzászólás: UHU linux alatt port forwarding #2140618
                    mrdozer
                    Felhasználó

                      OK…

                      Nem tudtam belőni eddig, a script amúgy jó csakhogy valamiért szerintem az egyik utasítás felülírja a másikat, és ezért nem irányitja át a portot.

                      Ha bárkinek van valami ötlete ha csak sejtés is irja meg mert hátha segít!
                      wink.gif

                      Most elolvasok még két doksit és írok előlről egy új scriptet hátha...cry.gif

                      De ha valakinek van esetleg működő port forwardingos hasonló rendszere akkor kérem segítsen.

                      Akinek pedi netmegosztás kell szolgáltatásokkla annak itt ez a jó kis script! grin.gif
                      Az a része működik csak ez a hülye port forwarding nem!
                      huh.gif

                      Hozzászólás: UHU linux alatt port forwarding #2140619
                      mrdozer
                      Felhasználó

                        OK…

                        Nem tudtam belőni eddig, a script amúgy jó csakhogy valamiért szerintem az egyik utasítás felülírja a másikat, és ezért nem irányitja át a portot.

                        Ha bárkinek van valami ötlete ha csak sejtés is irja meg mert hátha segít!
                        wink.gif

                        Most elolvasok még két doksit és írok előlről egy új scriptet hátha...cry.gif

                        De ha valakinek van esetleg működő port forwardingos hasonló rendszere akkor kérem segítsen.

                        Akinek pedi netmegosztás kell szolgáltatásokkla annak itt ez a jó kis script! grin.gif
                        Az a része működik csak ez a hülye port forwarding nem!
                        huh.gif

                      10 bejegyzés megtekintése - 41-50 / 79