中文一二三区_九九在线中文字幕无码_国产一二区av_38激情网_欧美一区=区三区_亚洲高清免费观看在线视频

首頁 > 考試輔導(dǎo) > 計(jì)算機(jī)考試 > Linux認(rèn)證 > Linux試題集錦 > Linux2.4內(nèi)核中新增功能指南

Linux2.4內(nèi)核中新增功能指南

        一 本文目的

  本文主要是探討 linux 2.4 內(nèi)核中的iptables 的各種新增功能和使用方法,如何有效地使用這些新增的功能設(shè)置企業(yè)的防火墻規(guī)則,舉例說明了新增功能在企業(yè)中的應(yīng)用。

  二 操作環(huán)境

  redhat linux 7.1自帶的模塊化內(nèi)核,專線連接互聯(lián)網(wǎng),兩塊網(wǎng)卡的防火墻,內(nèi)部網(wǎng)段為10.0.0.0/255.255.255.0, 防火墻外部網(wǎng)卡接口地址為1.2.3.4。

  三 iptables與ipchains的不同之處

  1. 內(nèi)置規(guī)則的重新定義,簡單化規(guī)則管理linux 內(nèi)核中內(nèi)置的input,output,forward規(guī)則在新的iptables中,任何一個(gè)包僅僅只在這三個(gè)規(guī)則中的任何一個(gè)上應(yīng)用,或者被input規(guī)則擊中,或者被forward規(guī)則或者output規(guī)則擊中,不象在ipchains中任何一個(gè)包如果是穿過這臺防火墻總要同時(shí)擊中三個(gè)規(guī)則。

  為了說明這種改變,請看下面的代碼。

  incoming / outgoing
  -->[routing ]--->|forward|------->
  [decision] _____/ ^
  | |
  v ____
  ___ /
  / linux防火墻 |output|
  |input| ____/
  ___/ ^
  | |
  ----> local process ----

  a. 首先,當(dāng)一個(gè)包進(jìn)來的時(shí)候,也就是從以太網(wǎng)卡進(jìn)入防火墻,內(nèi)核首先根據(jù)路由表決定包的目標(biāo)。
  b. 如果目標(biāo)主機(jī)就是本機(jī),則如上圖直接進(jìn)入input鏈,再由本地正在等待該包的進(jìn)程接收,結(jié)束。
  c. 否則,如果從以太網(wǎng)卡進(jìn)來的包目標(biāo)不是本機(jī),再看是否內(nèi)核允許轉(zhuǎn)發(fā)包(可用echo 1> /proc/sys/net/ipv4/ip_forward 打開轉(zhuǎn)發(fā)功能)如果不允許轉(zhuǎn)發(fā),則包被drop掉,如果允許轉(zhuǎn)發(fā),則送出本機(jī),結(jié)束。這當(dāng)中決不經(jīng)過input或者output鏈,因?yàn)槁酚珊蟮哪繕?biāo)不是本機(jī),只被轉(zhuǎn)發(fā)規(guī)則應(yīng)用
  d. 最后,該linux防火墻主機(jī)本身能夠產(chǎn)生包,這種包只經(jīng)過output鏈出去。

  注意: echo 1 > /proc/sys/net/ipv4/ip_forward 和 forward 鏈的區(qū)別

  前者的意思是是否打開內(nèi)核的轉(zhuǎn)發(fā)功能,后者是轉(zhuǎn)發(fā)鏈規(guī)則只有內(nèi)核打開轉(zhuǎn)發(fā)功能,一個(gè)包才可能被送到轉(zhuǎn)發(fā)鏈上去逐項(xiàng)檢查規(guī)則。

  如果一臺防火墻沒有打開前者的ip轉(zhuǎn)發(fā)功能,則根防火墻相連的兩邊的網(wǎng)絡(luò)是完全隔離的,如果是一端連到internet上,則只能通過代理防問internet,不可能通過ip偽裝的方式防問。

  這樣,任何一個(gè)包只可能應(yīng)用input/output/forward中的一個(gè)規(guī)則,這種巨大的改進(jìn)同時(shí)也簡單化了防火墻規(guī)則管理。

  2. iptables 是有狀態(tài)的(stateful)。


  有狀態(tài)的意思是指如果一個(gè)包是對從防火墻原先發(fā)出去的包的回復(fù),則自動不用檢查任何規(guī)則就立即允許回復(fù)包進(jìn)入并返回給請求者,這樣我們不用設(shè)置許多規(guī)則定義就可實(shí)現(xiàn)應(yīng)有的功能,在新的內(nèi)核中使用這種有狀態(tài)的能力是強(qiáng)烈地被推薦的,那么如何打開并使用這種功能呢?

  我們假定某公司有如下圖所示的典型的internet連接方案:

  _______
  10.0.0.2 | |
  |pc | (10.0.0.1)eth1| |eth0(1.2.3.4)
  b|___|_ ___________________|防火墻 |---------internet
  (lan: 10.0.0.0/24) | a |
  |_______|

