Introduksjon til blekksprut: trinnvis oppsett

Blekksprutlogo og Tux

Squid er et annet filter på applikasjonsnivå som kan utfylle iptables. Squid er en hurtigbufret web-proxy-server, den er veldig populær og gratis, og den er plattform. Selv om den kan brukes til å forbedre ytelsen til Internett-tilkoblinger, kan den også brukes av sikkerhetshensyn. Siden prosjektet startet på 90-tallet, har Squid vært veldig avansert, og nå presenterer vi det for deg slik at du vet hvordan du bruker det.

For din installasjon, kan du få tilgang til prosjektets offisielle nettside og velg binære pakker for operativsystemet eller distribusjonen. Hvis du vil installere den fra kildekodepakken ved å kompilere, også du har det alternativet. De tilgjengelige tarballene er tar.gz, tar.bz2 og tar.xz. Hvis du ikke vet hvordan du installerer, kan du gå til artikkelen som vi redigerer i denne bloggen om hvordan du installerer en hvilken som helst pakke fra Linux. øye! Hvis du har en Debian eller et derivat og har sett at det er installert med sudo "apt-get install squid", kan det hende du får en feil, fordi du må erstatte "blekksprut" med "squid3" for at den skal tre i kraft ...

Nå går vi direkte til handling og forklarer noen eksempler på hvordan du bruker blekksprut for å beskytte utstyret vårt. Før jeg vil forklare at blekksprut er basert på ACL-er, det vil si på tilgangskontrolliste eller tilgangskontrolliste, det vil si lister som detaljerer tillatelsene til å kontrollere nettverket i dette tilfellet og implementerer filtre som ligner på iptables, men på applikasjonsnivå.

