Inleiding tot inktvis: stapsgewijze installatie

Inktvislogo en Tux

Squid is een ander filter op toepassingsniveau die iptables kan aanvullen. Squid is een webproxyserver in de cache, het is erg populair en gratis, en het is platformonafhankelijk. Hoewel het kan worden gebruikt om de prestaties van internetverbindingen te verbeteren, kan het ook worden gebruikt voor beveiligingsdoeleinden. Sinds het project begon in de jaren 90, is Squid erg geavanceerd en nu presenteren we het aan u zodat u weet hoe u het moet gebruiken.

Voor uw installatie, hebt u toegang tot het officiële website van het project en selecteer de binaire pakketten voor uw besturingssysteem of distributie. Als u het wilt installeren vanuit het broncodepakket door te compileren, ook je hebt die optie​ De beschikbare tarballs zijn tar.gz, tar.bz2 en tar.xz. Als u niet weet hoe u moet installeren, kunt u naar het artikel gaan waarover we in deze blog bewerken hoe je een pakket van Linux installeert​ Oog! Als u een Debian of een derivaat heeft en u hebt gezien dat het is geïnstalleerd met sudo "apt-get install squid", kunt u een foutmelding krijgen, omdat u "squid" moet vervangen door "squid3" om het van kracht te laten worden. .

Nu gaan we direct naar actie uit te leggen enkele voorbeelden van het gebruik van Squid om onze apparatuur te beschermen. Voordat ik zou willen uitleggen dat Squid is gebaseerd op ACL's, dat wil zeggen, in toegangscontrolelijst of toegangscontrolelijst, dat wil zeggen lijsten met de machtigingen om in dit geval de netwerkstroom te controleren en filters te implementeren die vergelijkbaar zijn met die van iptables, maar op applicatieniveau.

