An cás reatha: PHP2Shell. Ceadaíonn dhá leochaileacht chriticiúla PHP (CVSS 9.2) cód mailíseach gan logáil isteach. Paistí ar fáil ón 21 Deireadh Fómhair 2026.Cad atá le déanamh anois →

Fail2ban a shocrú do fhreastalaithe gréasáin

Blocálann Fail2ban seoltaí a bhíonn le feiceáil arís agus arís eile sna logaí. Do fhreastalaithe gréasáin tagann scagairí réidh leis, agus le cúpla líne cuirtear cinn eile leis. Seo conas a shocraíonn tú é gan tú féin ná do chustaiméirí a ghlasáil amach.

Staid Am léitheoireachta: 6 nóim.Cruatú agus cumraíocht

Go achomair: Léann Fail2ban comhaid logála agus blocálann sé seoltaí sa bhalla dóiteáin a bhíonn le feiceáil ró-mhinic laistigh d'fhuinneog ama. D'Nginx agus Apache tagann jails réidh leis ar nós nginx-botsearch nó apache-noscript; déanann tú scagairí féin a thástáil le fail2ban-regex. Baineann socruithe le jail.local, do sheoltaí féin le ignoreip, gabhann an jail recidive athchiontóirí. In aghaidh ionsaithe spriocdhírithe aonair ní chabhraíonn Fail2ban, in aghaidh mórscanta cabhraíonn.

Nuair a bhíonn na logaí lán de scanóirí

An té a bhreathnaíonn ar phrótacail rochtana a fhreastalaithe gréasáin sna laethanta seo, is minic a fhaigheann sé iad lán d'iarratais ar chosáin nach bhfuil ann ar chor ar bith: seanchomhéadain riaracháin, comhaid tástála, laigí aitheanta táirgí eile. I gcás cosúil le PHP2Shell cuirtear cuardach spriocdhírithe ar fhreastalaithe leochaileacha leis: thuairiscigh Cloudflare agus Patchstack iarrachtaí ionsaithe, chomhaireamh Unit 42 níos mó ná 22,6 milliún cás nochta, a bhféadfadh a bheith leochaileach.

Is uirlis chruthaithe é Fail2ban in aghaidh an tomhaltais seo. Léann sé comhaid logála, aithníonn sé iontrálacha amhrasacha le scagairí agus blocálann sé seoladh an tseoltóra don am socraithe sa bhalla dóiteáin. Maolaíonn sé sin ualach an fhreastalaí, laghdaíonn sé torann an loga agus déanann sé triail chórasach ó fhoinse amháin níos deacra.

An rud nach féidir le Fail2ban, tá sé chomh tábhachtach: ní chuirtear cosc ar iarratas aonair a bhainfeadh leas as leochaileacht. In aghaidh PHP2Shell ní chabhraíonn ach an nuashonrú PHP. Conas a oibríonn ionsaithe uathoibrithe, déanann Mórscanadh tar éis PHP gan phaiste cur síos air.

Fail2ban d'Nginx agus Apache: na jails seachadta

Ceanglaíonn jail scagaire le comhad logála agus le gníomh bloca. Tá jails do fhreastalaithe gréasáin sa jail.conf seachadta cheana féin. Tá siad múchta de réir réamhshocraithe agus gníomhachtaítear iad ina n-aonar.

Jail Freastalaí gréasáin Aithníonn
nginx-http-auth Nginx logálacha isteach HTTP Basic a theip orthu
nginx-limit-req Nginx iarratais a sháraíonn teorainn rátaí Nginx
nginx-botsearch Nginx cuardach ar chosáin thipiciúla nach bhfuil ann
nginx-bad-request Nginx iarratais lochtacha
apache-auth Apache logálacha isteach a theip orthu
apache-badbots Apache aitheantóirí bot díobhálacha aitheanta
apache-noscript Apache glaonna ar scripteanna nach bhfuil ann
apache-overflows Apache iarratais rófhada
apache-botsearch Apache cuardach ar chosáin thipiciúla nach bhfuil ann
php-url-fopen an bheirt patrúin áirithe d'iarrachtaí ionchuimsithe URL
recidive an bheirt seoltaí a bhlocáil Fail2ban arís agus arís eile

Tá réamhshocruithe na cumraíochta seachadta measartha séimh: bac ar feadh 10 nóiméad tar éis 5 amais laistigh de 10 nóiméad. I gcás freastalaithe gréasáin le go leor tráchta scanta is fiú bac níos faide agus fachtóir méadaitheach d'athrá.

