距離上一次用 ipfw,大概已經是五六年前啦。主要是想要阻擋公司內部一些"彷彿中毒"電腦去 try 機器,另外,公司已經有強大的防火牆阻擋外部連進來,因此我只需限制公司內部的 IP 就行!此篇是最粗淺的設定筆記,並不適用其他常用的機器。除了 ipfw rules 外,其他的設定只是為了讓他可以開機就執行 ipfw 。

參考文件:

  1. Init
    • $ sudo mkdir /Library/StartupItems/Firewall
    • $ sudo touch /Library/StartupItems/Firewall/Firewall
    • $ sudo chmod ug+x /Library/StartupItems/Firewall/Firewall
    • $ sudo chmod o-rwx /Library/StartupItems/Firewall/Firewall
  2. /Library/StartupItems/Firewall/Firewall
    • !/bin/sh
      ########## file @ /Library/StartupItems/Firewall/Firewall
      # http://www.freebsd.org/doc/en/books/handbook/firewalls-ipfw.html
      # http://www.ibiblio.org/macsupport/ipfw/

      ipfw=`which ipfw`
      $ipfw -q -f flush
      cmd="$ipfw -q add "

      $cmd 00500 check-state

      $cmd 07999 allow all from x.y.My.PC1 to any
      $cmd 07999 allow all from x.y.My.PC2 to any
      $cmd 07999 allow all from x.y.My.PC3 to any
      $cmd 08999 deny all from x.y.0.0/16 to any
      $cmd 09999 allow all from any to any
  3. /Library/StartupItems/Firewall/StartupParameters.plist
    • {
      Description = "Firewall";
      Provides = ("Firewall");
      Requires = ("Network");
      OrderPreference = "None";
      Messages =
         {
         start = "Starting NAT/Firewall";
         stop = "Stopping NAT/Firewall";
         };
      }

其中 x.y.My.PC1 要留意設定,有時要記的加上常用的機器列表,別忘了加公司的 DNS,這樣才能你的機器才能連過去。


changyy 發表在 痞客邦 PIXNET 留言(0) 人氣()