Normaal gesproken wordt na installatie een configuratiebestand meegeleverd dat u kunt vinden in /etc/squid3/squid.conf en dit is dat we moeten bewerken met een editor zoals nano of gedit. Daarin kunnen we onze filterregels genereren, hoewel er opties cache_dir, cache_mem en http_port zijn, zullen we de laatste gebruiken voor onze beveiligingsregels. Een ander detail is dat dit bestand de standaardpoort specificeert die wordt gebruikt door de Squid-service, die standaard 3128 is (zie de regel of richtlijn "http_poort 3128" en verwijder de # om deze te activeren). Als je wilt, kun je het wijzigen in een andere poort zoals 8080 ... En een ander ding dat nodig is, is het configureren van de hostnaam, zoek naar de opmerking "TAG: Visible_hostname" en je ziet een regel "visible_hostname" waar je moet plaatsen uw hostnaam.

Om uw hostnaam te weten, kunt u de terminal typen:

hostname

En de naam die verschijnt, voegt u toe aan de regel die niet moet worden voorafgegaan door # zodat deze niet als commentaar wordt genegeerd. Dat wil zeggen, het zou er als volgt uitzien:

visible_hostname hostname_which_you_appeared

Als je het configuratiebestand ziet, zul je zien dat het erg becommentarieerd is, als u een gemaakte regel wilt negeren, kunt u de regel beginnen met # en je zet het om in een opmerking, waarmee Squid het negeert, om het weer in gebruik te nemen, verwijder je de # en dat is alles. In feite zijn er veel gemaakte en becommentarieerde regels die u kunt gebruiken door # eruit te verwijderen. U hoeft dus geen regels te verwijderen en te herschrijven. Om een ​​specifieke regel of filter toe te voegen, moet het een ACL en een richtlijn hebben die aangeeft wat te doen.

Trouwens, als je een # verwijdert om een ​​regel te activeren, zorg ervoor dat u geen spaties achterlaat aan het begin van de regel. Bijvoorbeeld:

Verkeerde weg:

http_port 3128

Goede weg:

http_port 3128

Heb je niks gehoord? Maak je geen zorgen, met een voorbeeld je zult alles veel beter zien. Stel je dit voor:

acl blokkeert url_regex als facebook
http_access blokkeren blokkeren

Wat deze regel betekent is dat de acl met de naam "blocking" de toegang verbiedt tot de URL die "facebook" bevat (dus als we proberen Facebook in te voeren, zal het een fout in de browser overslaan). Als u in plaats van "weigeren" "toestaan" gebruikt, zou u toegang toestaan ​​in plaats van het te verbieden. U kunt ook de! Om bijvoorbeeld uit te sluiten, stel dat u toegang tot lijst1 wilt toestaan, maar niet tot lijst2:

http_access allow lista1 !lista2

Een ander voorbeeld is het aanmaken van een bestand / etc / squid3 / ips toegestaan en daarin een lijst met IP's opslaan die we toegang willen verlenen. Stel dat de inhoud van toegestane ips is:

192.168.30.1

190.169.3.250

192.168.1.26

En dan maken we de acl om toegang tot deze IP's toe te staan:

acl nuevaregla src "/etc/squid3/ipspermitidas"

Een behoorlijk praktisch voorbeeldStel dat uw computer wordt gebruikt door kinderen onder de 18 jaar en dat u de toegang tot bepaalde sites met inhoud voor volwassenen wilt beperken. Het eerste is om een ​​bestand met de naam / etc / squid3 / list te maken met de inhoud:

volwassen

porno

geslacht

Poringa

En nu binnen  het bestand squid.conf we stellen de volgende regel:

acl denegados url_regex "/etc/squid3/lista"

http_access allow !denegados

Zoals je ziet we hebben gebruikt toestaan wat in principe wel mag, maar als je kijkt hebben we er aan toegevoegd! ontkennen zou daarom hetzelfde zijn als:

acl denegados url_regex "/etc/squid3/lista"

http_access deny denegados

U kunt ook lijsten maken, niet alleen met domeinnamen of IP's zoals we hebben gedaan, je kunt ook domeinen plaatsen en bijvoorbeeld de toegang beperken tot domeinen zoals .xxx, .gov, etc. Laten we een voorbeeld bekijken op basis van de vorige regel. We maken een bestand / etc / squid3 / domains met:

. Edu

. es

.org

En nu onze regel, om toegang te weigeren tot de lijst met verboden sites die we maken, maar om toegang te verlenen tot URL's met deze domeinen:

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

http_access allow !denegados dominios

UITBREIDING:

Sorry, toen ik de opmerkingen zag, realiseerde ik me dat Ik heb het belangrijkste gemist​ Ik heb mezelf beperkt tot het geven van voorbeelden van hoe het wordt gebruikt en ik vergat dit te zeggen om de Squid-server te starten:

sudo service squid3 start

Voordat het opstond met "/etc/init.d/squid start", maar nu moet je deze andere regel gebruiken die ik voor je heb gezet. Net zoals het configuratiebestand niet langer in /etc/squid/squid.conf staat, maar in /etc/squid3/squid.conf. Ok, als het filterbeleid eenmaal is gemaakt en het is gestart, moeten we ook de browser configureren.Als je bijvoorbeeld Mozilla Firefox of afgeleiden gebruikt, kun je naar het configuratiemenu gaan (je weet wel, de drie balken), en vervolgens naar Voorkeuren, Geavanceerd, en klik op het tabblad Netwerk op Configuratie in het gedeelte Verbinding. Daar selecteren we Handmatige proxyconfiguratie en plaatsen ons IP-adres en de poort die Squid gebruikt, in dit geval 3128. Selecteer ook "Gebruik dezelfde proxy voor alles" en verlaat het opslaan van de wijzigingen.

Gelieve Vergeet niet uw opmerkingen achter te laten, twijfels of wat je maar wilt ... Hoewel het een tutorial is ver boven Squid, hoop ik dat het je helpt.


Laat je reactie achter

Uw e-mailadres wordt niet gepubliceerd. Verplichte velden zijn gemarkeerd met *

*

*

  1. Verantwoordelijk voor de gegevens: AB Internet Networks 2008 SL
  2. Doel van de gegevens: Controle SPAM, commentaarbeheer.
  3. Legitimatie: uw toestemming
  4. Mededeling van de gegevens: De gegevens worden niet aan derden meegedeeld, behalve op grond van wettelijke verplichting.
  5. Gegevensopslag: database gehost door Occentus Networks (EU)
  6. Rechten: u kunt uw gegevens op elk moment beperken, herstellen en verwijderen.

  1.   Nicolas zei

    dankjewel !, behulpzaam.

  2.   Jimmy olano zei

    OPNIEUW zeer goed gecondenseerd voor een ietwat ingewikkeld onderwerp, ik blijf zeggen "gebruikersniveau: gemiddeld", je zou enkele begrippen moeten kennen over "netwerken".

    Ik ben HUMBLY van mening dat de optie om onze browser te configureren om de "proxy" te gebruiken moet worden toegevoegd, maar aangezien dit item een ​​"INTRODUCTIE tot Squid" is, zullen we ons zeer bewust zijn van de volgende? levering (tot slot, en met het risico dat ik irritant ben, VERGEET NIET om de bankwebpagina's en / of financiële instellingen die u bij u thuis of in uw bedrijf gebruikt, niet te "proxy".

    1.    Isaac PE zei

      Hallo, bedankt voor de reacties. Ja, IPTABLES en Squid zijn te dik om een ​​artikel te maken waarin ze diepgaand worden uitgelegd en je moet jezelf beperken tot alledaagse voorbeelden ...

      Maar je hebt helemaal gelijk, ik heb het nu toegevoegd om de proxy te configureren, ik had het gepland en ik was het vergeten. Mijn fout.

      Groetjes en bedankt!

      1.    Jimmy olano zei

        Uffff "trunk" sorry voor het niet beseffen van het belangrijkste:
        START DE SERVICE :-( zonder dat «er is geen je tante» -vergeef me voor de informele toespraak- ZEER SUCCESVOLLE UITBREIDING! 8-)

        {het repareren bij elke keer opstarten is door de "/ sbin / init" aan te passen:
        http: // www. ubuntu-es.org/node/ 13012 # .Vsr_SUJVIWw}

        {een andere eenvoudigere manier is om "update-rc.d" te gebruiken:
        https: // parbaedlo. wordpress.com/201 3/03/07 / setting-start-and-stop-of-services-linux-update-rc-d /}

        Ik heb spaties aan de links toegevoegd, verwijder ze en je zult navigeren ;-)

        BEDANKT VOOR JULLIE AANDACHT.

  3.   ALBERT zei

    LINUX NIEUWS: Aanval op Linux Mint: infecteer installatieprogramma's en compromitteren gebruikersreferenties

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

    1.    azpe zei

      Ik heb het al gepost, maar spam hier alstublieft geen andere pagina's

  4.   ALBERT zei

    ANDROID NIEUWS: GM Bot, de Android-trojan waarvan Mazar is afgeleid

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

  5.   Hernan zei

    Hallo Jimmy, Hoe zorg je ervoor dat inktvis die pagina's niet voor jou doorzoekt? Het zou leuk zijn als u commentaar geeft op de transparante optie, die de verveling van het configureren van proxy op elke computer vermijdt

    1.    Jimmy olano zei

      Goede vraag, ik heb een CAPTCHA in gratis software geïnstalleerd op de webpagina's van mijn klanten:
      (http: // www. ks7000. net. ve / 2015/04/03 / un-captcha-easy-and-simple-to-implement /
      -Humily, het is GEEN "spam" of zelfpromotie, het is gepast-)
      en ik stel me voor dat wanneer ik Squid gebruik, deze afbeeldingen NIET opnieuw worden geladen omdat ik er dezelfde naam op zet -ea, ik kan ook willekeurige namen genereren, daar had ik tot nu toe niet over nagedacht- en door dezelfde naam te hebben, geeft Squid terug wat het heeft in de "cache."

      Het is duidelijk dat de belangrijkste functie van de «proxy» is om bandbreedte te besparen met de afbeeldingen -de zwaarste van een webpagina- [i] in de veronderstelling dat deze afbeeldingen statisch zijn, ze veranderen niet in de loop van de tijd, wat het geval is in 99% van de gevallen [/ i].

      Maar in CAPTCHA's, aangezien "er niet wordt uitgevoerd", moeten we de vorige opslag elimineren en altijd een nieuwe afbeelding retourneren.

      Wat betreft de banken, ik begrijp dat de grootste in Spanje «Caixa» is, omdat we een VOORBEELD-regel zullen maken:

      acl caixa dstdomein .lacaixa.es

      waar:
      acl -> commando om een ​​regel te creëren (lees het artikel van Mr. Isaac, de paragrafen hierboven, opnieuw).

      caixa -> regel naam.

      dtsdomain -> "type" optie om aan te geven dat we naar een domein verwijzen, BELANGRIJK de punt aan het begin ( http://ww w.visolve. com / inktvis / squid24s1 / access_controls.php)

      domein (en) -> Ik stel me voor dat we de domeinen die we nodig hebben kunnen toevoegen, gescheiden door een spatie; Over spaties gesproken, ik heb ze in de aangegeven weblinks ingevoegd, verwijder ze en je zult navigeren (pagina's in het Engels).

      Ik hoop dat de hier gepresenteerde kennis nuttig voor je zal zijn, dankzij LinuxAdictos!

    2.    Jimmy olano zei

      GOED, om de vraag van TRANSPARANTIE in Squid OPNIEUW te beantwoorden, sta ik erop dat je kennis op gemiddeld niveau moet hebben en om didactische redenen ga ik het volgende artikel (in het Engels) dat naar mijn mening heel goed over het onderwerp spreekt, zo goed mogelijk samenvatten:

      http: // ww w.deckle.co. nl / squid-gebruikershandleiding /transparent-caching-proxy.html

      Opmerkingen:
      -Ik heb spaties aan de links toegevoegd om pingback van mij te voorkomen (ik heb absoluut niets met het team te maken). Linux AdictosDaarom ben ik niet bevoegd om genoemde actie uit te voeren).
      - DIT OVER TRANSPARANTIE WIST IK NIET! (ze hebben het me niet geleerd, zeg ik).
      -Help ik jullie, ik help mezelf ook, dit is cool in kwantiteit! ​

      Nou, met dat gezegd, laten we aan de slag gaan:

      Ik heb dhr. Isaac GEWOON voorgesteld om het configureren van onze browsers met de geïnstalleerde proxy uit te breiden en dat deed hij heel vriendelijk (wauw, waar vindt deze man tijd om zoveel dingen te doen?).

      Volgens dit schema IS het gebruik van Squid OPTIONEEL: elke gebruiker van ons lokale netwerk zal zijn werk doen, maar je kunt er "zilver hard tegen papieren peseta's" op wedden dat er een of ander "bash-script" is dat kan worden geïnstalleerd . via SSH naar verschillende computers met GNU / Linux.

      VOORWAARDEN: dat onze Squid-server werkt zoals de heer Isaac in dit bericht leert, als we het al hebben getest en er een "werklast" op hebben gelegd en het goed presteert, kunnen we verder gaan.

      ONDER DE TRANSPARANTIEREGELING:

      EERSTE. - Onze inktvis moet de standaardroute "gateway" zijn in onze "eth0" of "wlan0" -herinnert u zich de kennis op gemiddeld niveau? -, we stellen het daar vast (het wordt standaard gedaan met DHCP, DAAROM moeten we ook configureer de server van een dergelijke service:
      http: // en.wikipe dia.org/wiki/ Dynamic_Host_Configuration_Protocol).

      We moeten plannen om, in het geval van een storing, al het verkeer rechtstreeks naar onze modem (s) om te leiden als Squid - de computer waarop het draait - overbelast is met zijn werklast - en de modem (s) te gebruiken type 'bridge' zodat ze gaan naar buiten, dit wordt bereikt door het maken van een "script" dat in het genoemde evenement wordt geactiveerd en onze DHCP-server configureert die op een andere computer dan onze Squid moet worden geïnstalleerd.

      OPMERKING: onze Squid-computer zal altijd afhankelijk zijn van zijn IP-adres van DHCP, MAAR tegelijkertijd zal hij enige "controle" hebben met de genoemde DHCP-server. Als je met vaste IP-adressen wilt werken, of power, kan dat, maar als je meer computers toevoegt OF sommige VERVANGT, moet je opnieuw configureren en dat is niet de bedoeling (lees met plezier:
      ht tps: // fenobarbitaal. wordpress.com/2012/07/23/the-12-reasons-by-who-a-administrator-of-systems-lazy-is-a-good-administrator/)
      EEN ANDERE OPMERKING (zie tweede punt): onze modem (s) en / of routerapparaten moeten de DHCP-functie deactiveren en dat ze worden beheerd door onze DCHP-server (-wat ik u verzeker dat er een ander item uit komt om ons te laten zien hoe mount genoemde service-)

      TWEEDE. - We moeten het verkeer naar onze Squid-server filteren, dit als we verschillende verspreide routers hebben die een draadloos netwerkgebied "wifi" bestrijken, het is nog steeds een lokaal netwerk, maar van gemiddelde grootte. In wezen is het hetzelfde als het eerste punt MAAR als we verschillende apparaten OF ZELFS subnetten hebben, moeten we ze ook configureren, dus wees voorzichtig met degenen onder ons die in grote bedrijven "de ijzers verpletteren".

      DERDE. - In onze GNU / Linux die Squid host, moeten we de poorten omleiden en de «firewall» configureren (lees het vorige artikel IPTables
      http://www.linuxadictos.com/introduccion-a-iptables-configura-un-firewall-en-linux.html )

      iptables -t nat -A PREROUTING -p TCP –dport 80 -j REDIRECT –naar-poort 3128

      en aan de IPFW:

      / sbin / ipfw voeg 3 fwd 127.0.0.1,3128 tcp toe van willekeurig naar 80

      Onnodig te zeggen dat we GEEN Apache- of Ngix-server KUNNEN draaien op die poort 80 -standaardpoort van webpagina's- GEZOND VERSTAND GEEFT AAN om onze computer niet meer te belasten met Squid -afhankelijk van schijfruimte voor «cache» -.

      VIERDE. - We moeten onze Squid-server configureren en hem vertellen dat hij in die modus werkt door "/etc/squid/squid.conf" te wijzigen met nano of de editor die je het leukst vindt:

      http_port 3128 transparant

      We moeten ook pakket doorsturen inschakelen in "/etc/sysctl.conf":

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

      Deze laatste regel als we IPv6 hebben, is het goed om het in de toekomst een keer te configureren.

      Start ten slotte de Squid-service opnieuw zoals aanbevolen door de heer Isaac hierboven en start ook de netwerkservice opnieuw:

      /etc/init.d/procps.sh herstart

      WAT GELOOF VAN ERRATA (of wat onzin van mijn kant) laat me op dezelfde manier weten, uw kritiek en opmerkingen zijn welkom;
      DHR. ISAAC IS DE MODERATOR die het laatste woord heeft in deze "strijd".

  6.   Jimmy olano zei

    In deze korte video kunnen we zien hoe Mozilla geconfigureerd moet worden om een ​​proxyserver te gebruiken, behalve dat het een virtuele machine gebruikt met ReactOS, maar het is kort en ik denk dat het ILLUSTRATIES is wat je hier wilt configureren (link uitgeschakeld met spaties, verwijder ze en blader):

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

  7.   Leraar zei

    Ik ben net begonnen met het volgen van je radiostation, ik ben 2 dagen bezig geweest .. en zeer goede inhoud ..
    Groeten uit Mexico .. (ik ben een leraar en mijn zandkorrel is om opensource te gebruiken)

  8.   Ram zei

    Ik zou graag willen dat je me helpt Ik wil het voorrecht geven aan een gebruiker om Facebook te zien en dat de anderen de beperkingen hebben die al zijn geconfigureerd en hoe ze internetgebruikers op bepaalde tijden kunnen inschakelen.Ik zou graag willen dat je me adviseert, bedankt

  9.   Belki's zei

    Ari, wat ze me in dit verband hebben uitgelegd, is dat de machine die je wilt niet beperkt is, het moet worden weggelaten, maar tot die tijd heb ik de uitleg, ik ben ook onervaren over het onderwerp

  10.   Victor zei

    Welterusten, pardon, misschien is mijn vraag een beetje standaard, maar hey, ik heb inktvis geïnstalleerd en geconfigureerd op een centos 5.4, wijn en ultrasurf geïnstalleerd, wat ik van plan ben het internet van ultrasurf te delen met inktvis, ik doe hetzelfde op een Windows-machine XP met FreeProxy en ultrasurf en ik kan het zonder problemen delen, maar ik weet niet hoe ik het in linux moet doen

  11.   Daniël Andrada zei

    Ik raadpleeg je, ik heb een configuratie zoals die van jou, in mijn geval leid ik poort 80 om naar 8080 waar de inktvis loopt. Het probleem is dat sommige gebruikers die configuratie op hun computer laten staan ​​en toegang krijgen via poort 80, hoewel niet alle services. Dit met iptables. Heeft u enig idee waar het probleem zou zijn?

  12.   zee zei

    Heel handig en goed uitgelegd. Bedankt!

    Ik heb een vraag, wanneer ik een acl wil maken, waar moet ik dat doen, dat wil zeggen, in welke regel van het configuratiebestand? En moet ik onmiddellijk 2 regels onder het http_access-commando plaatsen zoals je in je bericht laat zien? Of waar?

    Nogmaals bedankt!! Groeten!