歡迎來到Linux教程網
Linux教程網
Linux教程網
Linux教程網
您现在的位置: Linux教程網 >> UnixLinux >  >> Unix知識 >> 關於Unix

構建Linux系統下U盤路由器、防火牆

TCP/IP協議是在 Unix 上發展起來的,並在 Linux系統 中得到了很好地繼承,這使TCP/IP成為Linux系統不可分割的組成部分。因為Linux系統中TCP/IP棧的實現尤為成熟,Linux更是號稱擁有業界最強的路由功能,加之其靈活、容易定制的優點,所以深受資深網管和高水平 TCP/IP協議是在Unix上發展起來的,並在Linux系統中得到了很好地繼承,這使TCP/IP成為Linux系統不可分割的組成部分。因為Linux系統中TCP/IP棧的實現尤為成熟,Linux更是號稱擁有業界最強的路由功能,加之其靈活、容易定制的優點,所以深受資深網管和高水平用戶的青睐。用戶都是通過網關連接到互聯網。網關多數是專用的路由器和交換機。目前,Linux的通用性越來越強,經過適當地配置之後,它完全可以擔當互聯網的物理基石——路由器這一重要角色。互聯網上的高水平開發者對Linux進行精簡和定制後,推出了Linux軟件coyote Linux(北美土狼)是一款非常小巧方便的軟件路由器和防火牆軟件,它以一張軟盤為載體,可以使用一些古老的機器做為代理防火牆,而它的功能卻很強大,本文簡要介紹一些coyote Linux的安裝及配置使用。

  它可以僅通過一張軟盤來運行,有效降低了對硬件資源的要求,並提高了工作效率。coyote Linux聲稱可以在486以上的PC機上順暢運行,而且只需8MB以上的內存。它的用途和設計思路與嵌入式系統非常類似。和另外一個Linux路由器/防火牆軟件——LRP相比,它們的工作原理基本一致,不同之處在於LRP的配置方法相對比較原始,每一步都需要命令行或修改配置文件來進行,而coyote Linux了交互式的選單向導配置程序,更易於操作。另外一個其中比較常見、配置簡單的是BBIagent,但是現在已經不是免費的了,每台路由器的軟件注冊費為 36 美元。已經完全背離開源道路。
coyote Linux 官方網址:http://www.vortech.net/ 最新版本是2005年6月24日推出的2.24。主要功能:

  1.支持靜態IP地址連接方式,支持普通調制解調器撥號方式,支持PPPOE也就是ADSL的連接方式;

  2. 程序內建DHCP服務器功能;

  3. 防火牆,包括七層過濾;

  4. IP自動轉發,支持令牌回環,也就是俗稱雙通,能實現端口映射,將內部服務器發布出去。 5. 遠程管理支持中文。

  6. 可以設置為DNS服務器。

  7. 可以配置為無線接入點或者打印服務器。

  系統要求

  作為路由器的計算機需要具有486以上的中央處理器、16MB以上的內存、軟驅、連接局域網的網卡和連接互聯網的網絡設備,該設備可以是連接XDSL的網卡,也可以是線纜調制解調器(Cable Modem)或普通的調制解調器。支持以下網卡:

  3com509 Modul:3c509
  3com900 Modul:3c59x
  Intel Ethernet Pro 100 Modul:eepro100
  3com590 Modul:3c59x
  RTL8139 Modul:8139cp eller8139too

  下面詳細介紹coyote Linux的安裝及配置使用的步驟:

  將安裝coyote Linux軟件的計算機加入局域網,如果是用ADSL/Cable調制解調器方式連接互聯網,需要兩塊網卡,一塊接入局域網,一塊連接ADSL/Cables設備。筆者網絡拓撲見圖1。



圖1 網絡拓撲結構步驟一:

  軟件下載安裝:現在從http://www.coyotelinux.com/ 上可以下載到Linux版和Windows版的制作程序,為了體現開源精神我選擇了Linux版本:

#wegt http://downloads.vortech.net/cgi-bin/dlmgr/download?ChannelID=5&DownloadID=22

#tar vxf coyote-2.24.tar.gz;#cd coyote-2.24

#./makefloppy.sh

Coyote floppy builder script v2.9

Please choose the desired capacity for the created floppy:

1) 1.44Mb (Safest and most reliable but may lack space needed

for some options)

2) 1.68Mb (Good reliability with extra space) - recommended

3) 1.72Mb (Most space but may not work on all systems or with

all diskettes)

  按照提示選擇1。

  步驟二:選擇接入互聯網方式

Please select the type of Internet connection that your system uses.

1) Standard Ethernet Connection

2) PPP over Ethernet Connection

3) PPP Dialup Connection

  下面系統會自動工具檢測到的網絡設備,確定連接互聯網所使用的協議類型。如果是安裝了ADSL或線纜調制解調器,選擇2;如果是專線選擇1;如果是普通調制解調器撥號上網,則要使用3。以下操作是1為例。

  步驟三:設置網絡參數

  這個需要根據自己內部ip地址的分配情況進行設置。例如:如果內部網的ip是192.168.0.1/24,這裡就要把ip設置成192.168.0.X。而其他的機子要將網關設置成這個地址。以上三個步驟選項見圖2。



