liunx下防火牆的配置

RedHat機器
cat /etc/sysconfig/iptables
*filter
:INPUT ACCEPT [10276:1578052]
:FORWARD ACCEPT [0:0]
:OUTPUT ACCEPT [13784:16761487]
-A INPUT -s 10.0.0.0/255.0.0.0 -i eth1 -j DROP
-A INPUT -s 172.16.0.0/255.240.0.0 -j DROP
-A INPUT -s 192.168.0.0/255.255.0.0 -i eth1 -j DROP #eth1 is interface to internet
# anti Sync Flood
-A FORWARD -p tcp -m tcp --tcp-flags SYN,RST,ACK SYN -m limit --limit 1/sec -j ACCEPT
# anti some port scan
-A FORWARD -p tcp -m tcp --tcp-flags FIN,SYN,RST,ACK RST -m limit --limit 1/sec -j ACCEPT
# anti ping of death
-A FORWARD -p icmp -m icmp --icmp-type 8 -m limit --limit 1/sec -j ACCEPT
COMMIT
chkconfig iptables on
以後每次啓動iptables就會自動讀取配置文件(/etc/sysconfig/iptables)
自動啓動
或者是/etc/rc.d/init.d/iptables start手工啓動
/etc/rc.d/init.d/iptables stop手工停止
在LINUX下架設防火牆
linuxbird 
  隨着Internet的普及,人們的日常工作與之的關係也越來緊密,因而越來越多的單位爲員工開設了Internet的代理上網服務。但當一個企業的內部網絡接上Internet之後,企業的內部資源就象待賣的羔羊一樣,面臨任人宰割的危險,因而系統的安全除了考慮計算機病毒、系統的健壯性等內部原因之外,更主要的是防止非法用戶通過Internet的入侵。而目前防止的措施主要是靠防火牆的技術完成。
    一、什麼是防火牆
  防火牆(firewall)是指一個由軟件或和硬件設備組合而成,處於企業或網絡羣體計算機與外界通道(Internet)之間,限制外界用戶對內部網絡訪問及管理內部用戶訪問外界網絡的權限。主要是控制對受保護的網絡(即網點)的往返訪問,逼使各連接點的通過能得到檢查和評估。
  從誕生到現在,防火牆已經歷了四個發展階段:基於路由器的防火牆、用戶化的防火牆工具套、建立在通用操作系統上的防火牆、具有安全操作系統的防火牆。目前防火牆供應商提供的大部分都是具有安全操作系統的軟硬件結合的防火牆,象NETEYE、NETSCREEN、TALENTIT等。在LINUX操作系統上的防火牆軟件也很多,除了下面要專門介紹的IPCHAINS外,還有很多,如:Sinus Firewall、Jfwadmin等。
  目前的防火牆從結構上講,可分爲兩種:
  1) 代理主機結構
    內部網絡<----->代理網關(Proxy Gateway)<----->Internet
  2) 路由器加過濾器結構
    內部網絡<----->過濾器(Filter)<---->路由器(Router)<---->Internet
    二、用IPCHAINS構建局域網防火牆的原理
  其實從本質上講,用IPCHAINS構建局域網防火牆也是一種C/S模式的交互式的應用。一般服務器提供某特定功能的服務總是由特定的後臺程序提供的。在TCP/IP網絡中,常常把這個特定的服務綁定到特定的TCP或UDP端口。之後,該後臺程序就不斷地監聽(listen)該端口,一旦接收到符合條件的客戶端請求,該服務進行TCP握手後就同客戶端建立一個連接,響應客戶請求。與此同時,再產生一個該綁定的拷貝,繼續監聽客戶端的請求。
  IPCHAINS就是這樣的一個SERVER。對內部網通往Intenet的請求,或從外部通往內部網的請求,都進行監聽、檢查、評估、轉發、拒絕等動作。
  常用的服務、協議與默認端口。
  服務類型 協議 端口
  WWW TCP/UDP 80
  TELNET
  ICMP
  SMTP
  POP3
  FTP
  DNS
    三、用IPCHAINS作防火牆的步驟
  1.安裝
  IPCHAINS現在的版本已經發展到1.3.9。一般在安裝LINUX時都會安裝上,如果沒有的話可以到www.linux.org下載。下面筆者一TLC4.0爲例安裝IPCHAINS。由於它需IP-MASQ的支持,所以確定已安裝了IP-MASQ模塊。
  在TLC4.0中,把該光盤放入光驅中,
  #turbopkg
  並選擇ipchains,然後按OK就自動自動安裝了。
  如果你是下載ipchains安裝包的話:
  1)如果是rpm包:
  #rpm –ivh *.rpm
  2)如果是.tar.gz包
  #tar xvfz *.tar.gz(先把包解開)
  再到解開目錄
  #./configure
  #make
  #make install
  這樣就安裝成功了。
  2.啓用ipchains
  手工修改 /proc/sys/net/ipv4/ipforward文件,將其內容置爲1。
  在/etc/rc.d/目錄下用touch命令建立rc.ipfwadm文件
  在/etc/rc.d/目錄下的rc.local文件中加上下面這段代碼:
  if [ -f /etc/rc.d/rc.ipfwadm ]; then /etc/rc.d/rc.ipfwadm; fi;
  以後所有的ipchains的配置命令都將在rc.ipfwadm文件裏修改。
  3.配置ipchains(基本應用)
  ipchains對機器的管理是通過對機器的ip地址作爲標誌的,因而首先得確保你的局域網的機器的ip地址已經配分配好,並且你對之相當熟悉。
  Ipchains的配置規則一般是圍繞着input、output、ipforward這三個規則進行的,其中input是指對內連接請求的過濾規則,output是指對外連接請求的過濾規則,ipforward是指對內部與外部通訊包的轉發。Ipchains的命令格式一般是:
  ipchains [ADC] ipchains規則 [ipchains 選項]。
  有關命令的詳細用法請參考有關HOWTO文檔。
  現在我們假設企業的內部網網段爲192.168.1.0~192.168.1.255.其中防火牆的主機的IP地址爲:192.168.1.1,假設目前防火牆是進行代理上網,拒絕所有的外部telnet。對內部用戶訪問外部站點進行限制、並授予一些機器特權可任意訪問外部機器、拒絕內部某些機器訪問Internet等。網段示意圖爲:
  +--------------+
  | 內部網段 | 192.168.1.1 ISDN、PSDN
  | +------------|firewall|<===============>Internet
  | 192.168.1.0 | +--------+
  +-------------- +
  配置ipchains防火牆規則一般有兩種方式:
  1) 首先允許所有的包,然後在禁止有危險的包通過防火牆;
  2) 首先禁止所有的包,然後再根據所需要的服務允許特定的包通過防火牆。
  相比較而言,第二種方式的做法更爲安全。
  下面是我的rc.ipfwadm的文件內容:
  /sbin/depmod –a
  /*自動加載所需模塊,如果覺得這樣有危險,需手動指定安裝模塊,可以如下面這一小段就是手動指定加載模塊*/
  #/sbin/modprobe /lib/modules/2.2.10/ipv4/ip_masq_ftp
  /*加載ip僞裝的ftp模塊*/
  #/sbin/modprobe /lib/modules/2.2.10/ipv4/ip_masq_irc
  /*加載ip僞裝的irc模塊*/
  #/sbin/modprobe /lib/modules/2.2.10/ipv4/ip_masq_raudio
  #/sbin/modprobe /lib/modules/2.2.10/ipv4/ip_masq_user
  #/sbin/modprobe /lib/modules/2.2.10/ipv4/ip_masq_autofw
  /sbin/modprobe -a -t /lib/modules/2.2.10/ipv4/ip_masq*
  /*自動加載ip僞裝的相關模塊*/
  ipchains –F
  /*刷新所有的ipchains規則*/
  ipchains -P forward DENY
  /*拒絕轉發所有的ip包*/
  /*下面允許特定的包通過*/
  /*開設權限比較高的主機*/
  ipchains -A forward -s 192.168.1.10/32 -j MASQ
  /*允許內部的192.168.1.10主機不受限制訪問。比如總經理*/
  ipchains -A forward -s 192.168.1.12/32 -j MASQ
  /*允許內部的192.168.1.12主機不受限制訪問。比如系統管理員,在依次添加*/
  ipchains -A forward -s 192.168.1.41/32 -j MASQ
  /*for example linuxbird的主機地址:192.168.1.41*/
  /*某些機器,因需要不能對外連接*/
  ipchains -A forward -s 192.168.1.3/32 -j DENY
  /*此機器爲內部文檔專用機,不能訪問外部*/
  /*設置內部普通用戶能訪問的站點*/
  ipchains -A forward -d 202.101.98.55/32 -j MASQ # FJ-DNS
  ipchains -A forward -d 202.101.0.133/32 -j MASQ # FJ-DNS
  /*這是上網的DNS服務器,本人用的是福州電信局的DNS*/
  /*以下是普通用戶能訪問的站點,根據需要可以對其增刪改*/
  ipchains -A forward -d 202.101.98.50/32 -j MASQ
  /* public.fz.fj.cn*/
  ipchains -A forward -d 202.101.98.60/32 -j MASQ
  /* pub5.fz.fj.cn*/
  ipchains -A forward -d 202.96.44.14/24 -j MASQ
  /*freemail.263.net*/
  ipchains -A forward -d 202.99.11.120/32 -j MASQ
  /*www.linuxaid.com.cn*/
  ipchains -A forward -d 205.227.44.44/24 -j MASQ
  /* www.oracle.com*/
  ipchains -A forward -d 205.227.44.46/32 -j MASQ
  /* lliance.oracle.com*/
  #ipchains -A forward -d 205.227.44.237/32 -j MASQ
  /* support.oracle.com*/
  ipchains -A forward -d 209.246.5.38/24 -j MASQ
  /* technet.oracle.com*/
  ipchains -A forward -d 137.69.200.8/32 -j MASQ
  /* www.legato.com*/
  ipchains -A forward -d 202.96.125.102/32 -j MASQ
  /*www.188.net*/
  ipchains -A forward -d 207.105.83.51/32 -j MASQ
  /* www.borland.com*/
  ipchains -A forward -d 207.46.131.30/24 -j MASQ
  /* www.microsoft.com*/
  ipchains -A forward -d 207.46.130.30/24 -j MASQ
  /* www.microsoft.com*/
  ipchains -A forward -d 204.146.81.99/32 -j MASQ
  /* www.ibm.com*/
  ipchains -A forward -d 202.102.24.74/24 -j MASQ
  /* www.lodesoft.com*/
  ipchains -A forward -d 210.77.34.109/32 -j MASQ
  /* www.csdn.net*/
  ipchains -A forward -d 192.138.151.66/32 -j MASQ
  /* www.sybase.com*/
  ipchains -A forward -d 202.102.26.1/32 -j MASQ
  /* www.nari-china.com*/
  ipchains -A forward -d 202.102.26.51/32 -j MASQ
  /*www.aeps-info.com*/
  ipchains -A forward -d 202.106.185.2/32 -j MASQ
  /* www.sohu.com */
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章