Jeg blir sporet av Kina, og vet ikke hvorfor jeg ikke kan blokkere forespørselen til serveren min .

//host.deny

ALL: item.taobao.com ALL: 117.25.128.* 

Men når jeg ser feilloggen på webserveren min tail -f /var/log/apache2/error.log, blir forespørslene fremdeles tillatt.

Spørsmål: Hvorfor fungerer ikke /etc/hosts.deny config?

Svar

  1. Filen heter /etc/hosts.deny, ikke host.deny

  2. Ikke alle tjenester bruker tcp-wrappers. sshd, for eksempel, gjør ikke som standard. Apache heller ikke.

  3. Du kan bruke iptables for å blokkere alle pakker fra 117.25.128 / 24, f.eks:

      iptables -I INPUT -s 117.25.128.0/24 -j DROP  
  4. Enda bedre, du kan bruke fail2ban til å overvåke en loggfil (for eksempel apaches access.log og / eller error.log) og blokker automatisk IP-adresser som prøver å angripe serveren din.

Fra debian fail2ban pakkebeskrivelse:

Fail2ban overvåker loggfiler (f.eks. /var/log/auth.log, /var/log/apache/access.log) og forbyr midlertidig eller vedvarende adresser som er utsatt for feil ved å oppdatere eksisterende brannmurregler.

Fail2ban tillater enkel spesifisering av forskjellige handlinger som for eksempel å forby en IP ved hjelp av iptables eller hosts.nektregler, eller bare sende en varslings-e-post.

Som standard kommer den med filteruttrykk for forskjellige tjenester (sshd, apache, qmail, proftpd, sasl etc.), men konfigurasjonen kan enkelt utvides for å overvåke andre tekstfiler. Alle filtre og handlinger er gitt i konfigurasjonsfilene, slik at fail2ban kan brukes til å brukes med en rekke filer og brannmurer.

Kommentarer

  • Ok ja, jeg ' Jeg redigerer flisen. Ah ok, vel jeg prøvde iptables -A INPUT -s 117.25.128.0/24 -j DROP men det blokkerte ikke ' det heller.
  • -I INPUT setter inn den nye regelen øverst i INPUT-kjeden. -A INPUT legger den til bunnen av kjeden. hvis -A INPUT ikke fungerte ', må det ha vært noen annen regel tidligere i kjeden som tillot disse pakkene.
  • ahhh ok, jeg ' m forutsatt at forrang er topp til bunn da?
  • yep. første matchende regel vinner.
  • Perfekt det ser ut til å fungere! Takk skal du ha. Raskt spørsmål om så mange forespørsler kommer fra samme henvisning, dvs. (item.taobao.com) med annen klient-IP ' s, så jeg ' jeg antar at de ' bruker noen form for omdirigering. Er det en måte å blokkere med henvisning, eller blokkere med 117. * Brukes som en jokertegn?

Svar

Når det gjelder det opprinnelige spørsmålet ditt. Min Apache i debian er ikke konfigurert med libwrap, så den vil ikke konsultere verter. Deny. [Forrige svar nevner det allerede – virkeligheten er at tcpwrappers ikke er selve symbolet på sikkerhet som det var på 90-tallet, spesielt når det kommer til svartelisting]. Du må kjøre den ikke som en demon, men fra (x) inetd, noe som vil redusere hastigheten (betydelig).

Du kan blokkere / tillate tilgang på Apache-nivå, og gjøre trenger ikke tcp-innpakninger for Apache [eller iptables for den saks skyld]. Du har ikke nevnt ssh, men jeg lar aldri ssh-servere være åpne utenpå direkte. Fortsett å lese videre.

Vi har en vhost med 300 + domener, og også lignende problemer, med taobao, baidu og ofte til og med google edderkopper. Spesielt baidu edderkopper kan være ganske aggressive og vedvarende.

Som du allerede har funnet ut, har de gårder med servere, og selv om du blokkerer en IP, vil de vises igjen snart fra andre IP-adresser.

Det er ikke praktisk i det hele tatt å prøve å vedlikeholde lis ts av IP-adresser / nettblokker for hånd.

