Sisu
Ülevaade
Järgmises artiklis kirjeldatakse ISP või hostiteenuse pakkuja tegelikku kasutusjuhtu, kus HTTP / S Load Balancer pöördproks on kõigi avalike veebiteenuste peamiseks juurdepääsupunktiks. See konfiguratsioon näitab, kui lihtne on täpsema ja võimsa WAF-i konfigureerimine. reeglite komplekt, et turvata musta nimekirja allika IP-aadressidel põhinevaid veebirakendusi, kus neid on VirtualHost haldab enda musta nimekirja viisil, mis keelab ühe avaliku IP-ga ühenduse loomise veebidomeeniga, näiteks www.company1.com kuid lasti ühenduda www.company2.com.
Keskendume artiklile kaheks osaks, põhiosas töötab HTTPS-i profiili konfiguratsioon puhverserverina koos erinevate teenuste loeteluga ja teises jaotises selgitatakse, kuidas seadistada Veebirakenduse tulemüür reeglistik, mis haldab erinevat musta nimekirja HTTP / S teenuse kohta.
keskkond
Järgmine diagramm kirjeldab Zevenet WAF-i sisemisi seadmeid. Nagu on näidatud, on esimene kiht WAF-moodul, mille eesmärk on juba varakult tagada, et ainult turvalistel taotlustel lubatakse koormuse tasakaalustamise moodulisse üle minna ja seejärel edastada taotlus taustaprogrammidele.
Esiteks HTTP Võõrustaja päist hinnatakse ja kliendi IP-d kontrollitakse juba konfigureeritud mustas nimekirjas. Kui Võõrustaja päis ja kliendi IP-aadress vastavad, siis ühendus katkestatakse ja a Forbidden 403 HTTP-vastus saadetakse kliendile, kuid juhul, kui kliendi IP-d küsitakse Võõrustaja päis ei ühti, siis tuvastatakse, et liiklus pole pahatahtlik ja edastatakse koormuse tasakaalustaja moodulile, kus sihtkoht valitakse HTTP-päringu põhjal Võõrustaja päise ja lõpuks edastatakse saadaolevasse taustaprogrammiserverisse.
Siit leiate antud näites veebirakenduse tulemüüri sisemuste skeemi.
HTTP virtuaalse teenuse konfiguratsioon
Seadista üks pühendatud Virtuaalne IP-aadress, meie näites 192.168.100.58, sirvides Võrk> Virtuaalsed liidesed> Loo virtuaalne liides nagu allpool näidatud:
Nüüd läheme HTTP koormuse tasakaalustamise teenuse konfigureerimiseks, minge aadressile LSLB> Talud ja seejärel klõpsake nuppu Loo talu ja sisestage virtuaalse teenuse üksikasjad, nagu see on näidatud allpool:
Siis vajuta Looma.
Nüüd klõpsake ülemisel vahekaardil Teenused ja looge nii palju teenuseid kui erinevad hallatavad veebisaidid, klõpsake nuppu Uus teenus, meie puhul loome kaks erinevat teenust, ühe teenuse haldamiseks www.omaettevõte1.com ja veel üks www.omaettevõte2.com.
Kui teenus on loodud, lisage Virtuaalne hostija filtrit ja taustaprogramme, nagu on näidatud alloleval pildil.
Kui teil on mitu veebisaiti, peate lisama ainult uusi teenuseid, et määratleda üks spetsiaalne teenus, mida hallata iga veebi samal IP-aadressil.
Nüüd on koormuse tasakaalustamise konfiguratsioon tehtud, mis võimaldab konfigureerida IPDS-i veebirakenduse tulemüüri mooduli.
Musta nimekirja seadistamine
Koostame iga veebiteenuse kohta ühe musta nimekirja, et sisestada igasse musta nimekirja soovitud IP-aadressid juurdepääsu blokeerimiseks. Meie näites loome nimega kaks erinevat musta nimekirja must nimekiriettevõte1 ja must nimekiriettevõte2, vastavalt üks teenuse kohta.
See must nimekiri salvestatakse teele /usr/local/zevenet/config/ipds/blacklists/lists/Blacklistmycompany1.txt.
Kaasame testimise jaoks 2 IP-aadressid. Kaaluge palun lisada nii palju IP-sid kui vaja. Samuti juba olemasolevat Mustlased aasta IPDS moodulit saab kasutada.
See teine must nimekiri salvestatakse teele /usr/local/zevenet/config/ipds/blacklists/lists/Blacklistmycompany2.txt.
Võtke arvesse, et sellesse musta nimekirja lisasime IP-aadressi 192.168.1.191, kasutatakse seda IP-d ainult testimise eesmärkidel, kust hakkame HTTP-taotlusi esitama.
Veebirakenduse tulemüüri reeglistiku konfiguratsioon
Selle konfiguratsiooni eesmärk on säilitada veebisaidi kohta erinevaid IP-mustaid nimekirju, et vältida kogu farmi pääsupunkti sama musta nimekirja pidamist.
Me konfigureerime a reegel, mis on reeglistik koos nimega HostingBlacklisting. See reeglikomplekt koosneb kahest lihtsast reeglist (meie näites on reegli ID 1000 ja reegli ID 1001), iga reegel on määratletud kui vaste ja toiming, kus juhul, kui tingimus vastab, siis toiming teostatakse. Meie näites kasutame mõlemas reeglis sama toimingut, kui tingimus vastab a-le Keelduge toimingust täidetakse a-ga 403-i juurdepääs on keelatud vastus.
Minna IPDS> WAF, siis kliki Looge WAF-i reeglistik ja määrake meie näites kirjeldav reeglistiku nimi HostingBlacklisting.
Konfigureerige väli Vaikefaas et Saadakse päringu päised. See väli tähendab, et WAF-moodul analüüsib kliendilt saabuvate päringute päiseid.
Seejärel minge vahekaardile Reeglid ja looge esimene Eeskiri tüüpi tegevus nagu allpool näidatud.
Nüüd on loodud reeglikomplekti esimene reegel, mis võimaldab luua tingimused, mis vastavad kliendi IP-le iga kategooria mustas nimekirjas Võõrustaja päis. Minema Tingimused ja luua tingimus vastavalt REMOTE_ADDR muutuja, nagu see on näidatud allpool.
Seejärel looge uus tingimus tingimusele Virtuaalne hostija vaste vastavalt SERVER_NAME muutuja järgmiselt:
Sel hetkel esimene hostitud veebisait www.omaettevõte1.com haldab veebirakenduste musta nimekirja IP-aadressi juba konfigureeritud mustast nimekirjast, millele viidatakse Must nimekiriettevõte1.txt.
Loome teise veebisaidi jaoks veel ühe reegli www.omaettevõte2.com ja korrake sama konfiguratsiooni nagu eelmises reegli konfiguratsioonis, kuid sel juhul peate muutma SERVER_NAME et minu ettevõte2.com ja viidake järgnevale must nimekiri2.txt.
Vaadake ühendatud WAF-i reeglistiku kogu konfiguratsiooni:
Lõpuks lisage see reeglistik juba loodud talusse, minge vahekaardile Põllumajandusettevõtted ja kolida talu hostingmeie näites Lubatud talud sektsiooni, nagu see on näidatud allpool.
Nüüd alustage farmi WAF-i reeglistikku, klõpsake toimingut mängima selle akna vasakus ülanurgas ja süsteem hakkab filtrima talu HTTP-liiklust hosting.
Veebirakenduse tulemüüri reeglistiku testimine
Kliendi IP 192.168.1.191 taotleb veebisaiti http://www.mycompany1.com ja http://www.mycompany2.com ja vastavalt meie konfiguratsioonile võimaldab WAF-süsteem ühendada esimese samanimelise teenusega, kuid ühendus keelatakse minu ettevõte2.com kuna see IP on lisatud nimega musta nimekirja Must nimekiriettevõte2.
Alates IP-aadressist 192.168.1.191 kuni VIP-ni veebisaidi www.mycompany1.com taotlemisel koormuse tasakaalustaja kaudu:
root@192.168.1.191:# curl -H "Host: www.mycompany1.com" http://192.168.100.58 -v * Rebuilt URL to: http://192.168.100.58/ * Trying 192.168.100.58... * TCP_NODELAY set * Connected to 192.168.100.58 (192.168.100.58) port 80 (#0) > GET / HTTP/1.1 > Host: www.mycompany1.com > User-Agent: curl/7.52.1 > Accept: */* > < HTTP/1.1 200 OK < Server: nginx/1.10.3 < Date: Tue, 10 Sep 2019 15:36:22 GMT < Content-Type: text/html < Content-Length: 11383 < Last-Modified: Thu, 13 Dec 2018 11:01:49 GMT < Connection: keep-alive < ETag: "5c123c1d-2c77" < Accept-Ranges: bytes <
Alates IP-aadressist 192.168.1.191 kuni VIP-ni veebisaidi www.mycompany2.com taotlemisel koormuse tasakaalustaja kaudu:
root@192.168.1.191:# curl -H "Host: www.mycompany2.com" http://192.168.100.58 -v * Rebuilt URL to: http://192.168.100.58/ * Trying 192.168.100.58... * TCP_NODELAY set * Connected to 192.168.100.58 (192.168.100.58) port 80 (#0) > GET / HTTP/1.1 > Host: www.mycompany2.com > User-Agent: curl/7.52.1 > Accept: */* > * HTTP 1.0, assume close after body < HTTP/1.0 403 Request forbidden < Content-Type: text/html < Content-Length: 17 < Expires: now < Pragma: no-cache < Cache-control: no-cache,no-store < * Curl_http_done: called premature == 0 * Closing connection 0 replied forbiddenp
Kui Keelatud vastus genereeritakse, teatab WAF-moodul tagasilükkamisest koormuse tasakaalustaja Syslog-failis.
root@zva6000:# tail -f /var/log/syslog Sep 10 15:38:44 zva6000 pound: Hosting, ModSecurity: Warning. Matched "Operator `StrMatch' with parameter `mycompany2.com' against variable `SERVER_NAME' (Value: `www.mycompany2.com' ) [file "/usr/local/zevenet/config/ipds/waf/sets/HostingBlacklisting.conf"] [line "17"] [id "1001"] [rev ""] [msg "Custom Match 2"] [data ""] [severity "0"] [ver ""] [maturity "0"] [accuracy "0"] [hostname "192.168.100.58"] [uri "/"] [unique_id "156812992458.770641"] [ref "v0,13v21,18"] Sep 10 15:38:44 zva6000 pound: Hosting, [WAF,service mycompany2, backend 192.168.100.22:80,] (7f6cfac3c700) [client 192.168.1.191] ModSecurity: Access denied with code 403 (phase 1). Matched "Operator `StrMatch' with parameter `mycompany2.com' against variable `SERVER_NAME' (Value: `www.mycompany2.com' ) [file "/usr/local/zevenet/config/ipds/waf/sets/HostingBlacklisting.conf"] [line "17"] [id "1001"] [rev ""] [msg "Custom Match 2"] [data ""] [severity "0"] [ver ""] [maturity "0"] [accuracy "0"] [hostname "192.168.100.58"] [uri "/"] [unique_id "156812992458.770641"] [ref "v0,13v21,18"] Sep 10 15:38:44 zva6ktpl1 pound: Hosting, service mycompany2, backend 192.168.100.25:80, (7f6cfac3c700) WAF denied a request from 192.168.1.191
Nüüd saate luua oma veebirakenduste kaitsmiseks kohandatud tulemüürireeglid, kasutades HTTP / S sügavate pakettide kontrollimise tehnikaid.