日本免费全黄少妇一区二区三区-高清无码一区二区三区四区-欧美中文字幕日韩在线观看-国产福利诱惑在线网站-国产中文字幕一区在线-亚洲欧美精品日韩一区-久久国产精品国产精品国产-国产精久久久久久一区二区三区-欧美亚洲国产精品久久久久

Ipf+ipnat+ipfw建立帶流量控制的透明網(wǎng)關(guān)


FreeBSD新手,第一次寫心得,不清楚之處還敬請?jiān)?。有問題的地方還望不吝指教!謝謝!
近日因?yàn)樗奚岬腁DSL貓的路由功能被電信屏蔽,因此使用FreeBSD5.1 ipf ipnat ipfw 雙網(wǎng)卡 pppoe搞定帶流量控制的透明網(wǎng)關(guān) 。
原來使用ipfw natd,因?yàn)閜ppoe得到的tun0的ip是動態(tài)的,無法做到端口映射 。雖然可以成功代理和可控,但是沒有達(dá)到預(yù)定目的,故棄用 。
下面是我的配置過程:
(1)當(dāng)然是重新編譯內(nèi)核 。(注:如果你是新裝的系統(tǒng),建議修改完CPU類型以后來一次make world,可以提高系統(tǒng)的效率 。)
添加下列項(xiàng)目:
optionsIPSTEALTH是防火墻透明
optionsIPFILTER打開ipf
optionsIPFILTER_LOG打開ipf的日志
optionsIPFILTER_DEFAULT_BLOCKipf默認(rèn)規(guī)則,deny all
然后編譯內(nèi)核 。
注意:如果要ipf和ipfw同時(shí)使用,切記要將ipf編譯到內(nèi)核里面,然后再kld ipfw 。
如果將兩者都編譯進(jìn)內(nèi)核會導(dǎo)致系統(tǒng)啟動的時(shí)候卡在一個(gè)檢測網(wǎng)絡(luò)接口的地方 。
(2)安裝新內(nèi)核以后,就是詳細(xì)配置相關(guān)規(guī)則了 。
(a):ppp撥號的設(shè)置比較簡單,下面就給出一個(gè)示范性的ppp.conf文件,內(nèi)容如下:
default:
set log Phase Chat LCP IPCP CCP tun command
set redial 15 28800
set reconnect 15 28800
pppoe:
#加入在kernel中配置的會連接ADSL設(shè)備的網(wǎng)卡的名稱,我的是rl0
set device PPPoE:rl0
set mru 1492
set mtu 1492
set speed sync
enable lqr
set lqrperiod 5
set cd 5
set dial
set login
set timeout 0
set authname Your UserName used to login
set authkey Your PassWord used to login
set ifaddr 10.0.0.1/0 10.0.0.2/0 255.255.255.0 0.0.0.0
add default HISADDR# Add a (sticky) default route
enable dns
(b):在rc.conf中添加下列項(xiàng)目:
ppp_enable="YES"
ppp_mode="ddial"斷線自動重?fù)?
ppp_mode="background"
ppp_profile="pppoe"根據(jù)你的ppp.conf文件設(shè)置,這里我使用的是pppoe
ipfilter_enable="YES"
ipnat_enable="YES"
gateway_enable="YES"
然后重新啟動系統(tǒng)使系統(tǒng)自動撥號,啟用ipf防火墻 。
注意:因?yàn)槟J(rèn)的ipf規(guī)則是block all,因此使用網(wǎng)絡(luò)管理配置的此時(shí)會失去與系統(tǒng)的聯(lián)系 。
因此需要預(yù)先在/etc目錄中添加暫時(shí)性的ipf.rules項(xiàng)目 。
暫時(shí)性的ipf.rules內(nèi)容如下:pass in all
pass out all
(c):重新啟動以后就可以看到ipf已經(jīng)起到作用了 。又因?yàn)槲覀兪褂玫氖莗ppoe撥號,
因此得到的是動態(tài)ip 。我們要想詳細(xì)配置防火墻和端口映射就需要寫一個(gè)腳本(ipf.sh)來自動生成ipf.rules和ipnat.rules 。
然后把它放到自啟動目錄中,加上可執(zhí)行屬性,使系統(tǒng)啟動以后可以自動生成規(guī)則集 。
示范性腳本如下:
#!/bin/sh
##########################################
#ipf.sh 是一個(gè)自動檢測ADSL分配的IP地址和利用這個(gè)IP地址動態(tài)創(chuàng)建IPFILTER過
#濾規(guī)則的腳本 。
#使用方法:
#步驟一:要確定使用ipf.sh腳本的服務(wù)器能正常使用ADSL撥號和IPFILTER能正常運(yùn)
#行 。
#步驟二:把ipf.sh腳本修改成你的實(shí)際網(wǎng)絡(luò)情況 。修改如下:
#內(nèi)部網(wǎng)卡設(shè)備號、內(nèi)部網(wǎng)段、服務(wù)器IP地址、ADSL撥號網(wǎng)絡(luò)設(shè)備號或自己增加網(wǎng)絡(luò)設(shè)備
#和相應(yīng)的過濾規(guī)則 。
#步驟三:把ipf.sh移動到 /usr/local/etc/rc.d中,記得加上可執(zhí)行屬性 。
################################################################內(nèi)部網(wǎng)卡設(shè)備號vr0
INTARNDEV="vr0"
INTARN=`ifconfig $INTARNDEV | grep inet | cut -d " " -f 2`
#內(nèi)部網(wǎng)段192.168.0.0/24
INTARNNET="192.168.0.0/24"
#服務(wù)器IP地址
#注意:服務(wù)器IP地址為0.0.0.0時(shí)是不會做相應(yīng)的服務(wù)映射,只在填寫了正確的IP地址后才會映射到該IP地址上 。
INTARNFTP="0.0.0.0" #FTP服務(wù)器
INTARNSSH="0.0.0.0" #SSH服務(wù)器
INTARNEMAIL="0.0.0.0" #EMAIL服務(wù)器

推薦閱讀