圖2 相關配置選項步驟四:選擇是否把coyote Linux設置為dhcp服務器給其他的機器分配ip地址。可以根據自己的實際情況決定用還是不用。缺省設置是把它配置為dhcp服務器,IP分配地址:192.168.0.100-192.168.0.200。

  步驟五:是否將coyote Linux構建“Demilitarized Zone”(DMZ)的區域。缺省設置是否。最簡單的情況是直接將防火牆放置在外網和企業網絡之間,所有流入企業網絡的數據流量都將通過防火牆,使企業的所有客戶機及服務器都處於防火牆的保護下。然而這種結構畢竟比較簡單,企業中有許多服務器、客戶機等資源需要保護,不同的資源對安全強度的要求也不同。不能用對待客戶機的安全級別來對待服務器,這樣服務器將會很危險;同樣,也不能用對待服務器的安全級別來對待客戶機,這樣用戶會感覺很不方便。針對不同資源提供不同安全級別的保護,可以考慮構建一個叫做“Demilitarized Zone”(DMZ)的區域。DMZ可以理解為一個不同於外網或內網的特殊網絡區域。DMZ內通常放置一些不含機密信息的公用服務器,這樣來自外網的訪問者可以訪問DMZ中的服務,但不可能接觸到存放在內網中的公司機密或私人信息等。許多防火牆產品都提供了DMZ的接口。硬件防火牆由於使用專門的硬件芯片,所以在性能和流量上有絕對的優勢。

  步驟六:設置DNS服務器選項

  為局域網內計算機提供域名服務代理,加快主機名對應IP地址的查找,從而提高訪問網頁的速度,可自設主機名稱和IP地址的解析。

  步驟七:選擇WEB管理語言。中文一般情況下選擇CHN 。coyote Linux支持11國家的語言。見圖3。



圖3 語言設置選項

  步驟八,選擇日志服務器的地址,日志對於安全來說非常重要,他記錄了系統每天發生的各種各樣的事情,你可以通過他來檢查錯誤發生的原因,或者受到攻擊時攻擊者留下的痕跡。日志主要的功能有:審計和監測。他還可以實時的監測系統狀態,監測和追蹤侵入者等等。

  步驟九:系統自檢,提示輸入網卡中斷、IO是否啟用7層過濾等選項。RTL8139的pci接口的網卡,直接被支持的,IO地址和IRQ不需要設置的,直接使用會車鍵NEXT,如果你用的是ISA網卡就必須填寫。完成後會系統當前信息,見圖4。



圖4 系統信息步驟十:完成操作啟動Linux路由器、防火牆

  按照提示加入一張1.44MB的軟盤,制作過程自動完成,大約需要250秒鐘。coyote Linux軟盤就完成了。用這張軟盤啟動一台打算作為路由器的機器,在bios裡設置成軟驅啟動。

  步驟十一:遠程管理coyote Linux 路由器、防火牆

  目前主要的遠程連接技術大致分為以下兩種:一種是基於浏覽器的Web界面方式,另一種是基於命令行的方式。命令行的管理方式適合進行初始化、網卡配置等基本操作,不適合做豐富的管理功能。Web管理方式是另一種管理工具。這種方式提供了簡單的管理界面,直觀,是一種重要的管理工具,適合進行復雜的配置,連接多台服務器,同時支持豐富的審計和日志的功能。下面分別這介紹這兩種方法。

  SSH命令行方法:

  目前通過SSH的遠程管理工具在安全性上已經相當可靠,因為從目前來看,如果要對這些遠程管理方式進行攻擊,所有的可能就是在傳輸中。在傳輸中,假設所有的信息都被截下來,由於解密的工作量非常大,它依然是安全的。如果使用IDA加密算法,用每秒鐘可以猜測10億密碼的分析機器,需要2的19次方/年才可以解密。SSH由於它本身是一種協議,所以對於異構平台之間,不存在兼容性問題,是一種跨平台的方式。在Linux客戶端下使用SSH,優點是操作更方便無須其他軟件。用戶只需要使用系統提供的默認的配置文件“/etc/ssh/ssh_config”,並且使用如下簡單的命令即可登錄:

clearcase/" target="_blank" >cccccc border=0>

ssh -l root 192.168.0.1

[email protected]’s password: *******



