999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

一種基于雙棧的雙效防火墻設計

2009-04-29 00:00:00王以伍,任宇,舒暉
電腦知識與技術 2009年33期

摘要:在IPv6過渡階段,實現對用戶完全透明的過渡將有效帶動IPv6的發展進程,由squid代理實現IPv6孤島與 IPv4海洋之間通信的同時,結合Linux內核的netfilter/ip6tables數據包過濾防火墻,實現了一種基于IPv4/IPv6雙協議棧網絡環境下的雙效防火墻。

關鍵詞:代理;雙棧;防火墻;Netfilter;ip6tables;squid

中圖分類號:TP393文獻標識碼:A文章編號:1009-3044(2009)33-9564-03

Dual-stack Based Firewall Designed for Double-effect

WANG Yi-wu,REN Yu,SHU Hui

(Educational Technology Center, Chengdu Medical College, Chengdu 610083, China)

Abstract: In the IPv6 transition period, it will effectively promote the development of IPv6 to achieve the completely transparent transition to the user.As the communication between IPv6 island and IPv4 ocean come true with squid proxy server, combinated with the netfilter/ip6tables packet filtering firewall of the Linux kernel, has designed a double-effect firewall which based on IPv4/IPv6 dual-stack network environment.

Key words: proxy; dual-stack; firewall; netfilter; ip6tables; squid

IPv6在中國啟動以來,通過各高校、研究機構、網絡營運商的不懈努力,已經取得了一系列可喜的成果,并且已經在眾多高校率先使用,其部分應用如BT、視頻點播等凝聚了龐大的忠實用戶,讓我們對IPv6的發展充滿了希望。但是,仔細想想,IPv6仍然只是IPv4海洋中的一個個孤島,過渡階段的嚴峻困難仍然橫亙在我們面前:如何解決用戶從IPv4到IPv6過渡和銜接的問題?

另外,IPv6雖然從地址分配方案, IPSEC服務等對IPv4協議安全問題有所改善,但是IPSEC對應用層的安全威脅仍無能為力。更替代不了傳統的網絡安全設備,因終端用戶或管理員的原因而出現簡單的配置錯誤需要由防火墻進行彌補。

通過安裝有雙協議棧的LINUX主機,加載SQUID程序,配合系統自帶的NETFILTER/IP6TABLES防火墻,即可架設實現IPv4與IPv6互通的安全網關。

1 應用服務代理

Squid是目前最常用的代理軟件之一,支持FTP、gopher 和HTTP 協議。從版本2.5開始,squid開始發布IPv6補丁以支持IPv6,3.0版本后自動支持IPv6。

Squid實現代理的原理是NAT(Network Address Translation),Squid中的NAT實際上是一個socket替換機制,在配置雙棧的主機上,它可替換source socket、destination socket,不論是IPv4還是IPv6,因此,可以利用SNAT和DNAT輕松實現透明代理,重定向和轉發功能。

Squid默認并未開啟IPv6,編譯安裝時須加入--enable-IPv6命令開啟IPv6支持。

#./configure--prefix=/var/squid

--sysconfdir=/etc

--enable-arp-acl

--enable-linux-netfilter

--enable-pthreads

--enable-err-language=\"Simplify_Chinese\"

--enable-storeio=ufs,1

--enable-default-err-language=\"Simplify_Chinese\"

--enable-IPv6

同時在訪問控制列表中加入如下語句以控制使IPv4和IPv6的數據包通過squid。

acl to_IPv6 dst IPv6

tcp_outgoing_address 1.2.3.4 to_IPv6

tcp_outgoing_address 2001:da8::aaaa to_IPv6

以HTTP服務為例,當IPv4用戶訪問IPv6的HTTP服務時,會將請求送往squid服務器IPv4地址的3128端口, squid根據配置策略中開放得服務和訪問控制列表中的規則來處理該請求。由于請求的是HTTP服務,目的地址是IPv6,squid將通過IPv6地址將該請求轉發出去。如果是IPv6用戶訪問IPv4的HTTP服務,則將請求送往squid服務器IPv6地址的3128端口,通過squid的IPv4地址將該請求轉發,如圖1所示。

對沒有在squid.conf中定義的源地址、目的地址、服務類型,squid默認將對該請求拒絕處理(deny all)。

2 Netfilter/ ip6tables包過濾器

雖然Netfilter/iptables IP信息過濾系統被稱為單個實體,但它實際上由兩個組件Netfilter和ip6tables組成。Netfilter組件也稱內核空間(KernelSpace),ip6talbes被叫做用戶空間(UserSpace)。Linux2.4內核中Netfilter是新的用來實現防火墻的過濾器,通過簡單的構造一個內核模塊可實現網絡新特性的擴展。IP6tables是用來指定Netfilter規則的用戶工具。

2.1 Netfilter框架

Netfilter框架包括一下三個要點:

