IPNAT+Ipfilter+Bridge 超級防火牆
2009-05-13 13:10:32来源:未知 阅读 ()
近來有個朋友的公司『公司約200多台PC』,他們所使用的防火牆ipfirewall+natd出現問題!迫使他們改用ipfilter+ipnat,於使用ipfilter+ipnat後,我這位朋友一直贊譽有佳,因此引發了我開始研究ipfilter+ipnat這套防火牆軟體。
ipfilter+ipnat是由OpenBSD開發出來可免費使用的防火牆軟體,跨平台可以使用於NetBSD、OpenBSD、FreeBSD、 Linux 等OS,甚至連商業版的Solaris也都可使用,可說是相當優秀的一套防火牆軟體。
ipfilter+ipnat 到底有甚麼吸引力呢?可以讓一位原本癡迷使用 FreeBSD CoreTeam 所開發出的ipfirewall+natd 者,再去學習 ipfilter+ipnat呢?其中我想最主要的因素即是,ipfilter+ipnat 使用於大型網路架構中,IP轉換的效能比較好同時具有跨平臺優異性,光這兩項我想就足夠吸引ipfirewall+natd的擁護者轉而投抱再學習 ipfilter+ipnat,而原本的ipfirewall+natd並不是沒有其優點,雖然效能差了些但是DUMMYNET可做頻寬控管就是其優點,這就是 ipfilter 所沒有的,唉~ 這真是魚與熊掌不能兼得 ~
Setp 1.
重新編輯新的Kernel 同時加入bridge 的option
#cd /usr/src/sys/i386/conf/
#cp GENERIC /etc/NEWIPF
#ln -s /etc/NEWIPF
#vi NEWIPF
ident NEWIPF # ident記得要改成新的NEWIPF
options BRIDGE # 加入這行即可
#config NEWIPF#cd ../compiler/NEWIPF#make depend all install
Setp 2.
驅動 ipfilter 我們選擇kldload 直接驅動,而不需重新編輯 kernel 可直接驅動 ipfilter
#cd /etc
#vi rc.load # 編輯 rc.load 使重開機 ipfilter 可自動執行,內容如下:
kldload ipl.koipf -Fa -f /etc/ipf.rulesipnat -CF -f /etc/ipnat.rulessysctl net.inet.ip.forwarding=1sysctl net.link.ether.bridge.enable=1sysctl net.link.ether.bridge.ipf=1sysctl net.link.ether.bridge.config=fxp0,de0
Setp 3.
編輯 ipf.rules 和 ipnat.rules 及 rc.conf 這三個設定檔
#vi /etc/ipf.rules # ipf 的規則有符合last match 所以會重頭一直向下比對直到最後一條規則,若有加 quick 則是有優先 match。
pass in allpass out all
#vi /etc/ipnat.rules # ipnat 的 rule 有先後順序,排在前面的會優先比對。
map fxp0 10.10.10.0/24 -> 168.168.168.253/32
#vi /etc/rc.conf
hostname="ipf.ntut.idv.tw"defaultrouter="168.168.168.254"ifconfig_fxp0="inet 168.168.168.253 netmask 255.255.255.0"ifconfig_de1="inet 10.10.10.254 netmask 255.255.255.0"usbd_enable="YES"sshd_enable="YES"
#reboot 存檔後重開機後即完成 ...
指令說明:
#kldstat ( 看ipfilter有無被驅動 )
#ipf -V ( -V查看ipfilter的版本 )
#ipf -D ( 停止 ipfilter )
#ipf -E ( 啟動 ipfilter )
#ipf -Fa -f /etc/ipf.rules ( -Fa清除所有rule,-f 導入新的rule,為更新ipf.rules後重新啟動必下指令)
#ipfstats ( 統計所有封包狀態 )
#ipfstats -o ( -o看所有output的rule )
#ipfstats -i ( -i看所以input的rule )
#ipmon ( 觀查所有ip及封包走向 IP -> host, PORT -> protocol )
#ipnat -C ( 清除所有規則 )
#ipnat -l ( 查看目前設置的轉換規則及已經執行過後的轉換關係 )
标签:
版权申明:本站文章部分自网络,如有侵权,请联系:west999com@outlook.com
特别注意:本站所有转载文章言论不代表本站观点,本站所提供的摄影照片,插画,设计作品,如需使用,请与原作者联系,版权归原作者所有
- FreeBSD 内建的防火墙指令ipfw英译汉 2009-05-13
- 利用PF来实现多路由表 2009-05-13
- OpenBSD 3.x 防火墙 PF配置新手指南 2009-05-13
- 通过pf防火墙来封堵恶意猜测登陆ssh的IP 2009-05-13
- PF防火墙详解 2009-05-13
IDC资讯: 主机资讯 注册资讯 托管资讯 vps资讯 网站建设
网站运营: 建站经验 策划盈利 搜索优化 网站推广 免费资源
网络编程: Asp.Net编程 Asp编程 Php编程 Xml编程 Access Mssql Mysql 其它
服务器技术: Web服务器 Ftp服务器 Mail服务器 Dns服务器 安全防护
软件技巧: 其它软件 Word Excel Powerpoint Ghost Vista QQ空间 QQ FlashGet 迅雷
网页制作: FrontPages Dreamweaver Javascript css photoshop fireworks Flash