So richten Sie den “Squid Proxy” -Server unter Ubuntu und Debian ein

Squid ist ein sehr beliebter HTTP-Webproxyserver zum Zwischenspeichern und Weiterleiten. Er hat meine zahlreichen Unternehmen zum Zwischenspeichern von Webseiten von einem Webserver verwendet, um die Geschwindigkeit des Webservers zu verbessern, die Antwortzeiten zu verkürzen und die Netzwerkbandbreitennutzung zu verringern.

Lesen Sie auch: So erstellen Sie einen HTTP-Proxy mit Squid unter CentOS 7

In diesem Artikel wird erläutert, wie ein Squid-Proxy-Server installiert wird Ubuntu und Debian Verteilungen und verwenden Sie es als HTTP-Proxy-Server.

So installieren Sie Squid unter Ubuntu

Bevor wir beginnen, sollten Sie wissen, dass für den Squid-Server keine Anforderungen gelten. Die RAM-Auslastung kann jedoch je nach den Clients, die über den Proxyserver im Internet surfen, unterschiedlich sein.

Tintenfisch Das Paket kann über das Basis-Ubuntu-Repository installiert werden. Stellen Sie jedoch zuvor sicher, dass Sie Ihre Pakete durch Ausführen aktualisieren.

$ sudo apt update


Sobald Ihre Pakete auf dem neuesten Stand sind, können Sie squid weiter installieren und beim Systemstart mit den folgenden Befehlen starten und aktivieren.

$ sudo apt -y install squid
$ sudo systemctl start squid
$ sudo systemctl enable squid

Zu diesem Zeitpunkt sollte Ihr Squid-Webproxy bereits ausgeführt werden und Sie können den Status des Dienstes mit überprüfen.

$ sudo systemctl status squid
Beispielausgabe
● squid.service - LSB: Squid HTTP Proxy version 3.x
   Loaded: loaded (/etc/init.d/squid; generated)
   Active: active (running) since Tue 2018-12-04 06:42:43 UTC; 14min ago
     Docs: man:systemd-sysv-generator(8)
    Tasks: 4 (limit: 1717)
   CGroup: /system.slice/squid.service
           ├─2761 /usr/sbin/squid -YC -f /etc/squid/squid.conf
           ├─2766 (squid-1) -YC -f /etc/squid/squid.conf
           ├─2768 (logfile-daemon) /var/log/squid/access.log
           └─2772 (pinger)

Dec 04 06:42:43 tecmint systemd[1]: Starting LSB: Squid HTTP Proxy version 3.x...
Dec 04 06:42:43 tecmint squid[2708]:  * Starting Squid HTTP Proxy squid
Dec 04 06:42:43 tecmint squid[2708]:    ...done.
Dec 04 06:42:43 tecmint systemd[1]: Started LSB: Squid HTTP Proxy version 3.x.
Dec 04 06:42:43 tecmint squid[2761]: Squid Parent: will start 1 kids
Dec 04 06:42:43 tecmint squid[2761]: Squid Parent: (squid-1) process 2766 started

Im Folgenden sind einige wichtige Speicherorte für Tintenfischdateien aufgeführt, die Sie kennen sollten:

  • Squid-Konfigurationsdatei: /etc/squid/squid.conf
  • Squid Access-Protokoll: /var/log/squid/access.log
  • Squid Cache-Protokoll: /var/log/squid/cache.log

Die Standardkonfigurationsdatei enthält einige Konfigurationsanweisungen, die konfiguriert werden müssen, um das Verhalten des Squid zu beeinflussen.

Öffnen Sie nun diese Datei zur Bearbeitung mit dem Vi-Editor und nehmen Sie die folgenden Änderungen vor.

$ sudo vim /etc/squid/squid.conf