Normalt, etter installasjon, er en konfigurasjonsfil inkludert som du finner i /etc/squid3/squid.conf og det er dette vi må redigere med en redaktør som nano eller gedit. I den kan vi generere filtreringsreglene våre, selv om det er alternativer cache_dir, cache_mem og http_port, vil vi bruke sistnevnte til sikkerhetsreglene våre. En annen detalj er at denne filen spesifiserer standardporten som brukes av Squid-tjenesten, som standard er 3128 (se linjen eller direktivet "http_port 3128" og fjern # for å aktivere den). Hvis du vil, kan du endre den til en annen port som 8080 ... Og en annen ting som er nødvendig er å konfigurere vertsnavnet, se etter kommentaren "TAG: Visible_hostname" og du vil se en linje "visible_hostname" der du må sette vertsnavnet ditt.

For å kjenne vertsnavnet ditt, kan du skrive inn terminalen:

hostname

Og navnet som vises, legger du til linjen som ikke skal gå foran #, slik at den ikke blir ignorert som en kommentar. Det vil si at det vil se slik ut:

visible_hostname hostname_have_you_appeared

Hvis du ser konfigurasjonsfilen, vil du se at den er veldig kommentert, Hvis du vil overstyre en opprettet regel, kan du starte linjen med # og du forvandler den til en kommentar, som blekksprut ignorerer den, for å sette den i bruk igjen, sletter du # og det er det. Det er faktisk mange opprettet og kommenterte regler som du kan bruke ved å fjerne #. Så du trenger ikke å slette og skrive om regler. Vel, for å legge til en bestemt regel eller et filter, må det ha en ACL og et direktiv som indikerer hva du skal gjøre.

Forresten, når du fjerner et # for å aktivere en regel, sørg for at du ikke forlater mellomrom i begynnelsen av linjen. For eksempel:

Feil vei:

http_port 3128

Riktig måte:

http_port 3128

Har du ikke hørt noe? Vel, ikke bekymre deg, med et eksempel du vil se alt mye bedre. Se for deg dette:

acl blokkerer url_regex som facebook
http_access nekte blokkering

Hva denne regelen betyr er at acl med navnet "blokkering" vil forby tilgang til URL-en som inneholder "facebook" (derfor, hvis vi prøver å gå inn på Facebook, hopper det over en feil i nettleseren). Hvis du i stedet for å "nekte" bruker "tillat", vil du tillate tilgang i stedet for å forby det. Du kan også bruke! For å ekskludere, for eksempel, anta at du vil gi tilgang til liste1 men ikke liste2:

http_access allow lista1 !lista2

Et annet eksempel kan være å lage en fil / etc / squid3 / ips tillatt og i den lagrer du en liste over IP-er som vi vil gi tilgang. Anta for eksempel at innholdet av tillatte ips er:

192.168.30.1

190.169.3.250

192.168.1.26

Og så lager vi acl for å gi tilgang til disse IP-ene:

acl nuevaregla src "/etc/squid3/ipspermitidas"

Et ganske praktisk eksempelTenk deg at datamaskinen din brukes av barn under 18 år, og at du vil begrense tilgangen til visse nettsteder for seksuelt innhold. Det første er å lage en fil som heter / etc / squid3 / list med innholdet:

voksen

porno

kjønn

poringa

Og nå inn  squid.conf-filen vi setter følgende regel:

acl denegados url_regex "/etc/squid3/lista"

http_access allow !denegados

Som du kan se vi har brukt tillate som i prinsippet er å tillate, men hvis du ser har vi lagt til! å benekte, vil det derfor tilsvare å sette:

acl denegados url_regex "/etc/squid3/lista"

http_access deny denegados

Du kan også opprette lister, ikke bare over domenenavn eller IP-er slik vi har gjort, du kan også sette domener og for eksempel begrense tilgangen til domener som .xxx, .gov, etc. La oss se på et eksempel basert på den forrige regelen. Vi oppretter en fil / etc / squid3 / domains som har:

. Edu

. es

. Org

Og nå vår regel, for å nekte tilgang til listen over forbudte nettsteder vi oppretter, men tillate tilgang til URL-adresser med disse domenene:

acl denegados url_regex "/etc/squid3/lista" 
acl permitidos dstdomain "/etc/squid3/dominios"

http_access allow !denegados dominios

UTVIDELSE:

Beklager, da jeg så kommentarene, skjønte jeg det Jeg har manglet det viktigste. Jeg har nettopp satt eksempler på hvordan den brukes og glemte å si det for å starte blekksprut-serveren:

sudo service squid3 start

Før den kom opp med "/etc/init.d/squid start", men nå må du bruke denne andre linjen som jeg har lagt til deg. Akkurat som konfigurasjonsfilen ikke lenger er i /etc/squid/squid.conf, men i /etc/squid3/squid.conf. Ok, når filtreringspolicyene er opprettet, og vi starter den, må vi også konfigurere nettleseren, for eksempel hvis du bruker Mozilla Firefox eller derivater, kan du gå til konfigurasjonsmenyen (du vet, de tre stolpene), og deretter til Innstillinger, Avansert, og i kategorien Nettverk, klikk på Konfigurasjon i Tilkoblingsdelen. Der velger vi manuell proxy-konfigurasjon og legger IP-en vår og porten Squid bruker, i dette tilfellet 3128. Velg også "Bruk den samme proxyen for alt" og avslutt å lagre endringene.

vær så snill Ikke glem å legge igjen kommentarene dine, tvil eller hva du vil ... Selv om det er en opplæring langt over blekksprut, håper jeg det hjelper deg.


Legg igjen kommentaren

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

*

*

  1. Ansvarlig for dataene: AB Internet Networks 2008 SL
  2. Formålet med dataene: Kontroller SPAM, kommentaradministrasjon.
  3. Legitimering: Ditt samtykke
  4. Kommunikasjon av dataene: Dataene vil ikke bli kommunisert til tredjeparter bortsett fra ved juridisk forpliktelse.
  5. Datalagring: Database vert for Occentus Networks (EU)
  6. Rettigheter: Når som helst kan du begrense, gjenopprette og slette informasjonen din.

  1.   Nicolas sa

    takk !, nyttig.

  2.   Jimmy Olano sa

    IGJEN veldig godt kondensert for et litt komplekst emne, jeg fortsetter å si "brukernivå: medium", du bør vite noen forestillinger om "nettverk".

    Jeg mener ydmykt at alternativet for å konfigurere nettleseren vår til å bruke "proxy" bør legges til, men da denne oppføringen er en "INNLEDNING til blekksprut", vil vi være veldig klar over den neste? levering (til slutt, og med fare for at jeg blir irriterende, HUSK å ikke "fullmakte" bankwebsidene og / eller finansinstitusjonene du bruker hjemme eller i ditt firma).

    1.    Isaac PE sa

      Hei, takk for kommentarene. Ja, IPTABLES og blekksprut er for tykke til å lage en artikkel som forklarer dem i dybden, og du må begrense deg til å sette hverdagseksempler ...

      Men du har helt rett, jeg har lagt den til for å konfigurere proxyen, jeg hadde planlagt den og jeg glemte den. Min feil.

      Hilsen og takk !!

      1.    Jimmy Olano sa

        Uffff "bagasjerom" beklager at jeg ikke innser det viktigste:
        START TJENESTEN :-( uten at "det er ingen tante din" - tilgi meg for samtalen - VELDIG vellykket utvidelse! 8-)

        {å gjøre det løst ved hver oppstart er ved å endre "/ sbin / init":
        http: // www. ubuntu-es.org/node/ 13012 # .Vsr_SUJVIWw}

        {en annen enklere måte er å bruke "update-rc.d":
        https: // parbaedlo. wordpress.com/201 3/03/07 / setting-start-and-stop-of-services-linux-update-rc-d /}

        Jeg har lagt til mellomrom i lenkene, fjern dem og du vil navigere ;-)

        TUSEN TAKK FOR OPPMERKSOMHETEN.

  3.   ALBERT sa

    LINUX NYHETER: Attack on Linux Mint: infiser installatører og kompromitter brukerlegitimasjon

    http://www.muylinux.com/2016/02/21/ataque-a-linux-mint

    1.    azpe sa

      Jeg har allerede lagt det ut, men ikke spam andre sider her takk

  4.   ALBERT sa

    ANDROID NYHETER: GM Bot, Android Trojan som Mazar er hentet fra

    http://www.redeszone.net/2016/02/21/gm-bot-el-troyano-para-android-del-que-deriva-mazar/

  5.   hernan sa

    Hei Jimmy, hvordan gjør du at blekksprut ikke søker på sidene etter deg? Det ville være fint om du kommenterer det gjennomsiktige alternativet, som unngår kjedelig å konfigurere proxy til hver datamaskin

    1.    Jimmy Olano sa

      Godt spørsmål, jeg har installert en CAPTCHA i gratis programvare på kundenes websider:
      (http: // www. ks7000. net. ve / 2015/04/03 / un-captcha-enkelt og enkelt å implementere /
      -Humily, det er IKKE "spam" eller selvreklame, det er passende-)
      Og jeg forestiller meg at når jeg bruker blekksprut, blir disse bildene IKKE lastet inn på nytt fordi jeg setter det samme navnet på dem -ea, jeg kan også generere tilfeldige navn, jeg hadde ikke tenkt på det, før nå - og ved å ha samme navn, returnerer blekksprut det den har i "hurtigbufferen".

      Åpenbart er hovedfunksjonen til «proxy» å lagre båndbredde med bildene - den tyngste av en webside - [i] i antagelsen om at disse bildene er statiske, de endres ikke over tid, noe som er sant i 99% av saker [/ i].

      Men i CAPTCHAs, siden "det kjører ikke", må vi eliminere forrige lagring og alltid returnere et nytt bilde.

      SOM FOR BANKENE, forstår jeg at den største i Spania er «Caixa» fordi vi vil lage en EKSEMPEL-regel:

      acl caixa dstdomain .lacaixa.es

      der:
      acl -> kommando for å opprette regel (les Mr. Isaacs artikkel, avsnittene ovenfor).

      caixa -> regelnavn.

      dtsdomain -> "type" alternativ for å indikere at vi refererer til et domene, VIKTIG punktet i begynnelsen ( http://ww w. løse. com / blekksprut / squid24s1 / access_controls.php)

      domene (r) -> Jeg forestiller meg at vi kan legge til domenene vi trenger, atskilt med et mellomrom; når jeg snakker om mellomrom, har jeg satt dem inn i de angitte nettkoblingene, fjern dem og du vil navigere (sider på engelsk)

      Jeg håper kunnskapen som presenteres her er nyttig for deg, takket være LinuxAdictos!

    2.    Jimmy Olano sa

      Vel, for å svare på spørsmålet om TRANSPARENSE i blekksprut IGJEN insisterer jeg på at du må ha kunnskap på mellomnivå og av didaktiske grunner vil jeg oppsummere så mye som mulig følgende artikkel (på engelsk) som jeg anser snakker veldig godt om emnet:

      http: // ww w.deckle.co. uk / blekksprut-brukerveiledning / gjennomsiktig-caching-proxy.html

      Merknader:
      -Jeg har lagt til mellomrom i lenkene for å unngå pingback fra meg (jeg har absolutt ingenting med laget å gjøre). Linux Adictos, derfor er jeg ikke autorisert til å utføre nevnte handling).
      - DETTE OM ÅPENHET VISSTE JEG IKKE! (de lærte meg ikke, sier jeg).
      -Hjelpe dere jeg hjelper meg også, dette er kult i mengde! ?

      Vel, når det er sagt, la oss komme i gang:

      Jeg foreslo nettopp Mr. Isaac å utvide konfigurasjonen av nettleserne våre med proxyen installert, og det gjorde han veldig vennlig (wow, hvor finner denne mannen tid til å gjøre så mange ting?).

      I henhold til denne ordningen er bruken av blekksprut VALGFRITT: hver bruker av vårt lokale nettverk vil ha ansvaret for å gjøre jobben sin, men du kan satse «sølvhardt mot papir-pesetas» at det er noe «bash-skript» som kan installeres. . via SSH til forskjellige datamaskiner som kjører GNU / Linux.

      FORSKRIFT: at vår Squid-server fungerer som Mr. Isaac lærer i dette innlegget, hvis vi allerede har testet den og lagt en "arbeidsmengde" på den og den fungerer bra, kan vi fortsette å gå lenger.

      UNDER ÅPENHETSORDNINGEN:

      FØRSTE. - Vår blekksprut må være standardruten "gateway" i vår "eth0" eller "wlan0" - husker du kunnskapen på middels nivå? - vel, vi etablerer den der (det gjøres som standard med DHCP DERFOR må vi også konfigurere en server for en slik tjeneste:
      http: // no.wikipe dia.org/wiki/ Dynamic_Host_Configuration_Protocol).

      Vi må planlegge å konfigurere, i tilfelle feil, omdirigere all trafikk til vårt modem (er) direkte hvis Squid - datamaskinen der den kjører - er overbelastet med arbeidsbelastningen - og bruker modemet (e) typen "bridge" slik at de går utenfor, dette oppnås ved å lage et "skript" som utløses i nevnte tilfelle og konfigurerer DHCP-serveren vår - som skal installeres på en annen datamaskin enn vår blekksprut.

      MERKNAD: datamaskinen vår med Squid vil alltid avhenge av IP-adressen fra DHCP, men samtidig vil den ha litt "kontroll" med nevnte DHCP-server. Hvis du vil jobbe med faste IP-adresser, med kraft, kan du det, men når du legger til flere datamaskiner ELLER ERSTATT noen, må du konfigurere det igjen, og det er ikke ideen (les med glede:
      ht tps: // feno barbital. wordpress.com/2012/07/23/the-12-reasons-by-who-a-administrator-of-systems-lazy-is-a-good-administrator/)
      EN ANNEN MERKNAD (se andre punkt): vårt modem (er) og / eller ruterenheter må deaktivere DHCP-funksjonen og at de styres av DCHP-serveren vår (som jeg forsikrer deg om at en annen oppføring kommer ut av dette for å vise oss hvordan monteringen sa tjenesten-)

      ANDET. - Vi må filtrere trafikken mot Squid-serveren vår, dette hvis vi har flere spredte rutere som dekker et trådløst nettverksområde "wifi", det er fortsatt et lokalt nettverk, men av middels størrelse. I hovedsak er det det samme som det første punktet, MEN hvis vi har forskjellige enheter ELLER SELV subnett, må vi konfigurere dem også, så vær forsiktig med de av oss som jobber med å "knuse strykejernene" i store selskaper.

      TREDJE. - I vår GNU / Linux som er vert for Squid, må vi omdirigere portene og konfigurere «brannmuren» (les forrige artikkel IPTables
      http://www.linuxadictos.com/introduccion-a-iptables-configura-un-firewall-en-linux.html )

      iptables -t nat -A PREROUTING -p TCP –port 80 -j REDIRECT –to-port 3128

      og til IPFW:

      / sbin / ipfw legg til 3 fwd 127.0.0.1,3128 tcp fra hvilken som helst til hvilken som helst 80

      Det burde være unødvendig å si at vi IKKE kan kjøre en Apache- eller Ngix-server på den porten 80 - standardporten til nettsidene - FELLES SINSE INDIKATER for ikke å legge mer belastning på datamaskinen vår med blekksprut - avhengig av diskplass for «cache» -.

      FJERDE. - Vi må konfigurere blekksprut-serveren vår og fortelle den at den fungerer i den modusen ved å endre "/etc/squid/squid.conf" med nano eller redaktøren du liker best:

      http_port 3128 gjennomsiktig

      Vi må også aktivere videresending av pakker i "/etc/sysctl.conf":

      net.ipv4.ip_forward = 1
      net.ipv6.conf.all.forwarding = 1

      Denne siste linjen hvis vi har IPv6, er det bra å konfigurere den en gang i fremtiden.

      Start til slutt Squid-tjenesten på nytt som anbefalt av Mr. Isaac ovenfor, og start også nettverkstjenesten på nytt:

      /etc/init.d/procps.sh start på nytt

      NOEN TRO PÅ ERRATA (eller noe tull fra min side) gi meg beskjed på samme måte, din kritikk og kommentarer er velkomne;
      MR. ISAAC ER MODERATOREN som vil ha det siste ordet i denne "kampen".

  6.   Jimmy Olano sa

    I denne korte videoen kan vi se hvordan du konfigurerer Mozilla til å bruke en proxy-server, med unntak av at den bruker en virtuell maskin med ReactOS, men den er kort, og jeg tror det ILLUSTRERER det du vil konfigurere her (lenke deaktivert med mellomrom, fjern dem og bla gjennom):

    ht tps: / / www. Youtube. com / watch? v = st47K5t7s-Q

  7.   Lærer sa

    Jeg har akkurat begynt å følge radiostasjonen din, jeg har vært 2 dager .. og veldig bra innhold ..
    Hilsen fra Mexico .. (Jeg er lærer og sandkornet mitt er å bruke opensource)

  8.   Væren sa

    Jeg vil at du skal hjelpe meg. Jeg vil gi privilegiet til en bruker å se Facebook og at de andre er med begrensningene som allerede er konfigurert, og hvordan du kan aktivere Internett-brukere på bestemte tidspunkter. Jeg vil at du skal gi meg råd, takk

  9.   Belkis sa

    Ari, det de forklarte meg om det er at maskinen du vil ikke er begrenset, den må utelates, men inntil da har jeg forklaringen, jeg er også uerfaren om emnet

  10.   Victor sa

    God natt, unnskyld meg, kanskje spørsmålet mitt er litt grunnleggende, men hei, jeg har installert blekksprut og konfigurert på en centos 5.4, installert vin og ultrasurf, det jeg har tenkt å gjøre er å dele internett fra ultrasurf med blekksprut, jeg gjør det samme på en Windows-maskin XP med FreeProxy og ultrasurf, og jeg kan dele den uten problemer, men jeg vet ikke hvordan jeg gjør det i Linux

  11.   daniel andrada sa

    Jeg konsulterer deg, jeg har en konfigurasjon som din, i mitt tilfelle omdirigerer jeg port 80 til 8080 der blekkspruten kjører. Problemet er at noen brukere lar konfigurasjonen ligge på datamaskinene sine, og får tilgang gjennom port 80, men ikke alle tjenester. Dette med iptables. Har du noen anelse om hvor problemet ville være?

  12.   Mer sa

    Veldig nyttig og godt forklart. Takk!

    Jeg har et spørsmål når jeg vil lage en ACL, hvor gjør jeg det, det vil si i hvilken linje i konfigurasjonsfilen? Og skal jeg umiddelbart legge 2 linjer under http_access-kommandoen som du viser i innlegget ditt? Eller hvor?

    Takk igjen!! Hilsener!