Warning: Function ereg() is deprecated in ..../includes/class_postbit.php(345) : eval()'d code on line 4

Warning: Function split() is deprecated in ..../includes/class_postbit.php(345) : eval()'d code on line 19

Warning: Function ereg() is deprecated in ..../includes/class_postbit.php(345) : eval()'d code on line 4

Warning: Function split() is deprecated in ..../includes/class_postbit.php(345) : eval()'d code on line 19

Warning: Function ereg() is deprecated in ..../includes/class_postbit.php(345) : eval()'d code on line 4

Warning: Function split() is deprecated in ..../includes/class_postbit.php(345) : eval()'d code on line 19

Warning: Function ereg() is deprecated in ..../includes/class_postbit.php(345) : eval()'d code on line 4

Warning: Function split() is deprecated in ..../includes/class_postbit.php(345) : eval()'d code on line 19

Warning: Function ereg() is deprecated in ..../includes/class_postbit.php(345) : eval()'d code on line 4

Warning: Function split() is deprecated in ..../includes/class_postbit.php(345) : eval()'d code on line 19

Warning: Function ereg() is deprecated in ..../includes/class_postbit.php(345) : eval()'d code on line 4

Warning: Function split() is deprecated in ..../includes/class_postbit.php(345) : eval()'d code on line 19

Warning: Function ereg() is deprecated in ..../includes/class_postbit.php(345) : eval()'d code on line 4

Warning: Function split() is deprecated in ..../includes/class_postbit.php(345) : eval()'d code on line 19

Warning: Function ereg() is deprecated in ..../includes/class_postbit.php(345) : eval()'d code on line 4

Warning: Function split() is deprecated in ..../includes/class_postbit.php(345) : eval()'d code on line 19

Warning: Function ereg() is deprecated in ..../includes/class_postbit.php(345) : eval()'d code on line 4

Warning: Function split() is deprecated in ..../includes/class_postbit.php(345) : eval()'d code on line 19

Warning: Function ereg() is deprecated in ..../includes/class_postbit.php(345) : eval()'d code on line 4

Warning: Function split() is deprecated in ..../includes/class_postbit.php(345) : eval()'d code on line 19
Opening ports
Results 1 to 10 of 10

