Wie man

Installieren und konfigurieren Sie Squid Proxy Server auf Ubuntu 20.04

Installieren und konfigurieren Sie Squid Proxy Server auf Ubuntu 20.04

Squid ist ein Proxy- und Cache-Server. Es fungiert als Proxy, indem es Anfragen an das erforderliche Ziel weiterleitet, aber auch die angeforderten Inhalte speichert. Wenn ein anderer Server dieselben Informationen anfordert, bevor sie auf dem Squid-Server nicht abgelaufen sind, stellt er dem Anforderer denselben Inhalt bereit, wodurch die Download-Geschwindigkeit verbessert und Bandbreite gespart wird.

Der Squid-Proxy-Server unterstützt das Caching von Inhalten, die über verschiedene Protokolle wie http, SSL-Anfragen, DNS-Lookups und FTP angefordert werden. Diese Anleitung erklärt, wie Sie den Squid-Proxy unter Ubuntu 20 installieren und konfigurieren.04

Squid-Proxy-Server auf Ubuntu 20.04

Aktualisieren Sie zuerst Ihre Systempakete. Beachten Sie, dass ich alle Befehle als Root-Benutzer ausführen werde

sudo apt-get update sudo apt-get upgrade

Als nächstes installieren Sie den Squid-Proxy auf Ubuntu 20.04. Installieren des Squid-Proxys in Ubuntu 20.04 ist einfach, weil es bereits in Ubuntu 20-Repositorys verfügbar ist. Bestätigen Sie dies mit dem folgenden Befehl.

sudo apt-cache richtlinie tintenfisch

Ausgabe

Um den Squid-Proxy zu installieren, führen Sie die folgenden Befehle aus. Aktivieren Sie auch den Start beim Systemstart und überprüfen Sie dann den Status

sudo apt-get install -y squid sudo systemctl start squid sudo systemctl aktivieren squid sudo systemctl status squid

Wenn squid ordnungsgemäß installiert ist und ausgeführt wird, sollten Sie eine Ausgabe wie gezeigt erhalten:

Konfigurieren Sie den Squid-Proxy-Server auf Ubuntu 20.04

Die standardmäßige Squid-Proxy-Konfigurationsdatei befindet sich in /etc/Tintenfisch/Tintenfisch.conf. Die Datei hat bereits eine Reihe von Einstellungen, die mindestens funktionieren, aber wir können sie nach unseren Wünschen ändern modify. Erstellen Sie zunächst ein Backup der Originaldatei.

sudo cp /etc/squid/squid.conf /etc/squid/squid.conf.orig

Nehmen Sie nun Ihre benutzerdefinierten Einstellungen in vor /etc/Tintenfisch/Tintenfisch.conf. Öffnen Sie die Datei mit Ihrem bevorzugten Dateieditor

sudo vim /etc/tintenfisch/kalmar.conf

1. Tintenfisch-Standardport ändern

Der standardmäßige Squid-TCP-Port ist 3128.Um dies zu ändern, öffne Tintenfisch.conf-Datei und suchen Sie nach http_port Linie. Wechseln Sie zu Ihrer gewünschten Portnummer und speichern Sie die Datei.

#http_port 3128 http_port 8080

Stellen Sie sicher, dass Sie den Port durch die Firewall zulassen

sudo ufw erlauben 8080/tcp sudo ufw aktivieren

2. Legen Sie die Größe des Squid-Cache-Speichers fest

Um den gewünschten Cache-Speicher einzustellen, verwenden Sie die Einstellungen unten. Für meinen Fall verwende ich 256 MB

cache_mem 256 MB

3. Geben Sie die zu verwendenden DNS-Nameserver an

Um Ihre eigenen DNS-Server zu definieren, verwenden Sie den Befehl wie gezeigt

DNS_Nameserver 8.8.8.8 8.8.4.4

4. Tintenfisch-ACL und http_access

Jetzt bearbeiten Tintenfisch.conf um Regeln deiner Wahl hinzuzufügen. Ein Proxy-Server wählt aus, was durch ihn geht. Wir können den Zugriff von bestimmten Netzwerken/IP-Adressen zulassen und anderen verweigern. Es kann auch verwendet werden, um den Verkehr zu filtern, indem der Zugriff auf bestimmte Websites eingeschränkt oder Inhalte basierend auf bestimmten Schlüsselwörtern blockiert werden. Dies wird durch die Verwendung von ACLs (Access Control Lists) erreicht, die definieren, was erlaubt und was verweigert wird. Http_access definiert das Zulassen oder Verweigern basierend auf einer ACL.

So definieren Sie ACLs für den Squid-Proxy-Server

ACLs (Access Control Lists) sind Anweisungen, die definieren, was durch den Proxy-Server passieren darf und was verweigert wird. Jede Aussage muss mit beginnen acl gefolgt vom Namen der Regel. Nach dem Namen ist der acltyp und schließlich die Streit oder Datei. Bei Verwendung von Dateien darf jede Zeile in der Datei nur ein Element enthalten contain.

