Squid ist ein kostenloser Open-Source-Web-Proxy-Caching-Server, der verschiedene Protokolle wie HTTP, HTTPS, FTP und SSL unterstützt. Es wird hauptsächlich als Caching-Proxyserver verwendet und kann die Serverleistung erheblich verbessern, indem es wiederholte Anfragen zwischenspeichert, den Webverkehr filtert und auf geobeschränkte Inhalte zugreift.
Squid kann als Vermittler zwischen dem Client und dem Webserver fungieren. Nachdem Sie den Squid-Proxy verbunden haben, können Sie anonym auf Internetdienste zugreifen und lokale Netzwerkbeschränkungen umgehen.
In diesem Tutorial lernen wir, wie man Squid Proxy unter CentOS 8 installiert und konfiguriert.
Voraussetzungen
- Ein frischer CentOS 8 VPS auf der Atlantic.Net Cloud Platform
- Ein auf Ihrem Server konfiguriertes Root-Passwort
Schritt 1 – Erstellen Sie einen Atlantic.Net Cloud-Server
Melden Sie sich zunächst bei Ihrem Atlantic.Net Cloud Server an. Erstellen Sie einen neuen Server und wählen Sie CentOS 8 als Betriebssystem mit mindestens 1 GB RAM. Stellen Sie über SSH eine Verbindung zu Ihrem Cloud-Server her und melden Sie sich mit den oben auf der Seite hervorgehobenen Anmeldeinformationen an.
Sobald Sie sich bei Ihrem CentOS 8-Server angemeldet haben, führen Sie den folgenden Befehl aus, um Ihr Basissystem mit den neuesten verfügbaren Paketen zu aktualisieren.
dnf update -y
Schritt 2 – Installieren Sie den Squid-Proxy-Server
Das Squid-Paket ist im Standard-Repository von CentOS 8 verfügbar. Sie können es installieren, indem Sie einfach den folgenden Befehl ausführen:
dnf install squid -y
Starten Sie nach der Installation den Squid-Proxy-Dienst und aktivieren Sie ihn beim Neustart mit dem folgenden Befehl:
systemctl start squid systemctl enable squid
Schritt 3 – IP-basierte Authentifizierung konfigurieren
Es gibt mehrere Möglichkeiten, Squid so zu konfigurieren, dass es Verbindungen akzeptiert und als HTTP-Proxy dient. In diesem Abschnitt werden wir Squid so konfigurieren, dass Clients anhand ihrer IP-Adressen authentifiziert werden.
Öffnen Sie die Squid-Standardkonfigurationsdatei unter /etc/squid/squid.conf:
nano /etc/squid/squid.conf
Fügen Sie am Anfang der Datei die folgende Zeile hinzu:
acl user1 src 192.168.0.10 acl user2 src 192.168.0.11 http_access allow user1 user2
Speichern und schließen Sie die Datei, wenn Sie fertig sind, und starten Sie dann den Squid-Dienst neu, um die Änderungen zu übernehmen:
systemctl restart squid
Ersetzen Sie im obigen Schritt Ihre relevanten Informationen wie unten :
Benutzer1 und Benutzer2 ist der Name, der die Client-Computer identifiziert.
192.168.0.10 und 192.168.0.11 ist die IP-Adresse des Client-Computers.
Schritt 4 – Benutzerbasierte Authentifizierung konfigurieren
In diesem Abschnitt werden wir Squid konfigurieren, um einen Client mit Benutzernamen und Passwörtern zu authentifizieren.
Installieren Sie zunächst das Apache-Dienstprogrammpaket in Ihrem System:
dnf install httpd-tools -y
Erstellen Sie als Nächstes eine Datei zum Speichern von Squid-Benutzern und Passwörtern und ändern Sie den Eigentümer der Passwortdatei:
touch /etc/squid/squid_passwd chown squid /etc/squid/squid_passwd
Erstellen Sie als Nächstes mit dem folgenden Befehl einen neuen Squid-Benutzer mit dem Namen user1:
htpasswd /etc/squid/squid_passwd user1
Sie werden aufgefordert, ein Passwort für diesen Benutzer zu erstellen, wie unten gezeigt:
New password: Re-type new password: Adding password for user user1
Erstellen Sie als Nächstes einen weiteren Benutzer namens user2 mit dem folgenden Befehl:
htpasswd /etc/squid/squid_passwd user2
Geben Sie wie unten gezeigt ein Passwort für diesen Benutzer ein:
New password: Re-type new password: Adding password for user user2
Sie können nun beide Benutzer mit dem folgenden Befehl verifizieren:
cat /etc/squid/squid_passwd
Sie sollten die folgende Ausgabe erhalten:
user1:$apr1$szXO3OTj$37MuRy2V06mIAOiRpFjnr1 user2:$apr1$MCAckv0h$0VwDLLhAfMLaLm3Xvk3H/0
Bearbeiten Sie als Nächstes die Squid-Konfigurationsdatei:
nano /etc/squid/squid.conf
Fügen Sie am Anfang der Datei die folgenden Zeilen hinzu:
auth_param basic program /usr/lib64/squid/basic_ncsa_auth /etc/squid/squid_passwd acl ncsa_users proxy_auth REQUIRED http_access allow ncsa_users
Speichern und schließen Sie die Datei und starten Sie dann den Squid-Proxydienst neu, um die Änderungen zu übernehmen:
systemctl restart squid
Schritt 5 – Kombinierte Authentifizierung konfigurieren
In diesem Abschnitt werden wir Squid konfigurieren, um einen Client anhand der IP-Adresse und des Benutzernamens/Passworts zu authentifizieren.
Bearbeiten Sie die Squid-Standardkonfigurationsdatei:
nano /etc/squid/squid.conf
Suchen Sie die folgenden Zeilen, die Sie zuvor hinzugefügt haben:
auth_param basic program /usr/lib64/squid/basic_ncsa_auth /etc/squid/squid_passwd acl ncsa_users proxy_auth REQUIRED http_access allow ncsa_users acl user1 src 192.168.0.10 acl user2 src 192.168.0.11 http_access allow user1 user2
Und ersetzen Sie sie durch die folgenden Zeilen:
acl user1 src 192.168.0.10 acl user2 src 192.168.0.11 auth_param basic program /usr/lib64/squid/basic_ncsa_auth /etc/squid/squid_passwd acl ncsa_users proxy_auth REQUIRED http_access allow user1 user2 ncsa_users
Speichern und schließen Sie die Datei und starten Sie dann den Squid-Proxydienst neu, um die Änderungen zu übernehmen:
systemctl restart squid
Schritt 6 – Konfigurieren Sie Squid, um den Datenverkehr zu anonymisieren
Als Nächstes müssen Sie einige Regeln hinzufügen, um Client-IP-Adressen von den Servern zu maskieren, die Datenverkehr von Ihrem Squid-HTTP-Proxy empfangen.
Sie können dies tun, indem Sie die Squid-Standardkonfigurationsdatei bearbeiten:
nano /etc/squid/squid.conf
Fügen Sie am Anfang der Datei die folgenden Zeilen hinzu:
forwarded_for off request_header_access Allow allow all request_header_access Authorization allow all request_header_access WWW-Authenticate allow all request_header_access Proxy-Authorization allow all request_header_access Proxy-Authenticate allow all request_header_access Cache-Control allow all request_header_access Content-Encoding allow all request_header_access Content-Length allow all request_header_access Content-Type allow all request_header_access Date allow all request_header_access Expires allow all request_header_access Host allow all request_header_access If-Modified-Since allow all request_header_access Last-Modified allow all request_header_access Location allow all request_header_access Pragma allow all request_header_access Accept allow all request_header_access Accept-Charset allow all request_header_access Accept-Encoding allow all request_header_access Accept-Language allow all request_header_access Content-Language allow all request_header_access Mime-Version allow all request_header_access Retry-After allow all request_header_access Title allow all request_header_access Connection allow all request_header_access Proxy-Connection allow all request_header_access User-Agent allow all request_header_access Cookie allow all request_header_access All deny all
Speichern und schließen Sie die Datei und starten Sie dann den Squid-Proxydienst neu, um die Änderungen zu übernehmen:
systemctl restart squid
Schritt 7 – Squid-Proxy testen
An diesem Punkt ist Ihr Squid-Proxy-Server so konfiguriert, dass er Client-Verbindungen basierend auf der IP-Adresse und dem Benutzernamen/Passwort akzeptiert und den Internetverkehr anonym verarbeitet.
Als Nächstes müssen Sie die Browsereinstellungen Ihres Client-Computers konfigurieren, um Ihren Squid-Server als HTTP-Proxy zu verwenden.
Öffnen Sie auf dem Client-Computer Mozilla Firefox und klicken Sie wie unten gezeigt auf Bearbeiten => Einstellungen:
Scrollen Sie nach unten zum Abschnitt Netzwerkeinstellungen und klicken Sie auf Einstellungen . Sie sollten die folgende Seite sehen:
Wählen Sie das Optionsfeld Manuelle Proxy-Konfiguration, geben Sie die IP-Adresse Ihres Squid-Servers in das Feld HTTP-Host und 3128 in das Feld Port ein, aktivieren Sie das Kontrollkästchen „Diesen Proxy-Server für alle Protokolle verwenden“ und klicken Sie auf OK. stark> Schaltfläche, um die Einstellungen zu speichern.
Jetzt ist Ihr Browser so konfiguriert, dass er über den Squid-Proxy im Internet surft.
Geben Sie zur Überprüfung die URL https://www.whatismyip.com/ ein. Sie werden aufgefordert, einen Benutzernamen und ein Passwort einzugeben, wie unten gezeigt:
Geben Sie den Benutzernamen und das Passwort Ihres Squid-Proxy-Servers ein, die Sie zuvor erstellt haben, und klicken Sie auf OK Taste. Sie sollten die folgende Seite sehen:
Auf der obigen Seite sollten Sie anstelle der IP-Adresse Ihres Client-Computers die IP-Adresse Ihres Squid-Servers sehen.
Schlussfolgerung
In der obigen Anleitung haben Sie gelernt, wie Sie Squid als HTTP-Proxy-Server unter CentOS 8 konfigurieren und Ihren Browser für die Verwendung konfigurieren. Sie können jetzt anonym im Internet surfen und verhindern, dass Firefox Sie verfolgt. Probieren Sie Squid noch heute auf einem VPS-Hosting-Konto von Atlantic.Net aus!