Det som fungerer ganske bra for oss er modsecurity som blokkerer brukeragentstrenger permanent mens mod_evasive blokkerer midlertidig IP-er som er voldelige.

Dette oppsettet , i tillegg til å bremse edderkopper fra søkemotorer, har også fordelen av å dempe zombier som prøver å gjette passord på CMSer.

Den relevante delen av modsecurity.conf

SecRule REQUEST_HEADERS:User-Agent "Yandex" phase:1,deny,nolog,id:"6972" SecRule REQUEST_HEADERS:User-Agent "ichiro" phase:1,deny,nolog,id:"6973" SecRule REQUEST_HEADERS:User-Agent "Baiduspider" phase:1,deny,nolog,id:"6974" SecRule REQUEST_HEADERS:User-Agent "Baiduspider/.*" phase:1,deny,nolog,id:"6975" SecRule REQUEST_HEADERS:User-Agent "Baiduspider-video" phase:1,deny,nolog,id:"6976" SecRule REQUEST_HEADERS:User-Agent "Baiduspider-image" phase:1,deny,nolog,id:"6977" SecRule REQUEST_HEADERS:User-Agent "sogou spider" phase:1,deny,nolog,id:"6978" SecRule REQUEST_HEADERS:User-Agent "YoudaoBot" phase:1,deny,nolog,id:"6979" SecRule REQUEST_HEADERS:User-Agent "bingbot(at)microsoft.com" phase:1,deny,nolog,id:"6980" SecRule REQUEST_HEADERS:User-Agent "msnbot(at)microsoft.com" phase:1,deny,nolog,id:"6981" SecRule REQUEST_HEADERS:User-Agent "BLEXBot/1.0" phase:1,deny,nolog,id:"6982" SecRule REQUEST_HEADERS:User-Agent "Bot.*" phase:1,deny,nolog,id:"6984" SecRule REQUEST_HEADERS:User-Agent "AhrefsBot.*" phase:1,deny,nolog,id:"6985" 

Og vår mod-evasive.conf

DOSHashTableSize 2048 DOSPageCount 10 DOSSiteCount 300 DOSPageInterval 2.0 DOSSiteInterval 1.0 DOSBlockingPeriod 600.0 DOSLogDir /var/log/apache2/evasive DOSWhitelist 127.0.0.1 DOSWhitelist 1xx.xxx.xxx.xx 

Jeg glemte også en veldig reell mulighet. Hvis du ikke har å gjøre med Kina eller kjører hjemmeserveren din, er det bare å blokkere hele landet. Nivået på angrep og skadelig programvare som kommer fra dem, har rettferdiggjort mange fagpersoner til å gjøre det.

http://www.cyberciti.biz/faq/block-entier-country-using-iptables/

Jeg har også glemt å legge til dette ganske lange svaret en fotnote.Ofte foreslår folk meg på jobben for å bruke robots.txt til denne typen problemer. Poenget er roboter.txt er bare et forslag til eksterne programmer. Skurkaktører ignorerer dem absolutt, og det er ikke garantert at andre nettcrawlere ærer dem i dag. Fra testene våre ser Baidu for eksempel ikke ut til å ære dem. (robots.txt det tilsvarer å spørre en gangster, vær så snill å kile meg i stedet for å slå meg)

Kommentarer

  • Takk mann! ja jeg ' Jeg vil definitivt bruke mod_evasive, de som konfigurerer filinnstillinger fungerer bra for deg?
  • De fungerer ganske bra, de fleste av våre vhosts har ikke mye besøkende. Ellers må du øke dospagecount (maks antall besøk på en enkelt side fra en IP), og dossitecount (max besøk av og IP) tilsvarende.
  • Se på de første linjene mine igjen.
  • Fikk det fornuftig, jeg ' Jeg vil lese om innstillingene. Takk igjen for all hjelpen!
  • (ikke ta det galt, bare foreslå å blokkere adresser på webserveren eller Apache kan være en bedre tittel) … likevel var det ikke for denne kommentaren jeg kom her igjen, les svaret igjen takk. Foruten kommentarer i begynnelsen, vil du finne noe mer interessant til slutt.

Legg igjen en kommentar

Din e-postadresse vil ikke bli publisert. Obligatoriske felt er merket med *