1) 為每種網絡協議定義一套鉤子函數,這些鉤子函數在數據報流過協議棧的幾個關鍵點被調用。協議棧將把數據報及鉤子函數標號作為參數調用netfilter框架。

2) 內核的任何模塊可以對每種協議的一個或多個鉤子進行注冊,實現掛接,這樣當某個數據包被傳遞給netfilter框架時,內核能檢測是否有任何模塊對該協議和鉤子函數進行了注冊。若注冊了,則調用該模塊的注冊時使用的回調函數,這樣這些模塊就有機會檢查(可能還會修改)該數據包、丟棄該數據包及指示 netfilter將該數據包傳入用戶空間的隊列。

3) 排隊的數據包是被傳遞給用戶空間的異步地進行處理。一個用戶進程能檢查數據包,修改數據包,甚至可以重新將該數據包通過離開內核的同一個鉤子函數中注入到內核中。如圖2所示。

圖中一共用到5個鉤子函數,

1) NF_IP6_PRE_ROUTING :接收進入網絡層的數據包,并按要求進行源地址轉換;

2) NF_IP6_LOCAL_IN : 進入本地主機的數據包經過改點;

3) NF_IP6_FORWARD :要轉發的數據包通過該點;

4) NF_IP6_POST_ROUTING:要出網絡設備的數據包,并可按要求進行目的地址轉換

5) NF_IP6_LOCAL_OUT:本地主機發出的數據包經過改點。

內核模塊可以對一個或多個這樣的鉤子函數進行注冊掛接,并且在數據報經過這些鉤子函數時被調用,每個注冊函數處理完后,將返回一個整形常量,內核根據這個返回值來對數據包作進一步的處理,內核常量定義如下:

1) NF_ACCEPT繼續正常傳輸數據報;

2) NF_DROP 丟棄該數據報,不再傳輸;

3) NF_STOLEN模塊接管該數據報,不要繼續傳輸該數據報;

4) NF_QUEUE對該數據報進行排隊(通常用于將數據報給用戶空間的進程進行處理);

5) NF_REPEAT再次調用該鉤子函數.

2.2 IP6tables組件

IP6tables是一個管理內核包過濾的工具,可以加入、插入或刪除核心包過濾表格中的規則。實際上真正來執行這些過濾規則的是Netfilter。

它提供三種類型的規則表(tables),并要求數據報流經指定的規則表。這種數據報選擇用來實現數據報過濾(filter表),網絡地址轉換(nat表)及數據報處理(mangle表)。每個表由內建鏈(built-in chains)組成.在filter表中維持了3個內建鏈,分別INPUT、OUTPUT和 FOR-WARD 鏈、NAT表維持3個內建鏈:PREROUTING(用于目的NAT)、OUTPUT和 POSTROUTING(用于源NAT),mangle表包含 PREROUTING 和OUTPUT鏈。

鏈表中的每個元素都是指向Netfilter中的鉤子函數。在相應的鉤子點調用鉤子函數時,根據協議族和鉤子點找到相應的鏈表入口,用戶可以在這三條過濾鏈表中配置不同的過濾規則,當數據包到達相應的過濾鏈表時, 系統便逐一檢查此數據包是否滿足過濾規則條件,如果數據包和設定規則相匹配,則執行該規則,否則執行下一條規則,如果全部都不匹配,則按照缺省規則執行,一般缺省規則為丟棄數據包(DROP)。

根據源地址和目的地址不同,數據包將調用不同的鏈表,以源和目的均不是本地的數據包為例,數據包將調用如下鏈表進行轉發:

線路---->接口---->mangle. PREROUTING---->nat. PREROUTING----> [routing] ---->mangle. FORWARD---->mangle. POSTROUTING---->nat. POSTROUTING---->接口---->線路---->。

其中,[routing]指本地路由策略。

IP6tables配置命令的基本形式如下:

IP6tables-[AD]chain-name rule-specification

命令中各項參數解釋如下:

1) A:添加規則,D:刪除規則;

2) Chain-name指INPUT、OUTPUT、FORWARD;

3) Rule-specification指定具體規則內容,可指定協議(-p)、源地址(-s)、目的地址(-d)、數據包進入的網絡接口(-i)、數據包輸出的網絡接口(-o)、源端口(--sport)、目的端口(--dport)、滿足規則所執行的動作(包括ACCEPT、DROP、QUEUE、RETURN)。

例如:拒絕IPv6網絡上的某網段用戶訪問445端口可添加如下規則:

#ip6tables -A INPUT -i eth0 -p tcp -s 2001:da8:abcd::/48 --dport 445 -j DROP

3 實現

包過濾防火墻和squid代理雙效合一。由Netfilter/ip6tables對底層通信的協議、端口、ip進行選擇,代理服務器對應用層服務進行過濾,構筑起一道從網絡層到應用層的安全屏障。