可使用下面的規(guī)則集使用iptables的有狀態(tài)的能力并打開ip偽裝功能。

  1 modprobe ip_tables
  2 echo 1 > /proc/sys/net/ipv4/ip_forward
  3 iptables -f input
  4 iptables -f forward
  5 iptables -f postrouting -t nat
  6 iptables -p forward drop
  7 iptables -a forward -s 10.0.0.0/24 -j accept
  8 iptables -a forward -i eth0 -m state --state established,related -j
  accept
  9 iptables -t nat -a postrouting -o eth0 -s 10.0.0.0/24 -j masquerade
  10 iptables -a input -p tcp -i eth0 --syn --dport 80 -j accept
  11 iptables -a input -p tcp -i eth0 --syn -j drop

  注:

  1. 當(dāng)使用redhat 的模塊化內(nèi)核時(shí),裝入ip_tables模塊后,以后的命令將根據(jù)需要自行裝入需要的模塊。
  另外注意,如果你裝入了ipchains或者ipfwadm模塊,則不能再裝入iptables模塊,可用rmmod命令移走它 們再裝入iptables模塊。在redhat下,可用ntsysv移走ipchains和iptables標(biāo)記重啟后運(yùn)行上面的命令。
  或者放入/etc/rc.d/rc.local中自動運(yùn)行。
  2. 第二行打開ip轉(zhuǎn)發(fā)功能。
  3. 第三四五行清除input,forward和postrouting鍵規(guī)則
  4. 第六行設(shè)置默認(rèn)轉(zhuǎn)發(fā)策略是drop,當(dāng)一個(gè)包被轉(zhuǎn)發(fā)轉(zhuǎn)則應(yīng)用但不能應(yīng)用到任何一條轉(zhuǎn)發(fā)規(guī)則上則應(yīng)用默認(rèn) 規(guī)則。
  5. 第七行轉(zhuǎn)發(fā)本網(wǎng)段的機(jī)器到任何地方去的包。
  6. 第八行利用了有狀態(tài)的能力,只要是對先前從防火墻外部接口出去的請求包的回復(fù),允許。
  established是指tcp連接,related是指象主動ftp,icmp ping請求等,當(dāng)回復(fù)包到達(dá)時(shí),實(shí)際上是檢查文 件 /proc/net/ip_conntrack看是否在里面,如果在表中,則不檢查任何鏈,包允許通過。
  7. 第九行打開ip偽裝能力,從eth0出去的包被重寫源地址后偽裝出去,是源地址snat的特例。這里要注意的是 -o eth0, 而不是 -i eth0,在iptables中,從一個(gè)接口出去的包用 -o,進(jìn)來的包用 -i
  8. 第十行說明如果這臺防火墻也是web服務(wù)器,則允許外部的新建立的請求且目標(biāo)端口為80的包可以進(jìn)入
  9. 第十一行對不是目標(biāo)端口是80的所求tcp新的連接請求包,拒絕進(jìn)入。

  注: nat 與 forward 鏈的關(guān)系

  a. 不管執(zhí)行任何nat,對包過濾規(guī)則看到的源和目的地址是真實(shí)的源和目的地址,盡管在執(zhí)行ip偽裝(dnat)時(shí) 會對包進(jìn)行地址重寫,這一點(diǎn)你可以從文件/proc/net/ip_conntrack中看到。

  b. 如果我們沒有利用iptables的有狀態(tài)的能力,象上面的情況,要是允許網(wǎng)段10.0.0.0/24中的機(jī)器可以ip偽裝的話,我們不得不加上一條轉(zhuǎn)發(fā)規(guī)則 iptables -aforward -d 10.0.0.0/24 -j accept,否則對偽裝包的回復(fù)不會通過轉(zhuǎn)發(fā)鏈回復(fù)給內(nèi)部機(jī)器,因?yàn)榛貜?fù)包需要通過轉(zhuǎn)發(fā)鏈。

  注: 如何證明僅僅一個(gè)規(guī)則鏈被應(yīng)用了?

  在以前的ipchains中一個(gè)包要經(jīng)過input,forward,output鏈才能從防火墻送出到internet,現(xiàn)在使用iptables,僅僅一個(gè)鏈被應(yīng)用,你可以加入下面的規(guī)則測試

  iptables -a input -s 10.0.0.2/24 -j drop

  上面的這行在iptables中僅僅是指任何本網(wǎng)段的機(jī)器當(dāng)目標(biāo)就是防火墻時(shí)被拒絕,但絕不影響nat和轉(zhuǎn)發(fā)包,這在以前的ipchains中是不可能的。

主站蜘蛛池模板: 国产v欧美Ⅴ日韩v在线观看 | 久久免费国产精品 | 亚洲精品国偷自产在线 | 日本高清免费在线观看 | 国产成人AV综合久久视色 | 一区美女 | 精品国产免费久久久久久桃子图片 | 久久综合伊人一区二区三 | 国产精品无线一线二线三线 | CAOPORN国产精品免费视频 | 在线岛国片免费无码AV | 欧美a级大片 | 四虎成人网 | 人人草人人射 | 伊人yinren22综合开心 | 国产97色在线国产 | 粉嫩一区二区 | 亚州精品久久久久久久久 | 大地资源在线观看视频在线 | 国产成人无码A区在线观看导航 | 黄色一级国产 | 狂野欧美性猛xxxx乱大交 | 欧洲性XXXX免费视频在线观看 | 亚洲精品狼友在线播放 | 久久精品国产亚洲av麻豆小说 | 亚洲国产一区二区三区在线播 | 无码夫の前で人妻を犯す中字 | 逼逼av网站 | 亚洲高清精品50路 | 拍真实国产伦偷精品 | 99视频热这里只有精品免费 | 一级毛片免费视频观看 | 成年美女黄网站色大片免费软件看 | 婷婷天堂网 | www.91免费?看| 日日免费视频 | www.蜜桃视频 | 久久久久久久综合狠狠综合 | www.天天操| 久久精品中文字幕女同 | 日本三级免费片 |