Tintenfisch-Proxy - Teil 1

Hallo allerseits, du kannst mich Brody nennen. Ich bin ein Spezialist im Bereich Rechenzentren und auch ein Fan der Linux-Welt, weil es mir das Leben und Arbeiten erleichtert. Denk darüber nach!

Von diesem Punkt an werde ich "Sie" unpersönlicher und vertrauensvoller behandeln. In meinen Tutorials geht es nicht nur um die Installation eines Dienstes. Jetzt werde ich Ihnen alle Kenntnisse und Tools vermitteln, die Sie benötigen, um die Funktionen der einzelnen Funktionen einer Anwendung optimal nutzen zu könnenBei Fragen senden Sie eine Nachricht an den Posteingang

Squid ist nicht nur ein Proxy- und Cache-Dienst, es kann noch viel mehr: Verwalten von ACL (Zugriffslisten), Filtern von Inhalten, sogar SSL-Filtern auch im transparenten Modus (Proxy-Methode - ohne in den Proxy-Einstellungen konfigurieren zu müssen Von ihren Browsern aus ist es wie ein Mann in der Mitte, niemand weiß, dass es da ist. Daher sehe ich häufig, wie das volle Potenzial dieser Anwendung verschwendet wird, wenn ich nicht weiß, wie die einzelnen Teile konfiguriert werden.

Aber als erstes schauen wir uns nur die Funktion von an Stellvertreter.

Installieren:

aptitude installiere squid3

Bearbeiten Sie die Konfigurationsdatei:

vi /etc/squid3/squid.conf

  • http_port ip: port

Ein Beispiel wäre http_port 172.16.128.50:3128  Der Dienst wird über die angegebene IP-Adresse und den angegebenen Port bereitgestellt. Insbesondere würde ich nicht empfehlen, Port 3128 standardmäßig in einer Produktionsumgebung zu belassen.

  • acl localnet src ip / mask

Ein Beispiel wäre Acl lokales Netz src 172.168.128.0/24 die allgemeine Zugriffsliste (so makro wie möglich), die Zugriff auf diesen Dienst hat. localnet heißt die acl, aber Sie können dort einen beliebigen Namen eingeben.

  • http_access erlaubt localnet

sencillo http_access erlauben lokales Netz Mit dem gleichen Namen, den Sie im vorherigen Artikel eingegeben haben, ermöglichen wir diesem Netzwerk, durch Squid-Dienste zu navigieren und diese zu verwenden

  • quick_abort_min 0 KB
  • quick_abort_max 0 KB

Zeitpunkt, zu dem wir eine Anfrage abbrechen. Ich werde es genauer erklären: Wenn ein Benutzer Ihren Proxy durchsucht und eine Anfrage oder einen Download abbricht, haben Sie drei Möglichkeiten, wenn der Download kleiner als ist schnell_abbruch_min 80KB dann wird Squid es herunterladen, wenn der Download mehr als fehlt schnell_abbruch_max 150 KB werden dann sofort abgebrochen. Wenn beide auf 0 KB eingestellt sind, wird der Download beendet, sobald der Benutzer den Vorgang abbricht.

  • read_timeout 5 Minuten

Dies ist die Zeit, in der eine Serversitzung geöffnet ist, solange kein neuer Messwert vorhanden ist, z. B. auf einer statischen Seite. Ein sehr hoher Wert ist nicht erforderlich. Auf dynamischen Seiten wie Facebook ist dies jedoch ein akzeptabler Wert

  • request_timeout 3 Minuten

Dieser Wert kann viel niedriger sein. Dies hängt von der Qualität der WAN-Verbindung Ihres Servers und der Anzahl der Clients ab. Dieser Parameter bezieht sich auf die maximale Wartezeit auf die http-Header einer Anforderung nach dem Herstellen der Verbindung.

  • half_closed_clients aus

Verhindert halbgeschlossene Verbindungen aufgrund von Kommunikationsfehlern. Sie möchten unter keinen Umständen Ihre Serverressourcen verschwenden.

  • shutdown_lifetime 15 Sekunden

Dieses Tag ermöglicht es, die Wartezeit zum Schließen der Tintenfischprozesse zu verkürzen, wenn ein SIGTERM oder SIGHUP ausgeführt wird

  • log_icp_queries aus

Dies überlasse ich Ihrem Ermessen, standardmäßig wird es aktiviert und es wird protokolliert, jede Abfrage im Proxy-Cache protokolliert.

  • dns_nameservers 8.8.4.4 8 8.8.8.8

DNS-Abfragen werden an diese durch Leerzeichen getrennten IPs gestellt. Wenn keine definiert ist, wird standardmäßig das DNS Ihres Systems verwendet

  • dns_v4_first ein

Nun, es hängt vom Land oder den Einstellungen Ihrer Umgebung ab, aber in meinem Fall habe ich kein IPv6-DNS, daher wird standardmäßig festgelegt, dass in IPv4 zuerst alles konsultiert wird

  • ipcache_size 2048

Maximale Anzahl von Einträgen im Squid-DNS-Cache

  • ipcache_low 90

Die kleinste Größe von DNS-Cache-Einträgen.

  • fqdncache_size 4096

Maximale Anzahl von FQDN-Einträgen im Cache

  • memory_pools aus

Wir deaktivieren, dass RAM-Speicher für zukünftige Squid-Prozesse reserviert ist, wenn es sich um eine sehr knappe Ressource auf Ihrem Server handelt

  • weitergeleitet_für aus

Wenn Sie verhindern möchten, dass sie Ihre private IP aus dem WAN sehen, werden die Anfragen mit einem unbekannten oder in diesem Fall ru ip Wan eingehen

Wir starten den Cache

Tintenfisch3 -z

Wir starten den Service neu

Service Squid3 Neustart

Um fertig zu sein, müssen Sie nur in Ihren Browser, in die Proxy-Optionen die IP und den Port eingeben, bereit, Sie müssen surfen

Dies ist alles für diesen Anlass, Sie wissen, dass Sie damit einen sehr robusten Tintenfisch haben werden. In zukünftigen Posts werden wir mit Tintenfisch zwischenspeichern


Hinterlasse einen Kommentar

Ihre E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind markiert mit *

*

*

  1. Verantwortlich für die Daten: Miguel Ángel Gatón
  2. Zweck der Daten: Kontrolle von SPAM, Kommentarverwaltung.
  3. Legitimation: Ihre Zustimmung
  4. Übermittlung der Daten: Die Daten werden nur durch gesetzliche Verpflichtung an Dritte weitergegeben.
  5. Datenspeicherung: Von Occentus Networks (EU) gehostete Datenbank
  6. Rechte: Sie können Ihre Informationen jederzeit einschränken, wiederherstellen und löschen.

  1.   José Albert sagte

    Ausgezeichnetes, schrittweises Tutorial. Was mir am besten gefallen hat, war die Option-für-Option-Erklärung des Konfigurationsrepertoires.

    Das, was mir am besten gefallen hat, war die Option:

    quick_abort_min 0 KB
    quick_abort_max 0 KB

    Ich glaube, dass dies äußerst wichtig ist, da ein Benutzer aufgrund der X-Situation, in der ein Download kurz vor dem Ende steht, oft verlieren (abbrechen) kann und dieser Parameter, der gemäß unseren Computerressourcen gut geschätzt wird, es uns ermöglichen kann, diesen Download fortzusetzen, da dies durchaus der Fall ist Möglicherweise kann derselbe Benutzer oder ein anderer Benutzer in kurzer Zeit versuchen, den Download desselben Elements erneut zu versuchen, wodurch Datenverkehr zum Internet gespart wird.

    Korrigieren Sie mich, wenn ich falsch liege, BrodyDalle?

    1.    brodydalle sagte

      Ja und nein, ich werde es erklären.

      In der Tat wird der Download erfolgreich beendet, selbst wenn der Benutzer ihn abgebrochen hat. Nur dann, wenn derselbe Benutzer oder ein anderer Benutzer versucht, die Anwendung oder Webseite herunterzuladen, liefert squid eine Kopie, die sich bereits im Cache befindet, und geht nicht ins Internet Laden Sie die Daten erneut herunter. Beachten Sie hier, dass der Effekt der Wiederaufnahme nur ein Download-Manager ist, der die Daten für eine vorgegebene Zeit im Cache Ihres Computers speichert und es Ihnen ermöglicht, einen abgebrochenen oder unterbrochenen Download fortzusetzen. Es handelt sich nicht um Tintenfisch.

      In zukünftigen Tutorials werde ich Squid gründlich als Cache geben, damit Sie die WAN-Ressourcen (Internet) Ihres Netzwerks nicht verschwenden

  2.   Javier Espinoza sagte

    ausgezeichneter Artikel Ich lerne etwas über Tintenfisch und seine Implementierung. Vielen Dank, es ist praktisch

    1.    brodydalle sagte

      Vielen Dank, beachten Sie, dass ich in zukünftigen Tutorials Squid gründlich als Cache verwenden werde, damit Sie die WAN-Ressourcen (Internet) Ihres Netzwerks nicht verschwenden

  3.   Henry Servita sagte

    Ein tolles Tutorial ist immer gut, um das Wissen zu erweitern. Prost

  4.   Miguel Ananas sagte

    Hallo, zunächst einmal vielen Dank für das Thema, die Erklärungen und das bereitgestellte Wissen. Ich habe mehr zu kommentieren, eine Frage. Ich bringe ein Problem auf den Tisch, das mir mit squid3 auf Debian genau passiert ist. Es stellt sich heraus, dass ich eines schönen Tages vor Monaten das System aktualisiert habe und zusammen mit diesem Upgrade eine neue Version von squid 3.5 von dort den Proxy kam links, um alle HTTPS-Verbindungen zu übergeben, dh sofort habe ich https // www.google.com.cu nicht mehr geöffnet, https://www.facebook.com und alles, was das sichere HTTPS-Protokoll verwendet. Als ich ein wenig nachforschte, stellte ich fest, dass das Problem im Umgang mit SSL lag, was Debian aus rechtlichen und philosophischen Gründen nicht mehr mit squid3 verpackte. Ich muss NICHT das Unbehagen sagen, das in der Entität an den Tagen bestand, als ich versuchte, dieses "Problem" zu lösen, das ich am Ende nicht beheben konnte, aber ich ging zurück zur vorherigen Version von Squid3 und behielt das Paket mit der Eignung für verhindern, dass es erneut aktualisiert wird. Auf der Website, auf der Tintenfischfehler gemeldet werden, sprach er von einem Fehler namens "Squid-in-the-Middle" und warnte, dass alle Tintenfische ab Version 3.4.8 anfällig seien. Daher empfahlen sie, auf eine neuere Version zu aktualisieren und die zu kompilieren Tintenfisch mit SSL + eingestellt, um die Zertifikate manuell zu generieren…. BITTE! Wenn jemand auf diese Situation gestoßen ist und sie gelöst hat, möchte ich so freundlich sein und mir ein Licht auf dieses Problem geben und wenn nicht, zumindest kommentieren, dass dasselbe passiert ist ... und welche Lösung angewendet wurde. Dankeschön.

    1.    brodydalle sagte

      Derzeit ist Jessie in Debian nur bis Version 3.4.8-6 + deb8u1 verfügbar. Ich kann Ihnen jedoch sagen, dass Sie SSL Bump verwenden können, wenn Sie Squid im transparenten Modus verwenden. http://wiki.squid-cache.org/ConfigExamples/Intercept/SslBumpExplicit…. Ich stelle Ihren Beitrag nicht in Frage, daher werde ich bald die neueste Version von der offiziellen Website installieren

  5.   Antonio A. sagte

    Guten Morgen,

    Lohnt es sich in Bezug auf die Leistung, auf einem Raspberry Pi 2 zu installieren?

    Vielen Dank im Voraus, Grüße.

  6.   Antonio A. sagte

    Hallo,

    Nettes Tutorial, aber ich habe eine Frage: In Bezug auf die Leistung lohnt es sich, es auf einem Raspberry Pi 2 zu installieren?

    Grüße.

    1.    brodydalle sagte

      Die kurze Antwort lautet Nein ... Sie können dies tun, aber bestimmte Funktionen wie Netzwerkschnittstelle, Prozessor und Festplatte sind viele Ihrer Engpässe. Wenn Sie jetzt noch einen Proxy benötigen, ist Tinyproxy meiner Meinung nach besser

      Danke für Ihre Teilnahme

  7.   Täbris sagte

    Haben Sie Erfahrung mit Squid in pfSense?

    1.    brodydalle sagte

      Ja, was musst du wissen? Mal sehen, ob ich dir helfen kann.

  8.   Gegensätze90 sagte

    Gutes Tutorial, schon sehr gute Zeit. Ich weiß nicht viel darüber. Derzeit installiere ich den Proxy in meinem Unternehmen mit der squid.conf aus einer früheren Version, und es gibt Dinge, die die Syntax geändert haben. Es hat mir sehr gedient. Ich werde weiter auf Teil 2 warten.
    Vielen Dank

    1.    brodydalle sagte

      Vielen Dank für Ihren Kommentar, bis der zweite Teil von Squid zum Cachen bald verfügbar sein wird.

  9.   ramses sagte

    Ausgezeichnet, vor langer Zeit habe ich einen Ubuntu-Server mit Squid implementiert und er lief jetzt recht gut. Ich bin seit einiger Zeit von Linux getrennt und möchte auf das Problem der zwischengespeicherten Server zurückkommen, um den wisp-Problemen eine bessere Leistung zu verleihen, danke für Ihren Beitrag Brody!

  10.   rodrigoarielpizarro sagte

    Hallo, Ihre Hilfe ist sehr nett. Ich habe gerade das IPV6-Problem mit DNS eingegeben und habe dort Probleme. Wenn kein Web mit IPV6 angezeigt wird, funktioniert es für mich. Daher muss ich wissen, ob die Konfiguration dns_v4_first aktiviert werden muss, bevor Squid kompiliert wird, da dies in 3.3.8 nicht funktioniert.

  11.   Jocampo sagte

    Guten Tag.
    Dieses Tutorial war zunächst sehr hilfreich. Jetzt präsentiere ich meinen Fall, da ich nicht weiß, ob ich mit Tintenfisch mein Bedürfnis lösen kann oder ob ich nach einer anderen Alternative suchen soll.
    Ich habe eine Anwendung auf einer AWS EC2-Instanz konfiguriert, die Anforderungen an eine Amazon-API stellen muss. Das Problem tritt auf, wenn diese Anforderungen massiv sind. Daher erkennt Amazon die IP-Adresse und lehnt diese Anforderungen für eine Weile ab, was zu Unannehmlichkeiten in meiner Anwendung führt. Um dies zu lösen, verwenden wir den Proxymesh-Dienst, der die Anfrage entgegennimmt und von einer seiner IPs sendet, um diese Blockierung zu vermeiden. Tatsache ist, dass wir dies tun, wenn wir die Anfrage an amazon stellen, indem wir sie in PHP einrollen. Geben Sie als Option an, um eine Verbindung zum Proxymesh herzustellen. Jetzt suche ich nach der Möglichkeit, dass von der Instanz, die konfiguriert werden kann, Anfragen an die Amazon-API direkt an den Proxymesh-Dienst gesendet werden, sodass dieser für das Senden der Anfrage an das endgültige Ziel zuständig ist . Ist es möglich, diese Umleitung mit Tintenfisch durchzuführen, oder empfehlen Sie eine andere Alternative?
    Vielen Dank.

  12.   Janho sagte

    Hat jemand mehrere Authentifizierungsschemata für Tintenfische ausprobiert? Ich habe Version 3.5.22 in Debian installiert und obwohl ich verschiedene Varianten ausprobiert habe, funktioniert dies nicht. Meine Situation ist jedoch, dass sowohl die Benutzer meines AD als auch andere externe Benutzer sich anmelden müssen, wenn sie separat für arbeiten me oder ntml für Benutzer der angemeldeten Domain und basic (ncsa) für externe, aber nicht beide gleichzeitig Jede Hilfe wird nützlich sein. Danke im Voraus

  13.   WERDEN SIE AUS MEINEM SCHUH HERAUSGUCKEN? sagte

    Sehr geehrte Damen und Herren, ich weiß nicht warum, ich hatte squid ohne Probleme installiert, aber als ich es auf Version 3.5 aktualisierte, blieb die Datei access.log leer und speichert keine Daten mehr wie früher. Ich weiß nicht, ob ich das WPAD sehen und implementieren muss, um die transparente Konfiguration nicht mehr zu verwenden und die Umleitung von Port 80 nach 3128 zu entfernen, wie dies normalerweise der Fall ist, da diese Regel mit dem wpad nicht mehr erforderlich ist.

    Ist das der Grund, warum die Datei access.log jetzt keine Aktivitäten mehr aufzeichnet?

    Prost !!

  14.   Cristian sagte

    Guter sehr guter Führer!

    Ich habe Squid für eine Weile als Web-Proxy verwendet, aber in letzter Zeit stelle ich fest, dass ich lange brauche, um Seiten zu suchen oder zu öffnen ... muss ich möglicherweise den Cache leeren?

    Jemand hat Tintenfisch mit mkt konfiguriert. Wie funktioniert das für ihn?

    Grüße

  15.   John sagte

    Sehr gute Informationen, tut mir leid, wie ich Squid mit Active Directory verbinden kann, sodass ich zum Zeitpunkt der Eingabe einer blockierten Seite nach dem Benutzernamen und dem Kennwort eines Active Directory-Kontos gefragt werde und ob der Benutzer die Berechtigung zum Aufrufen der Seite hat.

  16.   Carlos sagte

    Hallo,
    Jedenfalls eine ausgezeichnete Anleitung, und Sie können mich führen, da ich einfach nicht gebe, ich habe ein 20-MB-Glasfaser-Internet und einen Tintenfisch 3.1 auf Centos 6.9 und ich bediene ungefähr 300 Benutzer, bevor ich einen 4-MB-Link und einen Tintenfisch 3.1 und dergleichen hatte Anzahl der Benutzer und offensichtlich alles super langsam und gegenüber dem Administrator erwähnt (I) beschuldigte den Link, ich habe sie endlich dazu gebracht, ihn zu ändern und das Internet ist genauso langsam, ich habe das Betriebssystem neu installiert, Squid 3.1 konfiguriert und nichts anderes beschleunigt mich nicht Führen Sie die Messgeschwindigkeit von einem Tintenfisch-Client aus und es gibt mir 18 bis 20 MB, aber ich werde immer wieder darüber gesprochen, weil der Service genauso langsam ist

    Wenn Sie oder jemand, der ein ähnliches Problem hatte, mir Licht geben könnten, werde ich ihnen unendlich danken.

  17.   Luis sagte

    Was passiert mit den Adressen, werden sie in die eigene Netzwerkadresse geändert oder die von Ihnen verwendeten werden verwendet.

  18.   irwing sagte

    Ich lerne etwas über Squid Debian und seine Implementierung. Vielen Dank, es ist praktisch. aber es gibt mir Probleme mit der Verbindung und ich überprüfe, ob es einen Fehler gibt und anscheinend alles gut läuft.