1. 程式人生 > >linux 檢視並對外開放埠(防火牆攔截處理)

linux 檢視並對外開放埠(防火牆攔截處理)

檢視埠是否可訪問:telnet ip 埠號 (如本機的35465:telnet localhost 35465)

開放的埠位於/etc/sysconfig/iptables中

檢視時通過 more /etc/sysconfig/iptables 命令檢視

如果想開放埠(如:8889)

(1)通過vi /etc/sysconfig/iptables 進入編輯增添一條-A INPUT -p tcp -m tcp --dport 8889 -j ACCEPT 即可

(2)執行 /etc/init.d/iptables restart 命令將iptables服務重啟

#(3)儲存 /etc/rc.d/init.d/iptables save

注:如若不想修改iptables表,可以直接輸入下面命令:

iptables -I INPUT -p tcp --dport 8889 -j ACCEPT

若/etc/sysconfig/iptables不存在,

原因:在新安裝的linux系統中,防火牆預設是被禁掉的,一般也沒有配置過任何防火牆的策略,所有不存在/etc/sysconfig/iptables檔案。

解決:

  1. 在控制檯使用iptables命令隨便寫一條防火牆規則,如:iptables -P OUTPUT ACCEPT
  2. 使用service iptables save進行儲存,預設就儲存到了/etc/sysconfig目錄下的iptables檔案中

一、概要
1、防火牆分類
      ①包過濾防火牆(pack filtering)在網路層對資料包進行選擇過濾,採用訪問控制列表(Access control table-ACL)檢查資料流的源地址,目的地址,源和目的埠,IP等資訊。
      ②代理伺服器型防火牆
2、iptables基礎
      ①規則(rules):網路管理員預定義的條件
      ②鏈(chains): 是資料包傳播的路徑
      ③表(tables):內建3個表filter表,nat表,mangle表分別用於實現包過濾網路地址轉換和包重構的功能
      ④filter表是系統預設的,INPUT表(進入的包),FORWORD(轉發的包),OUTPUT(處理本地生成的包),filter表只能對包進行授受和丟棄的操作。
      ⑤nat表(網路地址轉換),PREROUTING(修改即將到來的資料包),OUTPUT(修改在路由之前本地生成的資料包),POSTROUTING(修改即將出去的資料包)
      ⑥mangle表,PREROUTING,OUTPUT,FORWORD,POSTROUTING,INPUT
3、其它
   iptables是按照順序讀取規則
   防火牆規則的配置建議
    Ⅰ 規則力求簡單
    Ⅱ 規則的順序很重要
    Ⅲ 儘量優化規則
    Ⅳ 做好筆記
二、配置
1、iptables命令格式
     iptables [-t 表] -命令 匹配 操作 (大小寫敏感)
   動作選項
     ACCEPT          接收資料包
     DROP             丟棄資料包
     REDIRECT      將資料包重新轉向到本機或另一臺主機的某一個埠,通常功能實現透明代理或對外開放內網的某些服務
     SNAT             源地址轉換
     DNAT             目的地址轉換
     MASQUERADE       IP偽裝
     LOG               日誌功能
2、定義規則
   ①先拒絕所有的資料包,然後再允許需要的資料包
      iptalbes -P INPUT DROP
      iptables -P FORWARD DROP
      iptables -P OUTPUT ACCEPT
   ②檢視nat表所有鏈的規則列表
      iptables -t nat -L
   ③增加,插入,刪除和替換規則
     iptables [-t 表名] <-A|I|D|R> 鏈名 [規則編號] [-i|o 網絡卡名稱] [-p 協議型別] [-s 源ip|源子網] [--sport 源埠號] [-d 目的IP|目標子網] [--dport 目標埠號] [-j 動作]
    引數:-A 增加
               -I 插入
               -D 刪除
               -R 替換

三、例子
①iptables -t filter -A INPUT -s 192.168.1.5 -i eth0 -j DROP
禁止IP為192.168.1.5的主機從eth0訪問本機②iptables -t filter -I INPUT 2 -s 192.168.5.0/24 -p tcp --dport 80 -j DROP
禁止子網192.168.5.0訪問web服務③iptables -t filter -I INPUT 2 -s 192.168.7.9 -p tcp --dport ftp -j DROP
禁止IP為192.168.7.9訪問FTP服務
④iptables -t filter -L INPUT
檢視filter表中INPUT鏈的規則
⑤iptables -t nat -F
刪除nat表中的所有規則
⑥iptables -I FORWARD -d wwww.playboy.com -j DROP
禁止訪問

www.playboy.com網站
⑦iptables -I FORWARD -s 192.168.5.23 -j DROP
禁止192.168.5.23上網