圖5 通過SSH登錄的管理界面

  下面簡單介紹一下主菜單:

  1)Edit main configuration file :修改主配置文件。

  2) chang system password :修改系統密碼。

  3)Edit rc.local script file :修改/etc/rc.d/rc.local配置文件。

  4)Custom firewall rule :自定義防火牆規則。

  5)Edit Firewall configuration :修改防火牆配置。

  6)Edit port forward :修改端口轉發。

  c) Show running configuration :查看正在運行的配置。

  f)Reload firewall :重新加載防火牆。

  r)Reboot system :重新啟動系統。

  w)Write configuration to disk :把配置文件寫入磁盤。

  q)quit :不存盤退出。

  e)exit :存盤退出。

  另外如果使用Windows操作系統的話,可以使用putty。該工具目前使用得相當普遍,可以從網上免費下載。最新版本為: putty 0.58。操作非常簡單筆者就不贅述了。

  浏覽器管理方式:

  浏覽器方式管理界面一般需要完成對系統的配置、管理和監控。配置好之後,通過一個Web服務器、網絡上任何一個計算機的浏覽器都可以管理它。在浏覽器的IP地址中輸入它的地址和管理端口號8180(Coyote Linux自定義的端口為8180),然後輸入管理員口令。即可見到如圖所示管理界面。通常使用浏覽器連接遠程Linux服務器用於:遠距離的技術支持。以前一般技術人員和用戶之間的電話交流來進行,這種交流既耗時又容易出錯。許多用戶對Linux系統知道得很少,然而當遇到問題時,有了遠程控制技術,技術人員就可以遠程控制用戶的電腦,就像直接操作本地電腦一樣,只需要用戶的簡單幫助就可以得到該機器存在的問題的第一手材料,很快就可以找到問題的所在,並加以解決。見圖5。



圖6 浏覽器遠程管理界面步驟十二:高級應用,以其他存儲介質使用coyote Linux

  coyote Linux 官方網址的鏈接說明其不支持USB啟動(http://www.vortech.net/faq/?myfaq=yes&id_cat=2&categories=Coyote+Linux+2.x+-+General#28 )。但是為了使軟盤Linux路由系統具備更多的功能,必然要求在軟盤空間上容納更多的內容。然而軟盤空間有限,讀寫速度比較慢,也容易被損壞。現在比較新的計算機都支持USB閃盤進行啟動,所以可以將軟盤中的文件拷貝到USB閃盤中,來提高系統工作的性能。需要的軟件包括syslinux(由它來引導Coyote Linux,下載站點:http://downloads.planetmirror.com/pub/linux-router/utils/syslinux-1.48.tar.bz2)。步驟:

  1.使用FAT格式對其進行格式化,建立USB啟動盤目錄,注意使用正確的 USB 盤設備名稱。mkdosfs 命令包含在 dosfstools工具包中。為了能在 USB 閃盤引導後啟動內核,我們要在 USB 閃盤上放入一個啟動引導程序。盡管任何引導裝載程序(比如 LILO)都應該可以勝任這個工作,不過還是使用 SYSLINUX 更方便。主要原因是是它可以使用 FAT16 分區,而且只需要編輯一個文本文件就能對其進行配置。任何支持 FAT 文件系統的操作系統可以用來改變啟動引導器的配置文件。

#mkdosfs /dev/sdb1

#mkdir /mnt/usb

  2.掛載USB啟動盤:

#mount –t vaft /dev/sda1 /mnt/usb

  3. 拷貝、修改配置文件

  將coyote的系統軟盤中除了“LDLINUX.sys”之外的文件和目錄全部拷入USB盤的根目錄中。下載支持usb啟動 的coyote內核文件(鏈接:http://www.cnrot.cn/upload/2005_10/05100614353469.rar ):linux覆蓋掉USB盤的linux這個文件。然後將syslinux.com這個文件也拷貝到USB盤中。用編輯器修改USB盤上syslinux.cfg這個文件的一行:

  append=load_ramdisk=1 initrd=root.tgz initrd_dyn=minix ramdisk_size=4096 root=/dev/ram0 boot=/dev/fd0,vfat

  改為:

  append=load_ramdisk=1 initrd=root.tgz initrd_dyn=minix ramdisk_size=4096 root=/dev/ram0 boot=/dev/sda1,vfat

  4. 首先現在的主板大多數都支持從USB盤啟動,啟動時,需要到BIOS下設置從USB設備啟動。進入BIOS的Advanced BIOS Features下的first boot device選項,就有usb-fdd、usb-hdd、usb-zip、usb-cdrom等usb設備的啟動選項了,如果是以usb-hdd啟動,運行命令:“syslinux -s c:”

  5.常見問題:如果您的系統拒絕從 USB 閃盤引導,那麼可能是因為它含有無效的主引導扇區記錄(MBR)。您可以使用 install-mbr 命令來修復這個問題,該命令來自 mbr 軟件包。另外某些USB閃盤(朗科優盤或魯文的易盤)要先去掉加密系統,魯文的易盤設密碼為空即可,否則mount掛載上的只是usb-fdd。

  另外在完成配置後,可以省去顯示器、硬盤、鍵盤、鼠標等,從而大大降低硬件成本。另外除了本文介紹的Linux軟盤路由器、防火牆外,coyote Linux還可以作為打印服務器、無線接入點。

  總結:Coyote Linux 是一個單磁盤Linux套件,用來設置各種網絡服務,比如互聯網連接共享,防火牆;無線接入點等。最大的特點就是所有需要的組件都濃縮在一張軟盤中,使用非常方便。它可以使局域網的計算機可以共享一條寬帶線路訪問互聯網,並同時可在互聯網和局域網間建立起一道安全的防火牆。該方案適用於家庭、SOHO用戶等使用Linux系統作為路由器的網絡環境。

Copyright © Linux教程網 All Rights Reserved