An bhunchumraíocht sa jail.local

Deir an jail.conf féin nár cheart í a athrú, mar go gcuireann nuashonruithe ina hionad í. Baineann luachanna féin le /etc/fail2ban/jail.local. Socraíonn an sampla seo a leanas d'Nginx réamhshocruithe ciallmhara agus gníomhachtaíonn sé jails oiriúnacha:

# /etc/fail2ban/jail.local
[DEFAULT]
# Iontráil do sheoltaí seasta féin (cuir ionad ar an seoladh samplach)
ignoreip = 127.0.0.1/8 ::1 203.0.113.10
bantime  = 1h
findtime = 10m
maxretry = 5
bantime.increment = true

[nginx-http-auth]
enabled = true

[nginx-botsearch]
enabled = true

[recidive]
enabled  = true
bantime  = 1w
findtime = 1d

D'Apache gníomhachtaíonn tú apache-auth, apache-noscript agus apache-botsearch ina ionad. Tugann Fail2ban na cosáin logála leis de réir dáilte; má tá do chosáin difriúil, socraigh logpath sa jail ábhartha. Má léann do chóras logaí tríd an dialann amháin, cabhraíonn backend = systemd.

Scagaire dá chuid féin d'iarratais mhóra ar chomhaid PHP

Patrún tipiciúil sa chás reatha is ea go leor iarratas i gcéin ghearr ama ar chomhaid PHP nach bhfuil ann. Aithníonn scagaire dá chuid féin sin ón gcód stádais 404. Ní chuireann sé síos ach ar an méid atá i do log féin:

# /etc/fail2ban/filter.d/nginx-php-404.conf
[Definition]
failregex = ^<HOST> -.*"(GET|POST|HEAD) [^"]*\.php[^"]*" 404
ignoreregex =
# Forlíonadh i /etc/fail2ban/jail.local
[nginx-php-404]
enabled  = true
port     = http,https
filter   = nginx-php-404
logpath  = /var/log/nginx/access.log
maxretry = 20
findtime = 1m
bantime  = 1h

Sula ngníomhachtaíonn tú an scagaire, seiceáil é i gcoinne an fhíorloga. Ar an gcaoi sin feiceann tú cé mhéad líne a bhuaileann sé agus an bhfuil rochtana dlisteanacha ina measc:

fail2ban-regex /var/log/nginx/access.log /etc/fail2ban/filter.d/nginx-php-404.conf
sudo systemctl restart fail2ban
sudo fail2ban-client status
sudo fail2ban-client status nginx-php-404
# Seoladh a bhlocáladh de thaisme a scaoileadh
sudo fail2ban-client set nginx-php-404 unbanip 203.0.113.25

Roghnaigh an tairseach go flaithiúil. Níor cheart crawlálaí a oibríonn trí sheannaisc, nó seirbhís mhonatóireachta, a bheith sa bhac.

Na gaistí is coitianta

Suiteáiltear Fail2ban go tapa, ach úsáidtear go héasca go mícheart é. Ba cheart duit na pointí seo a sheiceáil sula n-úsáideann tú sa táirgeadh é:

  1. Tú féin a ghlasáil amach: Baineann seoltaí oifige, VPN agus monatóireachta le ignoreip sula mbíonn jails gníomhach.
  2. Seirbhísí roimh-nasctha: Taobh thiar de CDN nó cothromóir ualaigh ní fheiceann Fail2ban gan oiriúnú ach a seoltaí. Tuilleadh sa treoir Logálacha isteach riaracháin a chosaint in aghaidh Brute Force.
  3. Rothlú loga: Tar éis an comhad logála a athrú, ní mór do Fail2ban an comhad nua a léamh. Seiceáil tar éis an chéad rothlaithe an leanann na jails ag comhaireamh amais.
  4. Idirghníomhú balla dóiteáin: Iontrálann Fail2ban bacanna sa bhalla dóiteáin. An té a bhainistíonn a bhalla dóiteáin le hathluchtú iomlán na rialacha, is féidir leis na hiontrálacha seo a scriosadh leis sin. Conas a thógann tú an balla dóiteáin féin, tá sé ag Balla dóiteáin do fhreastalaithe gréasáin: ná hosclaíodh ach poirt is gá.
  5. IPv6: Tagann ionsaithe tríd IPv6 freisin. Seiceáil an gclúdaíonn do ghníomh bloca an dá phrótacal.
Leid

Déan na liostaí bacanna a mheas go rialta. Má bhíonn bacanna ó líonraí áirithe nó ar chosáin áirithe ag carnadh, is leid é sin ar chuardach spriocdhírithe agus cúis chun breathnú níos géire ar an bhfeidhmchlár lena mbaineann.

Conclúid: uirlis in aghaidh an mhais, ní in aghaidh gach rud

Socraítear Fail2ban go tapa agus baineann sé cuid den bhuamáil leanúnach de fhreastalaithe gréasáin. Clúdaíonn na jails seachadta patrúin thipiciúla, is féidir scagairí féin a thástáil go sábháilte i gcoinne fíorlogaí le fail2ban-regex, agus cinntíonn an jail recidive go bhfanann foinsí righne amuigh níos faide.

Níor cheart é a mheas thar a luach. Freagraíonn Fail2ban d'athrá, ní don chéad amas, agus ní fheiceann sé ach an méid atá sna logaí. In aghaidh leochaileachta ar nós PHP2Shell ní chabhraíonn ach an nuashonrú, in aghaidh ionsaithe dáilte ó go leor seoltaí is beag a chabhraíonn Fail2ban. Faigheann sé a luach mar chiseal amháin i measc roinnt: taobh le balla dóiteáin caol, cumraíocht fhreastalaí gréasáin chruaite, fíordheimhniú dhá fhachtóir agus monatóireacht nach mblocálann neamhghnáthaíochtaí amháin, ach a thuairiscíonn iad freisin.

Conas a chabhraíonn PHP SOS go nithiúil?

  • Logaí a mheas: Féachaimid ar na patrúin a tharlaíonn i do phrótacail rochtana agus roghnaímid jails oiriúnacha.
  • Socrú agus tástáil: Socraímid Fail2ban le scagairí féin, déanaimid tástáil ar gach scagaire i gcoinne fíorlogaí agus iontrálaimid do sheoltaí seasta mar eisceacht.
  • An t-idirghníomhú a shoiléiriú: Comhordaímid CDN, cothromóir ualaigh, balla dóiteáin agus rothlú loga ionas go mbuaileann bacanna na seoltaí cearta.
  • Faire: Faoi chuimsiú mhonatóireacht slándála measaimid bacanna agus neamhghnáthaíochtaí go leanúnach.

Ceisteanna coitianta

An gcosnaíonn Fail2ban in aghaidh PHP2Shell?

Ní chosnaíonn. Ní fhreagraíonn Fail2ban ach tar éis do sheoladh a bheith le feiceáil sna logaí go minic. Ní chuirtear cosc ar ionsaí rathúil aonair leis. Ach laghdaíonn Fail2ban an t-ualach ó scanóirí agus déanann sé iarrachtaí athchleachtacha ón bhfoinse chéanna níos costasaí.

Cén fáth nár cheart dom jail.conf a athrú go díreach?

Cuirtear an comhad ina ionad le nuashonruithe pacáiste, agus deir sé é sin féin. Baineann socruithe féin le jail.local nó le comhaid faoi jail.d. Scríobhann siad os cionn na réamhshocruithe go sonrach ansin.

Cad é an jail recidive?

Jail a mheasann prótacal Fail2ban féin. An té a bhlocáltar arís agus arís eile, faigheann sé bac i bhfad níos faide. Sa chumraíocht seachadta is seachtain amháin é.

An n-oibríonn Fail2ban taobh thiar de Cloudflare nó de chothromóir ualaigh?

Le cumraíocht bhreise amháin. Gan í, tá seoladh an tseirbhís roimh-nasctha sna logaí, agus bhuailfeadh bac gach cuairteoir. Ansin ní mór don fhreastalaí gréasáin fíorsheoladh an chuairteora a ghlacadh, agus socraítear bacanna níos fearr ag an tseirbhís roimh-nasctha.

Foinsí

Teagmháil láithreach

Cuireann gach uair an chloig leis. Scríobh chugainn anois.

Déan cur síos gearr ar an gcóras, leagan PHP agus an rud a thug tú faoi deara. Cuirfimid scéala chugat, soiléireoimid an cás agus oibreoimid go cianda go dtí go mbeidh an teagmhas dúnta agus doiciméadaithe.

Cabhair láithreach