亚洲视频二区_亚洲欧洲日本天天堂在线观看_日韩一区二区在线观看_中文字幕不卡一区

公告:魔扣目錄網(wǎng)為廣大站長提供免費收錄網(wǎng)站服務,提交前請做好本站友鏈:【 網(wǎng)站目錄:http://www.430618.com 】, 免友鏈快審服務(50元/站),

點擊這里在線咨詢客服
新站提交
  • 網(wǎng)站:51998
  • 待審:31
  • 小程序:12
  • 文章:1030137
  • 會員:747


自己動手,DIY一臺硬件WAF

 

前言

硬件WAF,好像是很高端,很神秘的樣子,而且很貴。今天向大家展示如何自己動手,diy一臺硬件WAF!

自己動手,DIY一臺硬件WAF

 

軟硬件需要

a、服務器一臺

b、系統(tǒng):linux centos

c、軟件:ShareWAF

d、硬件需求:Bypass網(wǎng)卡

簡單說明:

a、使用linux系統(tǒng),是為了在系統(tǒng)中搭建網(wǎng)橋,有了網(wǎng)橋,就可以實現(xiàn)硬件WAF的透明代理效果。

b、軟件用ShareWAF,ShareWAF是一款WAF軟件,可以在云端部署,也支持灌裝硬件(這一點很重要)。而且,防護功能不錯,目前最大支持同時保護256個網(wǎng)站。

c、Bypass網(wǎng)卡,主要是實現(xiàn)斷電、系統(tǒng)故障等情況下自動將硬件“變”成為網(wǎng)線,實現(xiàn)Bypass效果,達到各種問題下都不中斷業(yè)務功能,也就是實現(xiàn)高可用。

如果沒有Bypass網(wǎng)卡,或者不是很需要高可用,那么灌裝出來的硬件是一臺透明代理硬件WAF,只是不具備bypass功能。(一般情況下,除了銀行之類,別的單位很少能用著這種級別的高可用設備,因為還可以多機熱備嘛,所以,其實沒有bypass網(wǎng)卡也沒太大關系)。

 

準備工作

ETH1網(wǎng)口連通外網(wǎng),并給其設置IP;

ETH2,ETH3為一雙Bypass網(wǎng)口,為做網(wǎng)橋使用;

ETH3口連接內(nèi)網(wǎng)web服務器。

 

系統(tǒng)配置,實現(xiàn)透明代理

(完整詳細步驟,如果熟悉linux網(wǎng)絡操作命令的話,其中有些環(huán)節(jié)可以跳過)

關閉centos 7自帶防火墻

systemctl stop firewalld.servicesystemctl disable firewalld.service

安裝iptables

yum -y install iptablesyum -y install iptables-services

開啟iptables

service iptables start

清除Iptables自帶規(guī)則

iptables -F

安裝ifconfig

yum -y install net-tools.x86_64

安裝網(wǎng)橋

yum -y install bridge-utils

設置網(wǎng)橋

/sbin/modprobe bridge/usr/sbin/brctl addbr br0(設置網(wǎng)橋名為br0)/sbin/ifup enp4s0 (要加入網(wǎng)橋的網(wǎng)卡,通過ifconfig查看)/sbin/ifup enp5s0 (要加入網(wǎng)橋的網(wǎng)卡)

注:執(zhí)行以上兩步之前最好將能通的網(wǎng)線插在網(wǎng)口上,否則執(zhí)行時間會稍長,會顯示激活失敗。

如果以上步驟報錯:

無法創(chuàng)建 NMClient 對象GDBus.Error:org.freedesktop.DBus.Error.UnknownMethod: Method "GetManagedObjects" with signature "" on interface "org.freedesktop.DBus.ObjectManager" doesn't exist

這時,執(zhí)行如下命令:

chkconfig NetworkManager offchkconfig network onservice NetworkManager stopservice network start/usr/sbin/brctl addif br0 enp4s0/usr/sbin/brctl addif br0 enp5s0

設置網(wǎng)橋IP (例:192.168.1.73 設置一個在內(nèi)網(wǎng)網(wǎng)段的IP)

ifconfig br0 192.168.1.73 netmask 255.255.255.0

開啟網(wǎng)橋

/sbin/ip link set br0 up

查看

sudo brctl show

關閉

ifconfig br0 down

刪除 (刪除前先將網(wǎng)橋關閉)

sudo brctl delbr br0

在/etc/sysctl.conf下添加內(nèi)容

vi /etc/sysctl.conf

將光標移至文字最后一行按o,右鍵選擇粘貼

