<meter id="pryje"><nav id="pryje"><delect id="pryje"></delect></nav></meter>
          <label id="pryje"></label>

          新聞中心

          EEPW首頁 > 嵌入式系統(tǒng) > 設(shè)計(jì)應(yīng)用 > Shorewall的單用戶簡單設(shè)置

          Shorewall的單用戶簡單設(shè)置

          作者: 時(shí)間:2016-09-12 來源:網(wǎng)絡(luò) 收藏

          一、防火墻基本知識:

          本文引用地址:http://www.ex-cimer.com/article/201609/303838.htm

          除了軟件和硬件防火墻的分類外,如果以封包抵擋機(jī)制來分類,大概可以分為proxy和IP Filter。

          基本上的IP Filter有兩個(gè)最基本的防火墻機(jī)制,分別是:Ip Filter和TCP_Wrapper。

          這里我們談IP Filter,因?yàn)閟horewall可以通過IPTABLES簡單設(shè)置IP Filter的規(guī)則。

          或者說:如果你不麻煩iptables的語法規(guī)則,或者可以自己寫一些shell程序批處理iptables指令,完全可以不安裝shorewall或者其他防火墻。因?yàn)?a class="contentlabel" href="http://www.ex-cimer.com/news/listbylabel/label/linux">linux下的防火墻基本都是通過設(shè)置iptables的規(guī)則完成的。

          1.首先確定(uname指令確定核心,lsmod確定當(dāng)前載入模塊,如果是ipchains,請執(zhí)行rmmod ipchains。 然后modprobe ip_tables即可將iptables裝入現(xiàn)在使用的模塊)你的內(nèi)核是采用哪種抵擋機(jī)制,是不是我們需要的iptables(Ubuntu5.10的是iptables)

          Linux Kernel Version 2.0:使用 ipfwadm

          Linux Kernel Version 2.2:使用的是 ipchains

          Linux Kernel Version 2.4:主要是使用 iptables 但為了兼容 ipchains ,因此Version 2.4 版本中,同時(shí)將 ipchains 編譯成模組供使用,好讓使用者仍然可以使用磣 2.2 版的 ipchains 的防火墻規(guī)則。

          ---------------

          然后執(zhí)行下面代碼來觀看現(xiàn)在的防火墻規(guī)則(聯(lián)網(wǎng)情況下,root用戶)

          $ sudo iptables -L -n (L的含義是列出目前的 table 的規(guī)則,n含義是不進(jìn)行IP與HOSTNAME的相互轉(zhuǎn)換,這樣可以加快顯示速度)

          $ sudo iptables -t nat -L -n (-t nat的含義是顯示nat的filter。iptables會有nat tables和filter tables,不加參數(shù)為filter。有興趣的兄弟可以參看其他關(guān)于iptables的介紹,介于太長,此處不做介紹;)

          ---------------

          接下來我們就要清除掉現(xiàn)在所有的防火墻規(guī)則(聯(lián)網(wǎng)情況下)

          root@*** root]# /sbin/iptables [-t tables] [-FXZ]

          其中參數(shù)含義為:

          -F :清除所以已經(jīng)建立的規(guī)則;

          -X :殺掉所有使用者建立的 chain ( tables );

          -Z :把所有的 chain 的計(jì)數(shù)和流量統(tǒng)計(jì)歸為0;

          例:

          [root@*** root]# /sbin/iptables -F

          [root@*** root]# /sbin/iptables -X

          [root@*** root]# /sbin/iptables -Z

          [root@*** root]# /sbin/iptables -t nat -F

          ---------------

          二、具體安裝Shorewall3.0.4

          下載shorewall最新的穩(wěn)定版本3.0.4(tarball安裝,即為源代碼make安裝。確定你的機(jī)器跟隨‘新手指南’裝了基本編譯工具),由于新立得里面還是2.多的版本,在官方網(wǎng)站看的是3的介紹,所以安裝3.0.4。而且安裝很簡單,不會出現(xiàn)其他依賴性問題.

          ------------

          1.下載地址:http://www1.shorewall.net/pub/shorewall/3.0/shorewall-3.0.4/

          2.安裝前需要:iptables(前面提到的)+iproute (檢查這個(gè)的指令是sudo Which ip )(基本上ubuntu5.10都具備了,所以可以不考慮)

          3.盡量不要在ms-windows里面編輯shorewall的配置文件,因?yàn)閙s和lin的文字排版不太一樣,比如回車。

          4.cd到你解壓之后的目錄,然后./install.sh 回車,看見沒有錯(cuò)誤信息,就OK了。但是此刻shorewall沒有啟動。等會兒我們來啟動。默認(rèn)安裝之后就是每次啟動就自動啟動防火墻(設(shè)置文件在 /etc/shorewall/shorewall.conf。找到STARTUP_ENABLED=Yes

          ,yes代表開機(jī)自動啟動!)

          5.安裝之后所有文件分別位于:/usr/shorewall 和/sbin 和 /etc/shorewall,我們需要注意的就是/etc/shorewall。這里是配置文件。(個(gè)人建議,對于一些重要的,經(jīng)常不需要變動的文件可以將隱藏屬性chattr +i 上去,具體指令信息,請找‘男人’man )

          6.查看安裝后的版本:sudo shorewall version 可以得到3.0.4的消息

          三、配置Shorewall3.0.4

          詳細(xì)的官方文檔位于:http://www.shorewall.net/Documentation.htm ,shorewall的文件很多,但是一般用戶用到的不多,特別是我們這種單機(jī)撥號的用戶。

          -------------

          1.首先配置/etc/shorewall/zones文件,瀏覽至最后,添加代碼如下:

          #ZONE TYPE OPTIONS

          fw firewall #文件原本存在的這行,fw為防火墻本身,必須

          net ipv4

          loc ipv4

          #LAST LINE -- DO NOT REMOVE

          其中關(guān)于各個(gè)type,options的解釋,該配置文件前面部分有,大家如果嚴(yán)格要求,可以參照文件配置,一般用戶配置成上面就可以了。

          2.配置/etc/shorewall/interfaces

          (這里用到的ZONE的名字是在上個(gè)文件/etc/shorewall/zones中定義的名字,所以順序不要弄錯(cuò)了。這種zone名字的方法是比較簡單的,推薦這種方法。)

          #ZONE INTERFACE BROADCAST OPTIONS

          net ppp0

          #LAST LINE -- DO NOT REMOVE

          同樣配置文件對各個(gè)參數(shù)進(jìn)行了詳盡的解釋

          --------------

          3.配置/etc/shorewall/rules 和 /etc/shorewall/policy

          關(guān)系: policy是定義默認(rèn)的策略給所有的連接(從一個(gè)zone到另外一個(gè)zone, 比如我們定義的從loc到net);

          rules是定義特殊的防火墻規(guī)則,即是policy里面沒有的。

          先后條件:任何連接,防火墻先檢查rules,如果rule中沒有關(guān)于這個(gè)連接要求的描述,就調(diào)用policy的默認(rèn)配置。

          /etc/shorewall/policy的配置如下(默認(rèn))

          #SOURCE ZONE DESTINATION ZONE POLICY LOG LIMIT:BURST

          # LEVEL

          loc net ACCEPT

          net all DROP info

          all all REJECT info

          #LAST LINE -- DO NOT REMOVE

          我一般改為下面,省得每次開端口麻煩。

          fw net ACCEPT

          net all DROP info

          all all REJECT info

          上面的含義是允許本機(jī)所有連接網(wǎng)絡(luò)的要求;網(wǎng)絡(luò)連接到我的所有zones(比如防火墻fw,本地loc)都丟棄該連接要求的tcp封包,并記入日志。拒絕所有連接要求并記入日志(當(dāng)連接被拒絕了,防火墻就會返回一個(gè)RST (加入?yún)f(xié)議是TCP) 或者一個(gè) ICMP端口不能到達(dá)的包給其他協(xié)議)


          上一頁 1 2 下一頁

          關(guān)鍵詞: unix linux

          評論


          相關(guān)推薦

          技術(shù)專區(qū)

          關(guān)閉
          看屁屁www成人影院,亚洲人妻成人图片,亚洲精品成人午夜在线,日韩在线 欧美成人 (function(){ var bp = document.createElement('script'); var curProtocol = window.location.protocol.split(':')[0]; if (curProtocol === 'https') { bp.src = 'https://zz.bdstatic.com/linksubmit/push.js'; } else { bp.src = 'http://push.zhanzhang.baidu.com/push.js'; } var s = document.getElementsByTagName("script")[0]; s.parentNode.insertBefore(bp, s); })();