Thread: Opening ports

  1. #1
    Associate
    Join Date
    Sep 2003
    Posts
    25

    Opening ports

    Hi, I'm using this firewall script and I'm wondering how do I open ports with this one?

    #!/bin/sh
    #
    # rc.firewall-2.4
    FWVER=0.75
    #
    # Initial SIMPLE IP Masquerade test for 2.4.x kernels
    # using IPTABLES.
    #
    # Once IP Masquerading has been tested, with this simple
    # ruleset, it is highly recommended to use a stronger
    # IPTABLES ruleset either given later in this HOWTO or
    # from another reputable resource.
    #
    #
    #
    # Log:
    # 0.75 - Added more kernel modules to the comments section
    # 0.74 - the ruleset now uses modprobe vs. insmod
    # 0.73 - REJECT is not a legal policy yet; back to DROP
    # 0.72 - Changed the default block behavior to REJECT not DROP
    # 0.71 - Added clarification that PPPoE users need to use
    # "ppp0" instead of "eth0" for their external interface
    # 0.70 - Added commented option for IRC nat module
    # - Added additional use of environment variables
    # - Added additional formatting
    # 0.63 - Added support for the IRC IPTABLES module
    # 0.62 - Fixed a typo on the MASQ enable line that used eth0
    # instead of $EXTIF
    # 0.61 - Changed the firewall to use variables for the internal
    # and external interfaces.
    # 0.60 - 0.50 had a mistake where the ruleset had a rule to DROP
    # all forwarded packets but it didn't have a rule to ACCEPT
    # any packets to be forwarded either
    # - Load the ip_nat_ftp and ip_conntrack_ftp modules by default
    # 0.50 - Initial draft
    #

    echo -e "\n\nLoading simple rc.firewall version $FWVER..\n"


    # The location of the iptables and kernel module programs
    #
    # If your Linux distribution came with a copy of iptables,
    # most likely all the programs will be located in /sbin. If
    # you manually compiled iptables, the default location will
    # be in /usr/local/sbin
    #
    # ** Please use the "whereis iptables" command to figure out
    # ** where your copy is and change the path below to reflect
    # ** your setup
    #
    IPTABLES=/sbin/iptables
    #IPTABLES=/usr/local/sbin/iptables
    DEPMOD=/sbin/depmod
    MODPROBE=/sbin/modprobe


    #Setting the EXTERNAL and INTERNAL interfaces for the network
    #
    # Each IP Masquerade network needs to have at least one
    # external and one internal network. The external network
    # is where the natting will occur and the internal network
    # should preferably be addressed with a RFC1918 private address
    # scheme.
    #
    # For this example, "eth0" is external and "eth1" is internal"
    #
    #
    # NOTE: If this doesnt EXACTLY fit your configuration, you must
    # change the EXTIF or INTIF variables above. For example:
    #
    # If you are a PPPoE or analog modem user:
    #
    # EXTIF="ppp0"
    #
    #
    EXTIF="eth0"
    INTIF="eth1"
    echo " External Interface: $EXTIF"
    echo " Internal Interface: $INTIF"


    #================================================= =====================
    #== No editing beyond this line is required for initial MASQ testing ==


    echo -en " loading modules: "

    # Need to verify that all modules have all required dependencies
    #
    echo " - Verifying that all kernel modules are ok"
    $DEPMOD -a

    # With the new IPTABLES code, the core MASQ functionality is now either
    # modular or compiled into the kernel. This HOWTO shows ALL IPTABLES
    # options as MODULES. If your kernel is compiled correctly, there is
    # NO need to load the kernel modules manually.
    #
    # NOTE: The following items are listed ONLY for informational reasons.
    # There is no reason to manual load these modules unless your
    # kernel is either mis-configured or you intentionally disabled
    # the kernel module autoloader.
    #

    # Upon the commands of starting up IP Masq on the server, the
    # following kernel modules will be automatically loaded:
    #
    # NOTE: Only load the IP MASQ modules you need. All current IP MASQ
    # modules are shown below but are commented out from loading.
    # ================================================== =============

    echo "----------------------------------------------------------------------"

    #Load the main body of the IPTABLES module - "iptable"
    # - Loaded automatically when the "iptables" command is invoked
    #
    # - Loaded manually to clean up kernel auto-loading timing issues
    #
    echo -en "ip_tables, "
    $MODPROBE ip_tables


    #Load the IPTABLES filtering module - "iptable_filter"
    # - Loaded automatically when filter policies are activated


    #Load the stateful connection tracking framework - "ip_conntrack"
    #
    # The conntrack module in itself does nothing without other specific
    # conntrack modules being loaded afterwards such as the "ip_conntrack_ftp"
    # module
    #
    # - This module is loaded automatically when MASQ functionality is
    # enabled
    #
    # - Loaded manually to clean up kernel auto-loading timing issues
    #
    echo -en "ip_conntrack, "
    $MODPROBE ip_conntrack


    #Load the FTP tracking mechanism for full FTP tracking
    #
    # Enabled by default -- insert a "#" on the next line to deactivate
    #
    echo -en "ip_conntrack_ftp, "
    $MODPROBE ip_conntrack_ftp


    #Load the IRC tracking mechanism for full IRC tracking
    #
    # Enabled by default -- insert a "#" on the next line to deactivate
    #
    echo -en "ip_conntrack_irc, "
    $MODPROBE ip_conntrack_irc


    #Load the general IPTABLES NAT code - "iptable_nat"
    # - Loaded automatically when MASQ functionality is turned on
    #
    # - Loaded manually to clean up kernel auto-loading timing issues
    #
    echo -en "iptable_nat, "
    $MODPROBE iptable_nat


    #Loads the FTP NAT functionality into the core IPTABLES code
    # Required to support non-PASV FTP.
    #
    # Enabled by default -- insert a "#" on the next line to deactivate
    #
    echo -en "ip_nat_ftp, "
    $MODPROBE ip_nat_ftp


    #Loads the IRC NAT functionality into the core IPTABLES code
    # Required to support NAT of IRC DCC requests
    #
    # Disabled by default -- remove the "#" on the next line to activate
    #
    #echo -e "ip_nat_irc"
    #$MODPROBE ip_nat_irc

    echo "----------------------------------------------------------------------"

    # Just to be complete, here is a partial list of some of the other
    # IPTABLES kernel modules and their function. Please note that most
    # of these modules (the ipt ones) are automatically loaded by the
    # master kernel module for proper operation and don't need to be
    # manually loaded.
    # --------------------------------------------------------------------
    #
    # ip_nat_snmp_basic - this module allows for proper NATing of some
    # SNMP traffic
    #
    # iptable_mangle - this target allows for packets to be
    # manipulated for things like the TCPMSS
    # option, etc.
    #
    # --
    #
    # ipt_mark - this target marks a given packet for future action.
    # This automatically loads the ipt_MARK module
    #
    # ipt_tcpmss - this target allows to manipulate the TCP MSS
    # option for braindead remote firewalls.
    # This automatically loads the ipt_TCPMSS module
    #
    # ipt_limit - this target allows for packets to be limited to
    # to many hits per sec/min/hr
    #
    # ipt_multiport - this match allows for targets within a range
    # of port numbers vs. listing each port individually
    #
    # ipt_state - this match allows to catch packets with various
    # IP and TCP flags set/unset
    #
    # ipt_unclean - this match allows to catch packets that have invalid
    # IP/TCP flags set
    #
    # iptable_filter - this module allows for packets to be DROPped,
    # REJECTed, or LOGged. This module automatically
    # loads the following modules:
    #
    # ipt_LOG - this target allows for packets to be
    # logged
    #
    # ipt_REJECT - this target DROPs the packet and returns
    # a configurable ICMP packet back to the
    # sender.
    #

    echo -e " Done loading modules.\n"



    #CRITICAL: Enable IP forwarding since it is disabled by default since
    #
    # Redhat Users: you may try changing the options in
    # /etc/sysconfig/network from:
    #
    # FORWARD_IPV4=false
    # to
    # FORWARD_IPV4=true
    #
    echo " Enabling forwarding.."
    echo "1" > /proc/sys/net/ipv4/ip_forward


    # Dynamic IP users:
    #
    # If you get your IP address dynamically from SLIP, PPP, or DHCP,
    # enable this following option. This enables dynamic-address hacking
    # which makes the life with Diald and similar programs much easier.
    #
    echo " Enabling DynamicAddr.."
    echo "1" > /proc/sys/net/ipv4/ip_dynaddr


    # Enable simple IP forwarding and Masquerading
    #
    # NOTE: In IPTABLES speak, IP Masquerading is a form of SourceNAT or SNAT.
    #
    # NOTE #2: The following is an example for an internal LAN address in the
    # 192.168.0.x network with a 255.255.255.0 or a "24" bit subnet mask
    # connecting to the Internet on external interface "eth0". This
    # example will MASQ internal traffic out to the Internet but not
    # allow non-initiated traffic into your internal network.
    #
    #
    # ** Please change the above network numbers, subnet mask, and your
    # *** Internet connection interface name to match your setup
    #


    #Clearing any previous configuration
    #
    # Unless specified, the defaults for INPUT and OUTPUT is ACCEPT
    # The default for FORWARD is DROP (REJECT is not a valid policy)
    #
    echo " Clearing any existing rules and setting default policy.."
    $IPTABLES -P INPUT ACCEPT
    $IPTABLES -F INPUT
    $IPTABLES -P OUTPUT ACCEPT
    $IPTABLES -F OUTPUT
    $IPTABLES -P FORWARD DROP
    $IPTABLES -F FORWARD
    $IPTABLES -t nat -F

    echo " FWD: Allow all connections OUT and only existing and related ones IN"
    $IPTABLES -A FORWARD -i $EXTIF -o $INTIF -m state --state ESTABLISHED,RELATED -j ACCEPT
    $IPTABLES -A FORWARD -i $INTIF -o $EXTIF -j ACCEPT
    $IPTABLES -A FORWARD -j LOG

    echo " Enabling SNAT (MASQUERADE) functionality on $EXTIF"
    $IPTABLES -t nat -A POSTROUTING -o $EXTIF -j MASQUERADE



    echo -e "\nDone.\n"

  2. #2

    Re:Opening ports

    All ports are already open it looks like.

  3. #3
    Associate
    Join Date
    Sep 2003
    Posts
    25

    Re:Opening ports

    nope, a portscan showed only 2-3 tcp port where open the rest are closed

  4. #4

    Re:Opening ports

    Because they are closed, but not by the firewall :P.

    Gernally a firewall'd port will show as filtered.

    What do you want to open? Just run a program on that port and it should work, that firewall isn't blocking anything. If you are having issues another thing to check would be your ISP, and if you have a router.

  5. #5
    Associate
    Join Date
    Sep 2003
    Posts
    25

    Re:Opening ports

    Ok so I found this other script which seemed to better fit my needs but the problem is that it doesn't seem to open the ports I try to open. whats wrong here?

    #!/bin/sh

    EXTIF="eth0"
    INTIF="eth1"
    echo "1" > /proc/sys/net/ipv4/ip_forward
    echo "1" > /proc/sys/net/ipv4/ip_dynaddr

    # set chain policy, and flush
    iptables -P INPUT DROP
    iptables -F INPUT
    iptables -P OUTPUT ACCEPT
    iptables -F OUTPUT
    iptables -P FORWARD DROP
    iptables -F FORWARD
    iptables -t nat -F

    # allow local-only connections
    iptables -A INPUT -i lo -j ACCEPT

    # Permit established connections
    iptables -A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT

    # open ports on eth0
    iptables -A INPUT -i $EXTIF -p tcp --dport 80 -j ACCEPT
    iptables -A INPUT -i $EXTIF -p tcp --dport 25 -j ACCEPT

    # open ports on eth1
    iptables -A INPUT -i $INTIF -p tcp --dport 110 -j ACCEPT
    iptables -A INPUT -i $INTIF -p tcp --dport 22 -j ACCEPT

    # Masquerade
    iptables -A FORWARD -i $EXTIF -o $INTIF -m state --state ESTABLISHED,RELATED -j ACCEPT
    iptables -A FORWARD -i $INTIF -o $EXTIF -j ACCEPT
    iptables -t nat -A POSTROUTING -o $EXTIF -j MASQUERADE

    # Everything else -> /dev/null
    iptables -A INPUT -i $EXTIF -p tcp -j DROP
    # Remove this line if you trust your internal LAN
    iptables -A INPUT -i $INTIF -p tcp -j DROP

  6. #6

    Re:Opening ports

    I think what Gorn means is that a firewall won't open a port. It would block a port that is already open, if configured for that. But even if you have no firewall, if there is no application using the port, the port won't be open.

    For example, let's take port 80. Even if my firewall does not block port 80, if I don't have a web server running (using port 80) then the port will appear closed, even though my firewall is not blocking it.

  7. #7
    Associate
    Join Date
    Sep 2003
    Posts
    25

    Re:Opening ports

    yeah but with the script above I get all my ports reported as filtered with a portscan. And even to i configured it to accept traffic on port 80 I can't seem to connect to my webserver..

  8. #8

    Re:Opening ports

    Does it reports the same when the iptables script is not run?

  9. #9
    Associate
    Join Date
    Sep 2003
    Posts
    25

    Re:Opening ports

    Ok I got it working with my webserver on the gateway only problem now is that I want to be able to use DC and Bittorrent in active mode. How do I forward ports to multiple ip's?

  10. #10

    Re:Opening ports

    Just a theory here (it's been years since I've touched iptables). What happens when you move


    # Everything else -> /dev/null
    iptables -A INPUT -i $EXTIF -p tcp -j DROP
    # Remove this line if you trust your internal LAN
    iptables -A INPUT -i $INTIF -p tcp -j DROP


    to be after the line

    iptables -t nat -F

    ...just a thought.

Similar Threads

  1. slow opening
    By nichos in forum Windows - General Topics
    Replies: 1
    Last Post: 08-21-2005, 05:39 PM
  2. Opening Folders
    By Waka-Gashira in forum Windows - General Topics
    Replies: 15
    Last Post: 01-02-2005, 04:45 AM
  3. Job opening
    By creedon in forum General Chat
    Replies: 2
    Last Post: 11-15-2002, 03:00 PM
  4. opening tty's
    By Bartman in forum Linux - General Topics
    Replies: 3
    Last Post: 07-20-2002, 05:55 PM
  5. Opening firewall for ftp
    By kenshi in forum Security
    Replies: 11
    Last Post: 12-22-2001, 02:20 PM

Bookmarks

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •