Hvernig á að setja upp ModSecurity með Apache á Debian/Ubuntu
Apache vefþjónninn er mjög sérhannaður og hægt að stilla hann á marga vegu til að henta þínum þörfum. Það eru margar einingar frá þriðja aðila sem þú getur notað til að stilla Apache að þínum óskum.
ModSecurity er opinn WAF (Web Application Firewall) sem er innfæddur í Apache vefþjóninum. Það var upphaflega eingöngu Apache-eining en hefur vaxið á árinu í að verða fullgildur eldveggur fyrir vefforrit. Það er nú stutt af Nginx og jafnvel IIS.
ModSecurity skoðar komandi beiðnir til vefþjónsins gegn fyrirfram skilgreindum reglum. Venjulega býður það upp á sett af reglum sem kallast CRS (Core Rule Set) sem vernda vefsíðu fyrir fjölda vefforritaárása eins og SQL innspýtingar, XSS og loturæning meðal annarra hetjudáða.
[Þér gæti líka líkað við: 5 verkfæri til að skanna Linux netþjón fyrir spilliforrit og rótarsett ]
ModSecurity forritaeldveggurinn er óaðskiljanlegur hluti af PCI DSS samræmi við að verja síður fyrir utanaðkomandi árásum. Þegar einingin er virkjuð kveikir hún á „403 Forbidden Error“ sem gefur einfaldlega til kynna að þú hafir ófullnægjandi heimildir til að fá aðgang að auðlindinni á vefþjóninum.
Í þessari handbók munum við sýna þér hvernig á að setja upp og stilla ModSecurity til að vinna með Apache á Debian og Ubuntu Linux.
Skref 1: Settu upp ModSecurity á Ubuntu
Fyrsta skrefið er að setja upp ModSecurity. Við byrjum fyrst á því að endurnýja pakkalistana sem hér segir:
$ sudo apt update
Næst skaltu setja upp ModSecurity pakkann ásamt öðrum ósjálfstæði og bókasöfnum.
$ sudo apt install libapache2-mod-security2
Síðan skaltu virkja eininguna.
$ sudo a2enmod security2
Endurræstu síðan Apache vefþjóninn til að beita breytingunum.
$ sudo systemctl restart apache2
Á þessum tímapunkti er ModSecurity sett upp. Við skulum nú stilla það.
Skref 2: Stilltu ModSecurity í Ubuntu
Sjálfgefið er ModSecurity aðeins stillt til að greina og skrá grunsamlega virkni. Við þurfum að fara auka skref og stilla það til að greina ekki aðeins heldur einnig loka á grunsamlega virkni.
Afritaðu, sjálfgefna ModSecurity stillingarskrá – modsecurity.conf-recommended – í nýja skrá eins og kveðið er á um í skipuninni hér að neðan.
$ sudo cp /etc/modsecurity/modsecurity.conf-recommended /etc/modsecurity/modsecurity.conf
Notaðu textaritilinn sem þú vilt, opnaðu skrána
$ sudo nano /etc/modsecurity/modsecurity.conf
Finndu línuna:
SecRuleEngine DetectionOnly
Stilltu það á:
SecRuleEngine On
Vistaðu breytingarnar og lokaðu skránni.
Til að beita breytingunum í Apache skaltu endurræsa vefþjóninn.
$ sudo systemctl restart apache2
Skref 3: Sæktu OWASP ModSecurity Core Ruleset
Næsta skref er að hlaða niður nýjasta OWASP ModSecurity Core Rule Set (CRS) frá GitHub síðunni.
Klónaðu OWASP git geymsluna eins og sýnt er.
$ git clone https://github.com/coreruleset/coreruleset.git
Farðu inn í möppuna.
$ cd coreruleset/
Vertu viss um að færa crs-setup.conf.example skrána í modsecurity skrána og endurnefna hana sem crs-setup.conf.
$ sudo mv crs-setup.conf.example /etc/modsecurity/crs-setup.conf
Að auki skaltu færa regluskrána í modsecurity skrána líka.
$ sudo mv rules/ /etc/modsecurity/
Næst skaltu breyta security2.conf skránni.
$ sudo nano /etc/apache2/mods-enabled/security2.conf
Gakktu úr skugga um að það innihaldi eftirfarandi línur.
IncludeOptional /etc/modsecurity/*.conf Include /etc/modsecurity/rules/*.conf
Endurræstu síðan Apache til að breytingarnar haldist.
$ sudo systemctl restart apache2
Við skulum nú prófa ModSecurity stillingar okkar.
Skref 4: Prófaðu ModSecurity stillingar á Ubuntu
Að lokum þurfum við að prófa að ModSecurity geti greint og lokað á grunsamlega HTTP umferð. Til að ná þessu þurfum við að breyta sjálfgefna sýndarhýsingarskránni.
$ sudo nano /etc/apache2/sites-available/000-default.conf
Næst munum við búa til lokunarreglu sem mun loka fyrir aðgang að ákveðinni vefslóð þegar vafri er opnuð.
Bættu þessum línum við í lokin á undan „Virtualhost“ lokunarmerkinu.
SecRuleEngine On SecRule ARGS:testparam "@contains test" "id:254,deny,status:403,msg:'Test Successful'"
Ekki hika við að stilla „id“ og „msg“ merkin á hvaða æskilegu gildi sem er.
Endurræstu síðan Apache vefþjóninn til að beita breytingunum sem gerðar voru á stillingarskrá sýndarhýsilsins.
$ sudo systemctl restart apache2
Í vafranum þínum skaltu reyna að fara á vefslóðina sem sýnd er með ?testparam=test
í lokin.
http://server-ip/?testparam=test
Þú færð „403 Forbidden error“ sem gefur til kynna að þér hafi verið lokað fyrir aðgang að auðlindinni.
Þú getur ennfremur staðfest að viðskiptavinurinn hafi verið læstur með því að athuga villuskrárnar sem hér segir.
$ cat /var/log/apache2/error.log | grep “Test Successful”
[Þér gæti líka líkað við: Hvernig á að setja upp ModSecurity fyrir Nginx á Debian/Ubuntu]
Þetta er staðfesting á því að við höfum sett upp ModSecurity til að greina og loka fyrir óæskilega umferð. Í þessari handbók höfum við leiðbeint þér í gegnum ferlið við að setja upp ModSecurity með Apache á Debian/Ubuntu kerfum.