acl aclname acltype argument… acl aclname acltpe „Datei“… 

Die standardmäßig definierten ACL-Regeln sind wie gezeigt. Sie können das deaktivieren, indem Sie am Anfang jeder Zeile ein # hinzufügen. Um neue Regeln zu erstellen, folgen Sie den folgenden Beispielen:

Beispiele 1: LAN-Netzwerk über Squid-Proxyserver zulassen

Erstellen Sie die acl-Regel

acl my_lan src 192.168.100.0/24

Jetzt entweder erlauben oder verweigern basierend auf der definierten Regel mit der Verwendung von http_access Direktive. In unserem Fall müssen wir zulassen

http_access my_lan zulassen

Beachten Sie, dass die letzte Regel jedes Mal, wenn Sie ACL-Zugriffsregeln erstellen, die alles leugnen. Dies sollte erfolgen, wenn Sie alle erforderlichen Sites zugelassen haben, andernfalls könnten Sie sich selbst vom Zugriff auf einige benötigte Sites blockieren.

http_access alles verweigern

So verweigern Sie den Zugriff auf bestimmte Websites im Squid-Proxy-Server

Bei mehreren Websites ist es einfacher und übersichtlicher, alle Websites in einer Datei abzulegen und dann aufzurufen, sonst würden Sie die Zitate in der acl-Regel auflisten list. In unserem Beispiel erstelle ich eine Datei namens deniedsites.Tintenfisch im Tintenfischverzeichnis.

sudo vim /etc/squid/deniedsites.Tintenfisch

Fügen Sie die Websites hinzu, deren Zugriff Sie verweigern möchten. Für meinen Fall verwende ich Facebook und YouTube. Speichern Sie die Datei nach.

.Facebook.com .Youtube.com

Jetzt Tintenfisch öffnen.conf und erstellen Sie eine ACL-Regel für die abgelehnten Sites und fügen Sie eine Deny-Regel hinzu und speichern Sie dann die Datei.

acl deniedsites dstdomain „/etc/squid/deniedsites.Tintenfisch” http_access deniedsites verweigern

Wenn Sie die Sites in der acl-Regel auflisten würden:

acl deniedsites dstdomain facebook.com youtubecom http_access deniedsites verweigern

Beachten Sie, dass Sie den Squid-Server jedes Mal neu starten müssen, wenn Sie Änderungen vornehmen

systemctl Neustart Tintenfisch

So blockieren Sie den Datenverkehr basierend auf einigen Schlüsselwörtern im Squid-Proxy-Server

Erstellen Sie eine Datei mit den Schlüsselwörtern. Verwenden Sie den Dateinamen, um eine ACL-Regel zu erstellen, die den Datenverkehr verweigert.

sudo vim /etc/squid/keywords.Tintenfisch.

Fügen Sie Ihre Keywords hinzu und speichern Sie.

spielen Sie Akte

Tintenfisch bearbeiten.conf, um eine ACL zu erstellen und das Speichern zu verweigern und daran zu denken Tintenfisch neu starten.

acl-Schlüsselwörter url_regex -i "/etc/squid/keywords.Tintenfisch" http_access Schlüsselwörter verweigern

Ihre Datei erscheint schließlich mit dem wie folgt hinzugefügten.

Für ACLs

Für http_access

Um Ports im Squid-Proxy-Server zu öffnen, verwenden Sie die Befehlssyntax wie unten gezeigt

acl Safe_ports-Port 

So maskieren Sie ausgehenden Datenverkehr auf dem Squid-Proxy-Server

Ein Proxy-Server soll unsere Identität verbergen, indem er die Proxy-IP-Adresse anstelle unserer eigenen preisgibt. Der Proxy kann jedoch unsere IP über den ausgehenden HTTP-Verkehr bekannt geben. Um dies zu deaktivieren, bearbeiten Sie Tintenfisch.conf Datei und deaktivieren über Header. Suchen Sie dazu nach der Zeile mit #über weiter. Entkommentieren und ändern von auf zu aus.

# über an über aus

Außerdem sollte der Proxy-Server die IP-Adresse des Clients nicht in die HTTP-Anfragen anhängen, die er weiterleitet. Deaktivieren Sie dies, indem Sie die folgenden Zeilen in ändern Tintenfisch.conf Datei.

Um zu vermeiden, dass Ihr Squid-Proxy-Server preisgegeben wird, können Sie den Squid-Proxy-Header entfernen. Fügen Sie die Zeile unten in TAG hinzu; request_header_access.

request_header_access From deny all request_header_access Server deny all request_header_access WWW-Authenticate deny all request_header_access Link deny all request_header_access Cache-Control deny all request_header_access Proxy-Connection deny all request_header_access X-Cache deny all request_header_access X-Cache deny all-request_header_lookup den_C all-Request_Lookup deny all request_header_access Pragma deny all request_header_access Keep-Alive deny all