Jetzt können Sie nach den folgenden Zeilen suchen und diese nach Bedarf ändern. Im Vi-Editor können Sie nach diesen Zeilen suchen, indem Sie auf klicken ‘ESC’ und tippen “/.”Schlüssel zum Schreiben der spezifischen Zeilen, nach denen gesucht werden soll.

  • http_port : Dies ist standardmäßig der Standardport für den HTTP-Proxyserver 3128können Sie es in einen anderen gewünschten Port ändern, Sie können auch den hinzufügen “transparent” Tag an das Ende der Zeile wie http_port 8888 transparent Wenn Sie möchten, dass der Squid-Proxy wie ein transparenter Proxy wirkt.
  • http_access verweigert alle : In dieser Zeile kann niemand auf den HTTP-Proxyserver zugreifen. Deshalb müssen Sie ihn in ändern http_access erlaube allen um Ihren Squid-Proxyserver zu verwenden.
  • sichtbarer_Hostname : Diese Anweisung wird verwendet, um den spezifischen Hostnamen auf einen Squid-Server festzulegen. Sie können Tintenfisch einen beliebigen Hostnamen geben.

Nachdem Sie die obigen Änderungen vorgenommen haben, können Sie den Squid-Proxyserver mit dem Befehl neu starten.

$ sudo systemctl restart squid

Konfigurieren von Squid als HTTP-Proxy unter Ubuntu

In diesem Abschnitt zur Squid-Konfiguration wird erläutert, wie Sie Squid als HTTP-Proxy konfigurieren und nur die Client-IP-Adresse für die Authentifizierung verwenden.

Fügen Sie Squid-ACLs hinzu