當數據包進入此雙效防火墻,將對該數據包的包頭進行檢驗,查看ip6tables規則中是否和該數據包中的源地址、目的地址、協議、端口相符合,根據規則來決定該數據包的流向。而squid對從ip6tables防火墻轉發過來的數據包將通過訪問控制列表進一步過濾。

比如,允許源地址為2002:da8::bb的客戶機訪問目的地址為2000:da8::aa的http服務,可通過squid可通過IP6tables添加規則將請求送往squid監聽HTTP服務的3128端口,由squid完成訪問,將最終信息返還給用戶。

#IP6tables -t nat -A PREROUTING -i eth0 -s 2002:da8::bb/128 -p tcp --dport 80 -j REDIRECT --to-ports 3128(eth0為防火墻主機輸入接口)

4 結論

在IPv6過渡階段,抓住用戶是關鍵,通過IPv4/IPv6雙向代理的方式實現兩種協議棧的網絡互訪,用戶無需進行地址轉換,也不必重寫應用或升級IT基礎架構,即可實現應用、服務和數據在IPv4和IPv6環境下的順利過渡。通過代理實現IPv4/IPv6互訪,對用戶來說完全透明,對工作人員來說實現簡單,在此基礎上架設雙棧雙效防火墻,實現網絡層到應用層的安全保障,在易用性、實用性、安全性、經濟性上來說都是不錯的選擇。

參考文獻:

[1] Ellermann U.IPv6 and Firewalls[C]. Proc.of 14th International Congress on Computer and Communications Security Protection,1996.

[2] 王常杰,秦浩,王育民.基于IPV6的防火墻設計[J].計算機學報,24(2).

[3] Moske M.IPv6 Packet Handling in inux2.4[D]. University Mannheim.2002.

[4] 董劍安,王永剛,吳秋峰.iptables防火墻的研究與實現[J].計算機工程與應用,2003(17):161-163.

[5] 范振岐.基于 Linux 的IPv6復合防火墻的設計[J].網絡安全技術與使用,2006(2):35-37.

[6] 朱立才,楊壽保,李舜洪.Netfilter/iptables 防火墻性能優化方案與實現[J].計算機工程與應用,2006(15):117-120.

主站蜘蛛池模板: 黄色一级视频欧美| 无码免费视频| 中文字幕啪啪| 久久午夜影院| 99ri精品视频在线观看播放| 久久性视频| 91色爱欧美精品www| 欧洲亚洲欧美国产日本高清| 亚洲天堂免费| 99re这里只有国产中文精品国产精品| 亚洲欧美人成人让影院| 欧美成人影院亚洲综合图| 亚洲欧美成aⅴ人在线观看| 免费在线色| 国产精品午夜电影| 老色鬼久久亚洲AV综合| 91网红精品在线观看| 国产精品自拍露脸视频 | 久久亚洲综合伊人| 国产一区在线观看无码| 日韩精品成人网页视频在线 | 欧美精品在线免费| 欧美www在线观看| 国产一级在线观看www色| 色综合中文字幕| 91伊人国产| 91视频99| 国产三级国产精品国产普男人| 日韩欧美在线观看| 中文字幕久久精品波多野结| 呦系列视频一区二区三区| 手机精品视频在线观看免费| 日本成人一区| 久久天天躁狠狠躁夜夜2020一| 亚洲国产精品无码久久一线| 国产精品污污在线观看网站| 亚洲视频一区在线| 久久这里只有精品2| 久久一本日韩精品中文字幕屁孩| 99精品伊人久久久大香线蕉| 欧美伦理一区| 啪啪免费视频一区二区| 亚洲制服丝袜第一页| 欧洲亚洲欧美国产日本高清| 国产99视频在线| 99久久精品视香蕉蕉| 蜜芽国产尤物av尤物在线看| 亚洲大尺码专区影院| 国产欧美视频一区二区三区| 国产精品2| 最新国产你懂的在线网址| 性视频久久| 色香蕉影院| 国产视频你懂得| 亚洲欧美成aⅴ人在线观看| 亚洲男人的天堂视频| 露脸国产精品自产在线播| 91久久性奴调教国产免费| 99久久亚洲精品影院| 永久免费无码成人网站| 亚洲一区二区三区在线视频| 女同国产精品一区二区| 日本高清免费一本在线观看| 久久精品人人做人人| 在线看片免费人成视久网下载| 国产亚洲欧美在线中文bt天堂 | 亚洲综合色区在线播放2019| 中文字幕乱码中文乱码51精品| 久久99精品国产麻豆宅宅| 亚洲无线一二三四区男男| 国产第四页| 欧美日韩导航| 91蝌蚪视频在线观看| 国产精品久久久久久久久kt| 国产精品妖精视频| 午夜福利无码一区二区| 精品91在线| 亚洲毛片网站| 亚洲国产AV无码综合原创| 欧美日韩亚洲国产主播第一区| 国产福利小视频在线播放观看| 国产不卡一级毛片视频|