• Recent
  • Unsolved
  • Tags
  • Popular
  • Users
  • Groups
  • Search
  • Register
  • Login
  • Recent
  • Unsolved
  • Tags
  • Popular
  • Users
  • Groups
  • Search
  • Register
  • Login

Firewall Config

Scheduled Pinned Locked Moved
General
5
10
11.9k
Loading More Posts
  • Oldest to Newest
  • Newest to Oldest
  • Most Votes
Reply
  • Reply as topic
Log in to reply
This topic has been deleted. Only users with topic management privileges can see it.
  • B
    BryceZ
    last edited by Dec 16, 2011, 3:41 PM

    [LIST=1]
    [*][CENTER][URL=‘https://sourceforge.net/users/brycez/’][SIZE=13px][COLOR=#555555]brycez[/COLOR][/SIZE][/URL]

    [URL=‘https://sourceforge.net/users/brycez’][SIZE=13px][COLOR=#0077aa][IMG]https://secure.gravatar.com/avatar/77846d7ed0f7675ee6553ce27c377080.png?s=48&r=pg&d=https%3A%2F%2Fa.fsdn.com%2Fsf%2Fimages%2Fdevelop%2Fsf-profile-blank.gif[/IMG][/COLOR][/SIZE][/URL][/CENTER]
    [RIGHT]2011-12-12 08:43:04 PST[/RIGHT]
    I’m currently getting ready to deploy some new storage nodes and our IT security team wants to confirm our firewall configs, which means justifying every open port. So it looks like I’m going to need to document every necessary port for FOG. I was wondering if somebody might already have something like this written down somewhere that I could take a look at, otherwise I’ll just have to go through and figure it out. I can see that being useful documentation to keep on the FOG wiki though, and I’ll be sure to share whatever I find.
    [*][CENTER][URL=‘https://sourceforge.net/users/blackout48/’][SIZE=13px][COLOR=#555555]blackout48[/COLOR][/SIZE][/URL]

    [URL=‘https://sourceforge.net/users/blackout48’][SIZE=13px][COLOR=#0077aa][IMG]https://secure.gravatar.com/avatar/2707a107d74393360d75969a887c914d.png?s=48&r=pg&d=https%3A%2F%2Fa.fsdn.com%2Fsf%2Fimages%2Fdevelop%2Fsf-profile-blank.gif[/IMG][/COLOR][/SIZE][/URL][/CENTER]
    [RIGHT]2011-12-12 13:11:07 PST[/RIGHT]
    Its not documented afaik, off the top of my head: FTP - 20 + 21 SSH - 22 Apache - 80 + 443 Portmap - 111 NFS - 2049 MySQL - 3306 UDP Send uses - 63100+ in FOG
    [*][CENTER][URL=‘https://sourceforge.net/users/brycez/’][SIZE=13px][COLOR=#555555]brycez[/COLOR][/SIZE][/URL]

    [URL=‘https://sourceforge.net/users/brycez’][SIZE=13px][COLOR=#0077aa][IMG]https://secure.gravatar.com/avatar/77846d7ed0f7675ee6553ce27c377080.png?s=48&r=pg&d=https%3A%2F%2Fa.fsdn.com%2Fsf%2Fimages%2Fdevelop%2Fsf-profile-blank.gif[/IMG][/COLOR][/SIZE][/URL][/CENTER]
    [RIGHT]2011-12-13 08:11:21 PST[/RIGHT]
    Thanks for the list Blackout! A few things to add: TFTP - 69 FOG by default doesn’t support HTTPS (though it is doable, it just took me a while and broke some things), so 443 isn’t required. If anyone notices anything else that’s missing, please go ahead and add it. And once I get the iptables config written up and confirmed I’ll go ahead and post it in the wiki, with a link to it from here.
    [*][CENTER][URL=‘https://sourceforge.net/users/blackout48/’][SIZE=13px][COLOR=#555555]blackout48[/COLOR][/SIZE][/URL]

    [URL=‘https://sourceforge.net/users/blackout48’][SIZE=13px][COLOR=#0077aa][IMG]https://secure.gravatar.com/avatar/2707a107d74393360d75969a887c914d.png?s=48&r=pg&d=https%3A%2F%2Fa.fsdn.com%2Fsf%2Fimages%2Fdevelop%2Fsf-profile-blank.gif[/IMG][/COLOR][/SIZE][/URL][/CENTER]
    [RIGHT]2011-12-13 16:16:38 PST[/RIGHT]
    Arhh yes, i forgot TFTP! 443 (HTTPS) will be added in 0.33 🙂 An iptables config would rock!
    [*][CENTER][URL=‘https://sourceforge.net/users/brycez/’][SIZE=13px][COLOR=#555555]brycez[/COLOR][/SIZE][/URL]

    [URL=‘https://sourceforge.net/users/brycez’][SIZE=13px][COLOR=#0077aa][IMG]https://secure.gravatar.com/avatar/77846d7ed0f7675ee6553ce27c377080.png?s=48&r=pg&d=https%3A%2F%2Fa.fsdn.com%2Fsf%2Fimages%2Fdevelop%2Fsf-profile-blank.gif[/IMG][/COLOR][/SIZE][/URL][/CENTER]
    [RIGHT]2011-12-14 06:32:38 PST[/RIGHT]
    Does that mean SSL will be supported by the FOG client service and the boot image?
    [*][CENTER][URL=‘https://sourceforge.net/users/brycez/’][SIZE=13px][COLOR=#555555]brycez[/COLOR][/SIZE][/URL]

    [URL=‘https://sourceforge.net/users/brycez’][SIZE=13px][COLOR=#0077aa][IMG]https://secure.gravatar.com/avatar/77846d7ed0f7675ee6553ce27c377080.png?s=48&r=pg&d=https%3A%2F%2Fa.fsdn.com%2Fsf%2Fimages%2Fdevelop%2Fsf-profile-blank.gif[/IMG][/COLOR][/SIZE][/URL][/CENTER]
    [RIGHT]2011-12-14 09:51:30 PST[/RIGHT]
    According to the UDPCast documentation, the default portbase is 9000+. Is there a reason why FOG uses a non-standard port for UDPCast?
    [/LIST]

    1 Reply Last reply Reply Quote 0
    • B
      BryceZ
      last edited by Dec 16, 2011, 3:43 PM

      I’ve thrown together an iptables config script that seems to work.

      [CODE]#!/bin/bash

      Flush old rules

      iptables -F

      Deny all incoming, allow all outgoing

      iptables -P INPUT DROP
      iptables -P FORWARD DROP
      iptables -P OUTPUT ACCEPT

      Exception for FTP

      iptables -A INPUT -p tcp --dport 20 -j ACCEPT
      iptables -A INPUT -p tcp --dport 21 -j ACCEPT

      Exception for SSH

      iptables -A INPUT -p tcp --dport 22 -j ACCEPT

      Exception for TFTP

      iptables -A INPUT -p udp --dport 69 -j ACCEPT

      Exception for HTTP(S)

      iptables -A INPUT -p tcp --dport 80 -j ACCEPT
      iptables -A INPUT -p tcp --dport 443 -j ACCEPT

      Exception for Portmap

      iptables -A INPUT -p tcp --dport 111 -j ACCEPT
      iptables -A INPUT -p udp --dport 111 -j ACCEPT

      Exception for NFS

      iptables -A INPUT -p tcp --dport 2049 -j ACCEPT
      iptables -A INPUT -p udp --dport 2049 -j ACCEPT

      Exception for transfer ports

      iptables -A INPUT -p tcp --dport 1024:65535 -j ACCEPT
      iptables -A INPUT -p udp --dport 1024:65535 -j ACCEPT

      List rules

      iptables -L[/CODE]

      If anyone wants to test this, or just ask questions, please go right ahead.

      1 Reply Last reply Reply Quote 0
      • B
        Blackout Developer
        last edited by Dec 17, 2011, 1:00 AM

        At minimum the Web UI will be SSL.

        1 Reply Last reply Reply Quote 0
        • C
          Chuck Syperski Developer
          last edited by Dec 17, 2011, 2:31 PM

          We used the non default port range so we could support a large number of concurrent multicasts (50+) without running into known used ports.

          1 Reply Last reply Reply Quote 0
          • S
            SomeOne
            last edited by Sep 19, 2012, 5:16 PM

            Hi
            I have been trying to find more information on these ports

            iptables -A INPUT -p tcp --dport 1024:65535 -j ACCEPT
            iptables -A INPUT -p udp --dport 1024:65535 -j ACCEPT

            Why such a huge range ?
            Is there a way to specify a smaller window ? I am not using UDPCast
            What component needs this range ?

            Thanks!

            1 Reply Last reply Reply Quote 0
            • B
              BryceZ
              last edited by Sep 19, 2012, 5:59 PM

              The port range could probably be scaled back, but I never got around to narrowing each range. From what I’ve come to understand (keep in mind that I’m not a network admin) most protocols have designated ports for establishing connections and then use random ports from the higher port range (generally 1024+) for the actual transfer. Some applications, such as UDPCast, allow you to specify the transfer port range, but that’s not always the case. So you probably don’t need the whole range but you’ll need some of it.

              1 Reply Last reply Reply Quote 0
              • S
                SomeOne
                last edited by Sep 19, 2012, 6:09 PM

                Thanks for the reply.

                So I would have to check iptables and tcpdump to see what protocol/service actually uses this and verify if ports can be specifically set.
                I will check it out and report any findings here.

                1 Reply Last reply Reply Quote 0
                • S
                  SomeOne
                  last edited by Sep 20, 2012, 3:05 PM

                  Hi,

                  Here is what works for me. I did a multipart all disk image, I would assume it works for the other types too. But I did have to configure NFS to run on specific ports.
                  I followed this
                  [url]http://bryanw.tk/2012/specify-nfs-ports-ubuntu-linux/[/url]

                  But I used the following… the -p one was not working for me
                  [CODE]RPCMOUNTDOPTS=“–manage-gids --port 4002”[/CODE]
                  instead of
                  [CODE]RPCMOUNTDOPTS=“–manage-gids -p 4002”[/CODE]

                  Here is my iptables script now. I run this script on the FOG server. So that is why i have this entry to allow localhost communication.
                  I can use the browser to connect to the FOG Web console via localhost
                  [CODE]
                  iptables -A INPUT -i lo -j ACCEPT
                  iptables -A OUTPUT -o lo -j ACCEPT
                  [/CODE]

                  I found port 2070-2073 and 1758-1759 here [url]http://www.symantec.com/business/support/index?page=content&id=HOWTO3401[/url]

                  i also added
                  [CODE]iptables -A INPUT -m conntrack --ctstate ESTABLISHED,RELATED -j ACCEPT[/CODE]

                  see here for details : [url]https://help.ubuntu.com/community/IptablesHowTo#Allowing_Established_Sessions[/url]

                  Hope it helps!

                  script:
                  [CODE]
                  #!/bin/bash

                  Flush old rules

                  iptables -F

                  Deny all incoming, allow all outgoing

                  iptables -P INPUT DROP
                  iptables -P FORWARD DROP
                  iptables -P OUTPUT ACCEPT

                  iptables -A INPUT -i lo -j ACCEPT
                  iptables -A OUTPUT -o lo -j ACCEPT

                  Exception for FTP

                  iptables -A INPUT -p tcp --dport 20 -j ACCEPT
                  iptables -A INPUT -p tcp --dport 21 -j ACCEPT

                  Exception for SSH

                  iptables -A INPUT -p tcp --dport 22 -j ACCEPT

                  Exception for TFTP and DHCP

                  iptables -A INPUT -p udp --dport 67 -j ACCEPT
                  iptables -A INPUT -p udp --dport 68 -j ACCEPT
                  iptables -A INPUT -p udp --dport 69 -j ACCEPT
                  iptables -A INPUT -p tcp --dport 67 -j ACCEPT
                  iptables -A INPUT -p tcp --dport 68 -j ACCEPT
                  iptables -A INPUT -p tcp --dport 69 -j ACCEPT

                  iptables -A INPUT -p udp --dport 4011 -j ACCEPT
                  iptables -A INPUT -p tcp --dport 4011 -j ACCEPT

                  iptables -A INPUT -p tcp --dport 2070:2073 -j ACCEPT
                  iptables -A INPUT -p udp --dport 2070:2073 -j ACCEPT

                  iptables -A INPUT -p tcp --dport 1758:1759 -j ACCEPT
                  iptables -A INPUT -p udp --dport 1758:1759 -j ACCEPT

                  Exception for HTTP(S)

                  iptables -A INPUT -p tcp --dport 80 -j ACCEPT
                  iptables -A INPUT -p tcp --dport 443 -j ACCEPT

                  Exception for Portmap

                  iptables -A INPUT -p tcp --dport 111 -j ACCEPT
                  iptables -A INPUT -p udp --dport 111 -j ACCEPT

                  Exception for NFS

                  iptables -A INPUT -p tcp --dport 2049 -j ACCEPT
                  iptables -A INPUT -p udp --dport 2049 -j ACCEPT

                  Exception for NFS-common

                  iptables -A INPUT -p tcp --dport 4000 -j ACCEPT
                  iptables -A INPUT -p udp --dport 4000 -j ACCEPT

                  Exception for NFS-lockd

                  iptables -A INPUT -p tcp --dport 4001 -j ACCEPT
                  iptables -A INPUT -p udp --dport 4001 -j ACCEPT

                  Exception for NFS-mountd

                  iptables -A INPUT -p tcp --dport 4002 -j ACCEPT
                  iptables -A INPUT -p udp --dport 4002 -j ACCEPT

                  Exception for transfer ports

                  #iptables -A INPUT -p tcp --dport 1024:65535 -j ACCEPT
                  #iptables -A INPUT -p udp --dport 1024:65535 -j ACCEPT

                  iptables -I INPUT 5 -m limit --limit 5/min -j LOG --log-prefix “iptables denied:” --log-level 7

                  iptables -A INPUT -m conntrack --ctstate ESTABLISHED,RELATED -j ACCEPT

                  List rules

                  iptables -L
                  [/CODE]

                  1 Reply Last reply Reply Quote 0
                  • B
                    BryceZ
                    last edited by Sep 20, 2012, 4:02 PM

                    Thanks SomeOne! I’ll give this a try once things settle down here at work.

                    1 Reply Last reply Reply Quote 0
                    • C
                      CARREIRA
                      last edited by Sep 17, 2013, 8:44 AM

                      Hi guys, i’ve got a little problem with my firewall rules.
                      I start my iptable configuration and my computer stop in TFTP. It doesn’t show me the fog boot menu
                      The ports TFTP are open so what’s my problem ?

                      [CODE]#!/bin/sh

                      BEGIN INIT INFO

                      Provides: PareFeu

                      Required-Start: $remote_fs $syslog

                      Required-Stop:

                      Default-Start: 2 3 4 5

                      Default-Stop: 0 1 6

                      Short-Description: Start daemon at boot time

                      Description: Enable service provided by daemon.

                      END INIT INFO

                      Vider les tables actuelles

                      iptables -t filter -F
                      iptables -t mangle -F
                      iptables -t nat -F

                      Vider les règles personnelles

                      iptables -t filter -X
                      iptables -t mangle -X
                      iptables -t nat -X

                      Interdire toute connexion entrante et sortante

                      iptables -t filter -P INPUT DROP
                      iptables -t filter -P FORWARD DROP
                      iptables -t filter -P OUTPUT DROP

                      Ne pas casser les connexions etablies

                      iptables -A INPUT -m state --state RELATED,ESTABLISHED -j ACCEPT
                      iptables -A OUTPUT -m state --state RELATED,ESTABLISHED -j ACCEPT

                      Autoriser loopback

                      iptables -t filter -A INPUT -i lo -j ACCEPT
                      iptables -t filter -A OUTPUT -o lo -j ACCEPT

                      ICMP (Ping)

                      iptables -t filter -A INPUT -p icmp -j ACCEPT
                      iptables -t filter -A OUTPUT -p icmp -j ACCEPT

                      SSH In

                      iptables -t filter -A INPUT -p tcp --dport 22 -j ACCEPT

                      SSH Out

                      iptables -t filter -A OUTPUT -p tcp --dport 22 -j ACCEPT

                      DNS In/Out

                      iptables -t filter -A OUTPUT -p tcp --dport 53 -j ACCEPT
                      iptables -t filter -A OUTPUT -p udp --dport 53 -j ACCEPT
                      iptables -t filter -A INPUT -p tcp --dport 53 -j ACCEPT
                      iptables -t filter -A INPUT -p udp --dport 53 -j ACCEPT

                      NTP Out

                      iptables -t filter -A OUTPUT -p udp --dport 123 -j ACCEPT

                      HTTP + HTTPS Out

                      iptables -t filter -A OUTPUT -p tcp --dport 80 -j ACCEPT
                      iptables -t filter -A OUTPUT -p tcp --dport 443 -j ACCEPT

                      HTTP + HTTPS In

                      iptables -t filter -A INPUT -p tcp --dport 80 -j ACCEPT
                      iptables -t filter -A INPUT -p tcp --dport 443 -j ACCEPT
                      iptables -t filter -A INPUT -p tcp --dport 8443 -j ACCEPT

                      FTP/TFTP Out

                      iptables -t filter -A OUTPUT -p tcp --dport 20:21 -j ACCEPT
                      iptables -t filter -A OUTPUT -p udp --dport 20:21 -j ACCEPT
                      iptables -t filter -A OUTPUT -p tcp --dport 67:68 -j ACCEPT
                      iptables -t filter -A OUTPUT -p udp --dport 67:68 -j ACCEPT

                      FTP/TFTP In

                      iptables -t filter -A INPUT -p tcp --dport 20:21 -j ACCEPT
                      iptables -t filter -A INPUT -p udp --dport 20:21 -j ACCEPT
                      iptables -t filter -A INPUT -p tcp --dport 67:69 -j ACCEPT
                      iptables -t filter -A INPUT -p udp --dport 67:69 -j ACCEPT

                      MySQL IN/OUT

                      iptables -t filter -A OUTPUT -p udp --port 3306 -j ACCEPT
                      iptables -t filter -A INPUT -p udp --port 3306 -j ACCEPT

                      #NFS IN/OUT
                      iptables -t filter -A OUTPUT -p udp --dport 2049 -j ACCEPT
                      iptables -t filter -A INPUT -p tcp --dport 2049 -j ACCEPT

                      iptables -t filter -A OUTPUT -p udp --dport 111 -j ACCEPT
                      iptables -t filter -A INPUT -p tcp --dport 111 -j ACCEPT
                      [/CODE]

                      thanks you for your ideas.

                      EDIT :
                      I find my problem

                      modprobe ip_conntrack_tftp
                      modprobe ip_conntrack_ftp

                      😉

                      1 Reply Last reply Reply Quote 0
                      • 1 / 1
                      • First post
                        Last post

                      225

                      Online

                      12.0k

                      Users

                      17.3k

                      Topics

                      155.2k

                      Posts
                      Copyright © 2012-2024 FOG Project