Tintenfisch retten.conf-Datei und denken Sie daran, squid neu zu starten

systemctl Neustart Tintenfisch

So überprüfen Sie Squid-Konfigurationsfehler

Der folgende Befehl weist darauf hin, wo in Ihrer Konfigurationsdatei Fehler auftreten könnten

sudo tintenfisch -k parse

So konfigurieren Sie Clients für die Verbindung über den Squid-Proxy-Server

Benutzerauthentifizierung konfigurieren

Lassen Sie uns zunächst erstellen und Benutzern die Authentifizierung über den Squid-Proxy ermöglichen. Wir müssen die HTTP-Authentifizierung in squid aktivieren.conf-Datei. Apache2-utils installieren.

apt install -y apache2-utils

Erstellen Sie eine Datei, die zum Speichern von Benutzern verwendet wird. Meins heißt 'passwd'. Die Datei sollte im Besitz von . sein Stellvertreter das ist der Standard-Squid-Benutzer.

Berühren Sie /etc/squid/passwd chown proxy: /etc/squid/passwd 

Fügen wir einen Benutzer namens . hinzu lorna

htpasswd /etc/squid/passwd lorna Neues Passwort: Neues Passwort erneut eingeben: Passwort für Benutzer lorna hinzufügen

Fügen Sie nun die folgenden Zeilen in Tintenfisch.conf Datei. Speichern Sie den Tintenfisch nach dem Hinzufügen und starten Sie ihn neu.

auth_param Basisprogramm /usr/lib/squid/basic_ncsa_auth /etc/squid/passwd auth_param Basic Kinder 5 auth_param Basic Realm Squid Basic Authentication auth_param Basic Credentialsttl 2 Stunden acl auth_users proxy_auth REQUIRED_ http_users allow auth zulassen

Es ist wichtig, den Standort von zu überprüfen basic_ncsa_auth um sicherzustellen, dass Sie den richtigen Pfad verwenden und keine Fehler auftreten. Verwenden Sie den folgenden Befehl:

dpkg -L Tintenfisch | grep ncsa_auth

Ihre Squid-Datei sollte wie folgt aussehen:

Um zu testen, ob Ihr Squid-Proxy-Server funktioniert, rufen Sie Ihren Client-Webbrowser auf, z Feuerfuchs, und konfigurieren Sie die manuelle Proxy-Authentifizierung. Öffnen Feuerfuchs, klicke auf das tdrei Bars ganz rechts. Unter Bearbeiten, klicke auf Präferenz. Klicke auf die Einstellungen unter Netzwerkeinstellungen. Auf der angezeigten Seite ist die Uhr eingeschaltet manuelle Proxy-Konfigurationn Optionsfeld und geben Sie Ihre Proxy-Server-Details ein. Sie können Proxy für andere IP-Adressen ausschließen, wenn Sie möchten unter 'Kein Proxy für'

Bestätigen Sie nun, dass Ihr Squid-Proxy-Setup funktioniert. Öffnen Sie den Firefox-Browser und versuchen Sie, eine eingeschränkte Website wie YouTube zu durchsuchen.com für meinen Fall. Sie sollten eine Seite mit der Aufschrift "Proxyserver-Verbindungen ablehnen" sehen

Öffnen Sie jetzt eine andere Site, die nicht eingeschränkt ist. Sie sollten zur Authentifizierung aufgefordert werden, die nach Eingabe Ihres Benutzernamens und Passworts auf die Site zugreifen können sollte.

Dies war eine Schritt-für-Schritt-Anleitung zur Installation und Konfiguration des Squid-Proxy-Servers in Ubuntu 20.04. Ich hoffe es hat euch gefallen. Nachfolgend finden Sie ausführlichere Anleitungen für Ihre täglichen Linux-Installationen

Waren Sie von der Datenschutzverletzung bei Equifax betroffen?? Du könntest $125 kommen
Viele, viele Menschen waren vor zwei Jahren schockiert, als sie von der Datenpanne bei Equifax erfuhren. Dies war eine der größten Sicherheitsverletzu...
Capital One gibt Datenschutzverletzung von 100 Millionen Kreditkartenanträgen bekannt
Millionen von Menschen erreichen mit der Equifax-Vereinbarung, die letzte Woche erreicht wurde, eine gewisse finanzielle Erleichterung, wenn auch begr...
Lücke in LinkedIn-Jobseiten gefunden, die es Benutzern ermöglicht, überall gefälschte Jobs zu veröffentlichen
LinkedIn ist in der Geschäftswelt fast zu einer Notwendigkeit geworden. Es war ursprünglich ein Ort, um Kontakte zu knüpfen, Kontakte zu knüpfen und s...