nginx lua-modul Taobao utviklet nginx tredjepartsmodul, som kan integrere Lua-språket i nginx-konfigurasjonen, slik at bruken av lua i stor grad forbedrer nginx' muligheter. nginx er kjent for sin høye samtidighet, lua-skript er lette, og kombinasjonen av de to er perfekt.
GitHub-adresse: https://github.com/loveshell/ngx_lua_waf
###用途:
- Forhindre webangrep som SQL-injeksjon, lokal inkludering, delvis overflow, fuzzing-testing, xss, SSRF osv
- Forhindre fillekkasje som for eksempel SVN/backup
- Forhindre angrep fra stresstestverktøy som ApacheBench
- Blokker vanlige hackingverktøy for skanning, skannere
- Blokker uvanlige nettverksforespørsler
- Blokker PHP-kjøringstillatelsen til bildevedleggskatalogen
- Forhindre webshell-opplasting
Systemversjon, kommando lsb_release -a
LSB-versjon: :core-4.1-amd64:core-4.1-noarch Distributør-ID: CentOS
Description: CentOS Linux release 7.4.1708 (Core)
Release: 7.4.1708
Codename: Core
LuaJIT-versjonen
LuaJIT-2.0.5 er den nyeste stabile versjonen
nginx-versjon (vil feile å installere, mer om det senere)
nginx 1.4.4-versjon
Først oppretter du installasjonsmappen /alidata/server/lj2 med følgende kommando:
Installer Lua-miljøet
--Sjekk om installasjonen er vellykket
--Lag myke lenker
Opprinnelig bestilling:
Siden vi har lua installert under /alidata/server/lj2, utfør følgende kommando,Ikke utfør kommandoen ovenfor, men utfør følgende kommando:
Hvis du ikke oppretter en symlenke, kan følgende unntak oppstå: feil under lasting av delte biblioteker: libluajit-5.1.so.2: kan ikke åpne delt objektfil: Ingen slik fil eller katalog
Last ned ngx_devel_kit og pakk den ut
Prosjektets hjemmeside: https://github.com/simplresty/ngx_devel_kit
Last ngx_lua ned og pakk den ut
Kompiler på nytt og installer nginx
Ta sikkerhetskopi av den forrige ngxin-filen først
Jeg har installert nginx før, og utført kommandoen nginx -V slik:
NGINX-versjon: nginx/1.4.4 bygget av GCC 4.8.5 20150623 (Red Hat 4.8.5-11) (GCC) TLS SNI-støtte aktivert Konfigurer argumenter: --user=www --group=www --prefix=/alidata/server/nginx --with-http_stub_status_module --without-http-cache --with-http_ssl_module --with-http_gzip_static_ Modul To modulkataloger
/root/pack/lua-nginx-module-0.10.13
/root/pack/ngx_devel_kit-0.2.19
Last ned og kjør i nginx-katalogen
--legg til miljøvariabel for å fortelle nginx hvor de kan finne luajit
Hvis du ikke legger det til, vil nginx rapportere følgende feil ved kompilering:
./configure: error: ngx_http_lua_module krever Lua-biblioteket. Hvis en feil rapporteres, vennligst utfør de to setningene ovenfor!
kompilere
Feil: #error minst nginx 1.6.0 kreves, men fant en eldre versjon
nginx-versjonen er for lav, minimumskravet er 1.6.0, så oppgrader nginx-versjonen,Når du oppgraderer nginx-versjonen, kan du faktisk installere lua-nginx-modulen og ngx_devel_kit modulen i den nye versjonen, som ikke vil bli detaljert her, bare kjør følgende kommando med den nye versjonen,
Last ngx_lua_waf ned og pakk den ut
Endre nginx-konfigurasjonsfilen for å endre stien etter den faktiske situasjonen
Legg det til i http-seksjonen på nginx.conf
Når det er lagt til,Jeg startet nginx på nytt og fikk en feilmelding på 500Til slutt ble det funnet ut at grunnen var at config.lua-filen skulle endres to steder:
RulePath og logdir for å tilpasse etter din egen situasjon!
Prøve
https://www.itsvse.com/forum.php?id=../etc/passwd
|