Ein Proxy-Server hat viele Anwendungsfälle. Er kann vom persönlichen Internetzugang bis zur Einschränkung des Zugriffs von Unternehmenssystemen/Servern auf die externe Welt oder zur Begrenzung des externen Internetzugriffs für eine Reihe von Servern in der Cloud reichen.
Der beste Weg, einen Proxy-Server zu konfigurieren, ist die Verwendung des Squid-Proxys. Er ist ein weit verbreiteter Proxyserver.
In diesem Artikel haben wir Folgendes behandelt.
- Proxyserver installieren
- Proxyserver konfigurieren
- Grundlegende Proxy-Authentifizierung konfigurieren.
Hinweis: Diese Anleitung wurde auf CentOS 7 getestet. Für die Einrichtung unter Ubuntu lesen Sie bitte dieses Tutorial – Squid Proxy Setup On Ubuntu
Proxy-Server installieren: Squid Proxy
Schritt 1: Aktualisieren Sie den Server
sudo yum update -y
Schritt 2: Konfigurieren Sie das EPEL-Repo.
sudo yum -y install epel-releasesudo yum -y updatesudo yum clean all
Schritt 3: Squid installieren
sudo yum -y install squid
Schritt 4: Squid-Server starten und aktivieren.
sudo systemctl start squidsudo systemctl enable squid
Schritt 5: Überprüfen Sie den Status des Squid-Servers.
sudo systemctl status squid
Proxy-Server konfigurieren: Squid Proxy
Alle Konfigurationen für den Squid-Server befinden sich in der /etc/squid/squid.conf
-Datei.
Proxy-Quellen für den Zugriff auf das Internet konfigurieren
Zunächst müssen Sie die Quellen konfigurieren, von denen Squid Proxy Verbindungen annehmen soll. Zum Beispiel könnten Sie auf diesen Proxyserver nur von Ihrem Heimnetzwerk oder von bestimmten CIDR-Bereichen zugreifen.
Sie können einen Quell-IP-Bereich mit einer ACL im folgenden Format hinzufügen.
acl localnet src 110.220.330.0/24
Öffnen Sie die /etc/squid/squid.conf
Datei und fügen Sie die Quelle wie unten gezeigt hinzu. Ändern Sie die IP in die gewünschte Netzwerk/IP-Quelle, basierend auf Ihren Bedürfnissen. Im folgenden Beispiel haben wir eine einzelne Quell-IP hinzugefügt.
Starten Sie den Proxy-Server neu, nachdem Sie die ACL-Änderungen vorgenommen haben.
sudo systemctl restart squid
Testen Sie die Konnektivität des Proxyservers
Testen Sie, ob der Proxyserver mit einer einfachen curl-Anfrage funktioniert. Verwenden Sie das folgende curl-Format. Standardmäßig läuft der Squid-Proxy auf dem Port 3128.
curl -x http://<squid-proxy-server-IP>:3128 -L http://google.com
Konfigurieren Sie die Proxy-Authentifizierung
Zusammen mit Zugriffs-ACL’s, können Sie Ihrem Proxy-Server für zusätzliche Sicherheit eine grundlegende Authentifizierung hinzufügen. Führen Sie die folgenden Schritte aus, um eine Basisauthentifizierung für den Squid-Proxyserver einzurichten.
Schritt 1: Installieren Sie httpd-tools
sudo yum -y install httpd-tools
Schritt 2: Erstellen Sie eine passwd-Datei und machen Sie squid zum Eigentümer der Datei.
sudo touch /etc/squid/passwd && sudo chown squid /etc/squid/passwd
Schritt 3: Fügen Sie pxuser mit dem Dienstprogramm htpasswd in die Passwortdatei ein. Es wird nach einem benutzerdefinierten Passwort gefragt. Geben Sie ein sicheres Passwort ein, das Sie benötigen. Dieser Benutzername und dieses Passwort werden für alle Verbindungen über diesen Proxy verwendet.
sudo htpasswd /etc/squid/passwd pxuser
Schritt 4: Öffnen Sie die squid Konfigurationsdatei.
sudo vi /etc/squid/squid.conf
Fügen Sie Folgendes in die Konfigurationsdatei ein und speichern Sie sie.
auth_param basic program /usr/lib64/squid/basic_ncsa_auth /etc/squid/passwdauth_param basic children 5auth_param basic realm Squid Basic Authenticationauth_param basic credentialsttl 2 hoursacl auth_users proxy_auth REQUIREDhttp_access allow auth_users
Schritt 5: Starten Sie nun den Squid-Server neu, damit die Konfigurationsänderungen wirksam werden.
sudo systemctl restart squid
Schritt 6: Wenn Sie nun die Proxy-Verbindung mit curl testen, erhalten Sie die Meldung „Authentifizierung erforderlich“, wie unten gezeigt.
Nun testen Sie die Verbindung mit Proxy-Benutzer und Passwort, die wir in Schritt 3 konfiguriert haben. Eine Beispielsyntax ist unten abgebildet.
curl -x http://35.196.101.43:3128 --proxy-user pxuser:12345 -I http://google.com
Mit Benutzernamen und Passwort sollte die Proxy-Anfrage durchgehen.
Sperren von Websites
Ein weiterer großer Nutzen des Proxy-Servers ist das Einschränken des Website-Zugriffs. Führen Sie die folgenden Schritte aus, um eine Sperrliste zu erstellen.
Schritt 1: Öffnen Sie eine Sperrlistendatei.
sudo vi /etc/squid/blocked_sites
Fügen Sie die zu sperrenden Websites in die Datei ein. Zum Beispiel,
facebook.comtwitter.cominstagram.com
Schritt 2: Öffnen Sie die Squid-Konfigurationsdatei.
sudo vi /etc/squid/squid.conf
Fügen Sie der ACL-Liste Folgendes hinzu.
acl blocked_sites dstdomain "/etc/squid/blocked_sites"http_access deny blocked_sites
Schritt 3: Starten Sie den Squid-Server neu.
sudo systemctl restart squid
Wenn Sie nun versuchen, über den Proxy auf die gesperrte Seite zuzugreifen, erhalten Sie eine verbotene Meldung wie unten dargestellt.
- More