net.bridge.bridge-nf-call-ip6tables = 1net.bridge.bridge-nf-call-iptables = 1net.bridge.bridge-nf-call-arptables = 1net.ipv4.ip_forward = 1net.ipv4.ip_nonlocal_bind = 1net.ipv4.conf.default.rp_filter = 0net.ipv4.conf.all.rp_filter = 0net.ipv4.conf.br0.rp_filter = 0

1.按esc 2.輸入 : 3.然后輸入 wq 回車

執(zhí)行使生效

sysctl -p

如果報錯:

sysctl: cannot stat /proc/sys/net/bridge/bridge-nf-call-ip6tables: 沒有那個文件或目錄sysctl: cannot stat /proc/sys/net/bridge/bridge-nf-call-iptables: 沒有那個文件或目錄sysctl: cannot stat /proc/sys/net/bridge/bridge-nf-call-arptables: 沒有那個文件或目錄執(zhí)行 modprobe br_netfilter再次執(zhí)行sysctl -p

添加路由

/sbin/ip -f inet rule add fwmark 1 lookup 100/sbin/ip -f inet route add local default dev lo table 100

添加規(guī)則前,首先查內(nèi)是否有其他規(guī)則

iptables -t 表名 -L

如果有其他規(guī)則,將其刪除

iptables -t 表名 -D 鏈名 第幾條規(guī)則

添加規(guī)則

iptables -t nat -A PREROUTING -d 192.168.1.20 -p tcp --dport 80 -j DNAT --to-destination 192.168.1.73:80

說明:

192.168.1.20 web服務器IP

80 web服務端口

192.168.1.73 網(wǎng)橋IP

8080 ShareWAF端口

保存規(guī)則

service iptables save

以上,系統(tǒng)透明模式需要的設置已完成。為實現(xiàn)斷電或異常時Bypass功能,需向Bypass網(wǎng)卡或硬件廠家咨詢、索取其Bypass網(wǎng)卡相關程序、資料,如:“喂狗程序”、腳本等。

自己動手,DIY一臺硬件WAF

 

透明網(wǎng)橋配成功后。

 

安裝NodeJS

(ShareWAF運行依賴的環(huán)境)

yum -y install wgetmv /etc/yum.repos.d/CentOS-Base.repo /etc/yum.repos.d/CentOS-Base.repo_bakwget -O /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-7.repowget -O /etc/yum.repos.d/epel.repo http://mirrors.aliyun.com/repo/epel-7.repoyum clean allyum makecachewget https://nodejs.org/dist/v8.11.1/node-v8.11.1-linux-x64.tar.xz --no-check-certificatetar -xvf node-v8.11.1-linux-x64.tar.xzmv node-v8.11.1-linux-x64 node-v8.11.1ln -s /root/node-v8.11.1/bin/node /usr/local/bin/nodeln -s /root/node-v8.11.1/bin/npm /usr/local/bin/npm

也可以從nodejs官網(wǎng)直接下載。

也可以用以下的方法:

 sudo apt-get install nodejs-legacy sudo apt-get install npm sudo npm install -g n sudo n stable

 

安裝Share WAF

從ShareWAF官網(wǎng),獲取ShareWAF程序包后,在其目錄下執(zhí)行:

npm install

如在安裝過程中Express報錯,運行:npm config set strict-ssl false

如在安裝過程中Sqlite3報錯,運行:npm install sqlite3 –unsafe-perm

 

啟動Share WAF

nodejs ShareWAF

sudo node ShareWAF
自己動手,DIY一臺硬件WAF

 

ShareWAF啟動成功

到這里,基本就完成了,然后,就是進入ShareWAF后臺配置網(wǎng)站就可以了。

這樣一個硬件WAF,就完工了。

本文作者:w2sfoot,轉載注明來自FreeBuf.COM

分享到:
標簽:WAF
用戶無頭像

網(wǎng)友整理

注冊時間:

網(wǎng)站:5 個   小程序:0 個  文章:12 篇

  • 51998

    網(wǎng)站

  • 12

    小程序

  • 1030137

    文章

  • 747

    會員

趕快注冊賬號,推廣您的網(wǎng)站吧!
最新入駐小程序

數(shù)獨大挑戰(zhàn)2018-06-03

數(shù)獨一種數(shù)學游戲,玩家需要根據(jù)9

答題星2018-06-03

您可以通過答題星輕松地創(chuàng)建試卷

全階人生考試2018-06-03

各種考試題,題庫,初中,高中,大學四六

運動步數(shù)有氧達人2018-06-03

記錄運動步數(shù),積累氧氣值。還可偷

每日養(yǎng)生app2018-06-03

每日養(yǎng)生,天天健康

體育訓練成績評定2018-06-03

通用課目體育訓練成績評定