• <ins id="pjuwb"></ins>
    <blockquote id="pjuwb"><pre id="pjuwb"></pre></blockquote>
    <noscript id="pjuwb"></noscript>
          <sup id="pjuwb"><pre id="pjuwb"></pre></sup>
            <dd id="pjuwb"></dd>
            <abbr id="pjuwb"></abbr>

            旅途

            如果想飛得高,就該把地平線忘掉

            防火墻之基礎篇(iptable)

            我們知道網上的訪問通過tcp/ip封包來進入主機系統的。在linux中它一般要同過ip過濾機制來實現第一層防護,如果通過了這層防護還的通過下一關的檢查 那就是TCP_Wrappers 的功能。
            封包過濾( IP Filter ):
            封包過濾是 linux 提供的第一道防火墻呦!但是不同的核心版本會有不一樣的封包過濾機制!以 2.2.xx 為核心的 Linux 主要以 ipchains 作為過濾機制,至于目前新版的 2.4.xx 則以 iptables 為機制!OK!既然我們的 Red Hat 7.1, 7.2, 7.3 為 kernel 2.4.xx ,所以用 iptables 來進行 IP 抵擋的工作啦!那么由于 TCP 封包里頭有 IP 及 port ,所以要抵擋來源 IP 或者是自身的 port ,自然就很容易來進行啦!您目前只要知道 iptables 可以經由 TCP 的封包表投資料來進行分析的工作例如:和附規則的就通過,否則就把它丟棄 這樣就防止不符合規則的人進入你的電腦。
            至于抵擋封包的工作則可以讓 TCP_Wrappers 來進行
            要常常去看 /var/log/messages 與 /var/log/secure 這兩個個檔案!都是登陸登錄記錄等。
            要做好主機的防護,第一步就是要建立完善的密碼規則啦!因為這個咚咚常常是 cracker 嘗試入侵的第一步!你必須要建立好主機的密碼規則,可以嘗試以 chattr 來將 /etc/passwd 及 /etc/shadow 做成不可變更的檔案!較為安全啦!
            做好安全的幾個常見的工作
            1.升級與修補套件漏洞、及移除危險套件:
            2.每項系統服務的安全設定項目
            3.TCP_Wrappers 的基礎防火設定
            4.iptables 的防火規則設定
            5.主機資源偵測系統( MRTG )
            6.登錄檔案分析系統:

            iptables:
            iptables 是 linux Kernel 2.4.xx 版本以上的主要 IP 過濾機制!他最大的功能就是可以過濾掉不要的 TCP 封包啦!當然功能還不止于此,他還可以用來進行 IP 偽裝,以達成 NAT 的主機功能呢! iptables 的工作方向,必須要依規則的順序來分析,底下我們簡單的談一談 iptables 的幾個概念吧:
            有幾個 tables :
            跟之前版本的 ipchains 不同的地方是, iptables 可以自行定義一些 tables 的新規定!將可以讓防火墻規則變的更為便于管理呢!基本上,原本的 iptable 至少有兩個 table ,一個是 filter ( 預設的,沒有填寫 tables 時,就是 filter 這個 table 啦 ),一個則是相當重要的 nat table 。其中, filter 可以用來管理主機的安全,至于 nat 則是用來處理 NAT 的功能啦!
            清除規則:
            iptables 的訂定方法其實很簡單,就是使用指令列的方式來訂定而已,他的基礎語法在清除規則時,是這樣的:
            [root @test /root]# /sbin/iptables [-FXZ]
            參數說明:
            -F :清除所有的已訂定的規則;
            -X :殺掉所有使用者建立的 chain (應該說的是 tables )啰;
            -Z :將所有的 chain 的計數與流量統計都歸零
            范例:
            [root @test /root]# /sbin/iptables -F
            [root @test /root]# /sbin/iptables -X
            [root @test /root]# /sbin/iptables -Z
            請注意,如果在遠程聯機的時候,『這三個指令必須要用 scripts 來連續執行』,不然肯定『會讓你自己被主機擋在門外!』
             
            定義政策( Policy ):
            清除規則之后,再接下來就是要設定規則的政策啦!這個所謂的政策指的是『當你的封包不在你的規則之內時,則該封包的通過與否,以 Policy 的設定為準』,例如:你設定了十條規則,但有一個封包來的時候,這十條規則都不適用,這個時候此一封包就會依據 Policy 的規定為準,來決定是否可以通過防火墻啰。通常這個政策在 INPUT 方面可以定義的比較嚴格一點,而 FORWARD 與 OUTPUT 則可以訂定的松一些!
            [root @test /root]# /sbin/iptables [-t tables] [-P] [INPUT,OUTPUT,FORWARD| PREROUTING,OUTPUT,POSTROUTING] [ACCEPT,DROP]
            參數說明:
            -t   :定義 table !
            tables :table 的名稱,例如 nat 啰!
            -P   :定義政策( Policy )。
            INPUT :封包為輸入主機的方向;
            OUTPUT :封包為輸出主機的方向;
            FORWARD:封包為不進入主機而向外再傳輸出去的方向;
            PREROUTING :在進入路由之前進行的工作;
            OUTPUT   :封包為輸出主機的方向;
            POSTROUTING:在進入路由之后進行的工作。
            范例:
            [root @test /root]# /sbin/iptables -P INPUT ACCEPT
            [root @test /root]# /sbin/iptables -P OUTPUT ACCEPT
            [root @test /root]# /sbin/iptables -P FORWARD ACCEPT
            [root @test /root]# /sbin/iptables -t nat -P PREROUTING ACCEPT
            [root @test /root]# /sbin/iptables -t nat -P OUTPUT ACCEPT
            [root @test /root]# /sbin/iptables -t nat -P POSTROUTING ACCEPT
            將預設的政策都定義為接受啰!
             
            增加、插入規則:
            接下來則要定義規則啦!我們底下先完全以主機的角度來觀察!可以這樣來設定啦!
            [root @test /root]# /sbin/iptables [-AI] [INPUT,OUTPUT,FORWARD] [-io interface] [-p TCP,UDP] [-s IP/network] [--sport ports] [-d IP/network] [--dport ports] -j [ACCEPT,DROP]
            參數說明:
            -A   :新增加一條規則,該規則增加在最后面一行;
            -I   :在第一條規則加入;
            INPUT :封包為輸入主機的方向;
            OUTPUT :封包為輸出主機的方向;
            FORWARD:封包為不進入主機而向外再傳輸出去的方向;
            -i    :流入的網卡接口
            -o    :流出的網卡接口
            interface :網絡卡接口,例如 ppp0, eth0, eth1....
            -p :請注意,這是小寫呦!封包的協議啦!
            TCP :封包為 TCP 協議的封包;
            UDP :封包為 UDP 協議的封包;
            -s :來源封包的 IP 或者是 Network ( 網域 );
            --sport:來源封包的 port 號碼;
            -d :目標主機的 IP 或者是 Network ( 網域 );
            --dport:目標主機的 port 號碼;
            -j   :動作,可以接底下的動作;
            ACCEPT :接受該封包
            DROP  :丟棄封包
            范例:
            [root @test /root]# /sbin/iptables -A INPUT -i lo -j ACCEPT
            所有的來自 lo 這個接口的封包,都予以接受
            [root @test /root]# /sbin/iptables -A INPUT -i eth0 -p TCP -s 192.168.0.1 -j ACCEPT
            來自 192.168.0.1 這個 IP 的封包都予以接受
            [root @test /root]# /sbin/iptables -A INPUT -i eth0 -p TCP -s 192.168.1.0/24 -j ACCEPT
            來自 192.168.1.0 這個 C Class 的網域的任何一部計算機,就予以接受!
            [root @test /root]# /sbin/iptables -A INPUT -i eth0 -p TCP -s 192.168.1.25 -j DROP
            來自 192.168.1.25 的 IP 的封包,就直接全部給他丟棄!
            [root @test /root]# /sbin/iptables -A INPUT -i eth0 -p TCP --dport 21 -j DROP
            只要想要進來 21 這個 port 的封包,就把他丟棄!
            [root @test /root]# /sbin/iptables -A INPUT -i eth0 -p TCP -s 192.168.0.24 --dport 22 -j ACCEPT
            來自 192.168.0.24 的主機,想要到我的 port 22 時,就予以接受!
            請注意:防火墻的規則是『一行一行依序來檢查的,若符合任何一條規則,則予以動作(接受或丟棄),否則繼續往下檢查到最后一條』上
            TCP_Wrappers:
            這個 TCP_Wrappers 實在是很簡單的一個設定工作,因為他只要設定 /etc/hosts.allow 及 /etc/hosts.deny 就可以啦!基本上,他是經由 /usr/sbin/tcpd 這個程序來進行 TCP 的檢驗工作!而檢驗的方式則是以 /etc/hosts.allow 及 /etc/hosts.deny 來設定的啦!檢驗的流程是先以 /etc/hosts.allow 這個檔案,檢驗完之后,在到 /etc/hosts.deny 去搜尋!好了,那么 hosts.allow 要怎樣設定呢?
            <服務名稱> : <IP/network> : <action>
            特別注意, network 可以使用 192.168.0.0/255.255.255.0 ,但不可使用 192.168.0.0/24 !
            [root @test /root]# vi /etc/hosts.allow
            in.telnetd: 127.0.0.1 : allow
            in.ftpd: 127.0.0.1 : allow
            本機的 127.0.0.1 開放 telnet 及 ftp 哩!
            [root @test /root]# vi /etc/hosts.deny
            in.telnetd: 192.168.2.3 : deny
            將 192.168.2.3 的 telnet 服務關掉!




            本文來自CSDN博客,轉載請標明出處:http://blog.csdn.net/goldce/articles/426600.aspx

            posted on 2009-08-20 12:49 旅途 閱讀(387) 評論(0)  編輯 收藏 引用 所屬分類: LINUX基礎、管理

            青青热久久综合网伊人| 亚洲精品无码久久久久去q | 久久国产精品偷99| 精品久久久久久99人妻| 亚洲伊人久久成综合人影院 | 久久久久无码精品国产不卡| 久久香蕉国产线看观看精品yw| 久久99精品久久久久婷婷| 国产精品成人无码久久久久久| 天天影视色香欲综合久久| 久久久婷婷五月亚洲97号色| 国产亚洲成人久久| 亚洲AV乱码久久精品蜜桃| 久久强奷乱码老熟女| 久久精品国产亚洲AV无码麻豆 | 超级碰久久免费公开视频| 99久久免费国产精品特黄| 久久综合久久久| 久久精品无码专区免费东京热| 久久99精品免费一区二区| 99久久无码一区人妻a黑| 7777精品久久久大香线蕉 | 久久99精品综合国产首页| 久久久国产99久久国产一| 99久久免费国产精品| 大伊人青草狠狠久久| 亚洲精品国产美女久久久| 久久中文字幕人妻丝袜| 欧美麻豆久久久久久中文| 99久久伊人精品综合观看| 久久国产精品99久久久久久老狼| 欧美喷潮久久久XXXXx| 亚洲精品国精品久久99热一| 色播久久人人爽人人爽人人片AV | 香蕉久久av一区二区三区| 久久99这里只有精品国产| 亚洲精品tv久久久久| 亚州日韩精品专区久久久| 色99久久久久高潮综合影院| 久久福利资源国产精品999| 狠狠色丁香久久婷婷综合蜜芽五月|