Wenn Sie nur einer IP-Adresse erlauben möchten, über Ihren neuen Proxyserver auf das Internet zuzugreifen, müssen Sie neu definieren acl ((Zugriffskontrollliste) in der Konfigurationsdatei.

$ sudo vim /etc/squid/squid.conf

Das acl Regel, die Sie hinzufügen sollten, ist:

acl localnet src XX.XX.XX.XX

Wo XX.XX.XX.XX ist die IP-Adresse des Client-Computers. Dies acl sollte am Anfang des ACL-Abschnitts hinzugefügt werden, wie im folgenden Screenshot gezeigt.

IP-Adresse hinzufügen, um Web zuzulassen
IP-Adresse hinzufügen, um Web zuzulassen

Es ist immer eine gute Praxis, einen Kommentar neben zu definieren ACL Hier wird beispielsweise beschrieben, wer diese IP-Adresse verwendet.

acl localnet src 192.168.0.102  # Boss IP address

Sie müssen den Squid-Dienst neu starten, damit die neuen Änderungen wirksam werden.

$ sudo systemctl restart squid

Öffnen Sie Ports in Squid Proxy

Standardmäßig sind in der Squid-Konfiguration nur bestimmte Ports zulässig. Wenn Sie weitere hinzufügen möchten, definieren Sie diese einfach wie gezeigt in der Konfigurationsdatei.

acl Safe_ports port XXX

Wo XXX ist die Portnummer, die Sie zulassen möchten. Auch hier ist es eine gute Übung, einen Kommentar neben zu definieren acl Das beschreibt, wofür der Port verwendet wird.

Fügen Sie Ports in Squid Proxy hinzu
Fügen Sie Ports in Squid Proxy hinzu

Damit die Änderungen wirksam werden, müssen Sie squid erneut starten.

$ sudo systemctl restart squid

Squid Proxy Client-Authentifizierung

Damit sich Benutzer vor der Verwendung des Proxys authentifizieren können, müssen Sie die grundlegende http-Authentifizierung in der Konfigurationsdatei aktivieren. Zuvor müssen Sie jedoch die Installation durchführen apache2-utils Paket mit folgendem Befehl.

$ sudo apt install apache2-utils

Erstellen Sie nun eine Datei mit dem Namen “Passwd” Dadurch wird später der Benutzername für die Authentifizierung gespeichert. Tintenfisch läuft mit Benutzer “Proxy” Daher sollte die Datei diesem Benutzer gehören.

$ sudo touch /etc/squid/passwd
$ sudo chown proxy: /etc/squid/passwd
$ ls -l /etc/squid/passwd

Jetzt erstellen wir einen neuen Benutzer namens “tecmint” und richten sein Passwort ein.

$ sudo htpasswd /etc/squid/passwd tecmint

New password: 
Re-type new password: 
Adding password for user tecmint

Öffnen Sie nun die Konfigurationsdatei, um die grundlegende http-Authentifizierung zu aktivieren.

$ sudo vim /etc/squid/squid.conf

Nach den Ports fügen ACLs die folgenden Zeilen hinzu:

auth_param basic program /usr/lib64/squid/basic_ncsa_auth /etc/squid/passwd
auth_param basic children 5
auth_param basic realm Squid Basic Authentication
auth_param basic credentialsttl 2 hours
acl auth_users proxy_auth REQUIRED
http_access allow auth_users
Aktivieren Sie die Squid-Benutzerauthentifizierung
Aktivieren Sie die Squid-Benutzerauthentifizierung

Speichern Sie die Datei und starten Sie squid neu, damit die neuen Änderungen wirksam werden:

$ sudo systemctl restart squid

Blockieren Sie Websites auf Squid Proxy

Um den Zugriff auf unerwünschte Websites zu blockieren, erstellen Sie zunächst eine Datei mit dem Namen „blacklisted_sites.acl”, In dem die auf der schwarzen Liste aufgeführten Websites gespeichert werden.

$ sudo touch /etc/squid/blacklisted_sites.acl

Fügen Sie nun beispielsweise die Websites hinzu, für die Sie den Zugriff blockieren möchten.

.badsite1.com
.badsite2.com

Das Verfahren Punkt Informiert Squid, alle Verweise auf diese Websites einschließlich zu blockieren www.badsite1, subsite.badsite1.com etc.

Öffnen Sie nun die Konfigurationsdatei von Squid.

$ sudo vim /etc/squid/squid.conf

Fügen Sie unmittelbar nach den obigen ACLs die folgenden zwei Zeilen hinzu:

acl bad_urls dstdomain "/etc/squid/blacklisted_sites.acl"
http_access deny bad_urls
Blockieren Sie Websites in Squid
Blockieren Sie Websites in Squid

Speichern Sie nun die Datei und starten Sie squid neu:

$ sudo systemctl restart squid

Blockieren Sie ein bestimmtes Schlüsselwort mit Squid

Um eine Liste von Schlüsselwörtern zu blockieren, erstellen Sie zunächst eine Datei mit dem Namen „blockkeywords.lst”, In dem die auf der schwarzen Liste stehenden Schlüsselwörter gespeichert werden.

$ sudo touch /etc/squid/blockkeywords.lst

Fügen Sie nun beispielsweise die Schlüsselwörter hinzu, die Sie den Zugriff blockieren möchten.

facebook
instagram
gmail

Öffnen Sie nun die Konfigurationsdatei von Squid und fügen Sie die folgende Regel hinzu.

acl blockkeywordlist url_regex "/etc/squid/blockkeywords.lst"
http_access deny blockkeywordlist

Speichern Sie nun die Datei und starten Sie squid neu:

$ sudo systemctl restart squid

Sobald alles korrekt konfiguriert ist, können Sie jetzt die Netzwerkeinstellungen Ihres lokalen Client-Webbrowsers oder des Betriebssystems für die Verwendung Ihres neu konfigurierten Squid-HTTP-Proxys konfigurieren.

Konfigurieren Sie den Client für die Verwendung von Squid Proxy

Um zu testen, ob Ihr Proxyserver funktioniert oder nicht, können Sie öffnen Feuerfuchs und geh zu Bearbeiten -> Einstellungen -> Erweitert -> Netzwerk -> Einstellungen und wählen Sie “Manuelle Proxy-Konfiguration”Und geben Sie die IP-Adresse und den Port Ihres Proxyservers ein, die für alle Verbindungen wie folgt verwendet werden sollen.

Konfigurieren Sie den Client für die Verwendung von Squid Proxy
Konfigurieren Sie den Client für die Verwendung von Squid Proxy

Sobald Sie alle erforderlichen Proxy-Details eingegeben haben, können Sie mit Ihrem Squid-Proxyserver im Internet surfen. Sie können dasselbe in jedem anderen Browser oder Programm tun, das Sie möchten.

Um sicherzustellen, dass Sie mit Ihrem Proxyserver im Internet surfen, können Sie besuchen http://www.ipaddresslocation.org/In der rechten oberen Ecke muss dieselbe IP-Adresse wie die IP-Adresse Ihres Servers angezeigt werden.

Weitere Konfigurationseinstellungen finden Sie unter offizielle Tintenfischdokumentation. Wenn Sie Fragen oder Kommentare haben, fügen Sie diese bitte im Kommentarbereich unten hinzu.

Similar Posts

Leave a Reply

Your email address will not be published. Required fields are marked *