Warning: "continue" targeting switch is equivalent to "break". Did you mean to use "continue 2"? in /home/proxy107/domains/1proxy.de/public_html/wp-content/themes/Divi/includes/builder/functions.php on line 5941
So richten Sie Ihren eigenen Webproxy unter Ubuntu 16.04 VPS ein - 1 Proxy

Dieses Tutorial zeigt Ihnen, wie Sie Ihren eigenen Webproxy unter Ubuntu 16.04 einrichten. Ein Webproxy ist eine Website, auf der ein Benutzer eine bestimmte URL eingibt, um die Website zu entsperren. Es gibt eine Vielzahl von Web-Proxy-Skripten, mit denen Sie Ihren eigenen Web-Proxy einrichten können. In diesem Tutorial werden Glype und PHP-Proxy verwendet. Glype ist ein sehr beliebtes Web-Proxy-Skript und PHP-Proxy ist eine gute Alternative. Sie können eine davon auswählen. In meinem Test ist PHP-Proxy schneller und funktioniert besser mit beliebten Websites wie Facebook, Twitter und YouTube, da es aktiv aktualisiert wird. Wir werden sehen, wie sie mit Apache / Nginx eingerichtet und HTTPS mit Let’s Encrypt aktiviert werden.

Normalerweise verwende ich Shadowsocks-Proxy und OpenConnect VPN , um die Internet-Zensur zu umgehen, aber es besteht die Möglichkeit, dass diese beiden Tools in meinem Land blockiert werden. Webproxy ist eine gute Sicherungsmethode, da es keine Merkmale von SOCKS-Proxy und VPN aufweist. In den Augen der Internet-Firewall ist es nur normaler HTTPS-Verkehr. Es sind Zehntausende von kostenlosen Web-Proxys online. Der Nachteil ist, dass diese öffentlichen Web-Proxys, sobald sie bekannt sind, leicht blockiert werden können. Das Einrichten eines eigenen privaten Web-Proxys hat den Vorteil, dass nur Sie dessen Existenz kennen.

Voraussetzungen

Um diesem Tutorial zu folgen, benötigen Sie:

  • Ein VPS (Virtual Private Server), der frei auf blockierte Websites zugreifen kann (außerhalb Ihres Landes oder Internetfiltersystems), und ein Domainname. Für VPS empfehle ich Vultr . Sie bieten Hochleistungs-KVM-VPS mit 512 MB Speicher für nur 2,5 USD pro Monat , was perfekt für Ihren privaten Proxyserver ist.
  • Installieren Sie einen Webserver und PHP

Sie benötigen außerdem einen Domainnamen, damit Sie eine HTTPS-Verschlüsselung hinzufügen können, um Ihren Webdatenverkehr zu schützen. Ich empfehle den Kauf von Domain-Namen bei NameCheap, da der Preis niedrig ist und whois Datenschutz ein Leben lang kostenlos ist.

Schritt 1: Installieren Sie Web Server und PHP

SSH in Ihr Ubuntu 16.04 VPS. Wenn Sie Nginx als Webserver verwenden möchten, installieren Sie Nginx und PHP7, indem Sie den folgenden Befehl ausführen.

sudo apt install nginx php7.0-fpm php7.0-curl php7.0-mbstring php7.0-xml php7.0-zip

Wenn Sie Apache als Webserver verwenden möchten, führen Sie es aus

sudo apt install apache2 php7.0 libapache2-mod-php7.0 php7.0-curl php7.0-mbstring php7.0-xml php7.0-zip

Schritt 2: Laden Sie Glype oder PHP-Proxy herunter

Glype

Laden Sie Glype herunter, indem Sie den folgenden Befehl ausführen.

wget https://www.php-proxy.com/download/glype-1.4.15.zip

Extrahieren Sie es in das /var/www/proxy/Verzeichnis.

sudo apt install entpacken

sudo mkdir -p / var / www / proxy /

sudo entpacke glype-1.4.15.zip -d / var / www / proxy /

Legen Sie www-data(Webserver-Benutzer) als Eigentümer fest.

sudo chown www-data: www-data / var / www / proxy / -R

PHP-Proxy

Wir können Composer verwenden, um PHP-Proxy herunterzuladen. Installieren Sie Composer aus dem Ubuntu 16.04-Repository.

sudo apt install composer

Laden Sie dann PHP-Proxy in das /var/www/proxy/Verzeichnis herunter .

sudo mkdir -p / var / www / proxy /

sudo composer create-project athlon1600 / php-proxy-app: dev-master / var / www / proxy /

Legen Sie www-data(Webserver-Benutzer) als Eigentümer fest.

sudo chown www-data: www-data / var / www / proxy / -R

Schritt 3: Konfigurieren Sie den Webserver

In diesem Schritt müssen wir einen Nginx-Serverblock oder einen virtuellen Apache-Host für unseren Webproxy erstellen.

Erstellen Sie einen Nginx-Serverblock

Erstellen Sie einen Serverblock unter /etc/nginx/conf.d/Verzeichnis.

sudo nano /etc/nginx/conf.d/web-proxy.conf

Kopieren Sie die folgenden Zeilen und fügen Sie sie in die Datei ein. Ersetzen Sie proxy.example.comdurch Ihren echten Domainnamen. Vergessen Sie nicht, einen Eintrag in Ihrem DNS-Manager festzulegen.

Server {

        höre 80;

        server_name proxy.example.com ;

        root / var / www / proxy /;

        index index.php;

        Standort / {

          try_files $ uri $ uri / /index.php;

        }}

         Ort ~ \ .php $ {

                fastcgi_pass unix: /run/php/php7.0-fpm.sock;

                fastcgi_param SCRIPT_FILENAME $ document_root $ fastcgi_script_name;

                include fastcgi_params;

                include snippets / fastcgi-php.conf;

        }}

}}

Speichern und schließen Sie die Datei. Testen Sie dann die Nginx-Konfigurationen.

sudo nginx -t

Wenn der Test erfolgreich ist, laden Sie Nginx neu, damit die Änderungen wirksam werden.

sudo systemctl nginx neu laden

Erstellen Sie einen virtuellen Apache-Host

Erstellen Sie einen virtuellen Apache-Host im /etc/apache2/sites-avaialable/Verzeichnis.

sudo nano /etc/apache2/sites-available/web-proxy.conf

Kopieren Sie die folgenden Zeilen und fügen Sie sie in die Datei ein. Ersetzen Sie proxy.example.comdurch Ihren echten Domainnamen. Vergessen Sie nicht, einen Eintrag in Ihrem DNS-Manager festzulegen.

<VirtualHost *: 80>        

        Server proxy.example.com

        DocumentRoot / var / www / proxy

        ErrorLog $ {APACHE_LOG_DIR} /proxy.error.log

        CustomLog $ {APACHE_LOG_DIR} /proxy.access.log kombiniert

</ VirtualHost>

Speichern und schließen Sie die Datei. Aktivieren Sie dann diesen virtuellen Host.

sudo a2ensite web-proxy.conf

Laden Sie Apache neu, damit die Änderungen wirksam werden.

sudo systemctl apache2 neu laden

Das Webinterface

Besuchen proxy.example.comSie jetzt in Ihrem Webbrowser. Wenn Sie Glype verwenden, werden Sie zum Admin Control Panel ( proxy.example.com/admin.php) weitergeleitet.

Wenn Sie PHP-Proxy verwenden, wartet ein funktionierender Webproxy darauf, dass Sie eine URL eingeben.

Jetzt aktivieren wir HTTPS mit Let’s Encrypt.

Schritt 4: Aktivieren Sie HTTPS mit Let’s Encrypt für Ihren Webproxy

Wir können den Let’s Encrypt-Client (certbot) von der offiziellen PPA installieren, indem wir die folgenden Befehle ausführen.

sudo apt install software-properties-common

sudo add-apt-repository ppa: certbot / certbot

sudo apt update

sudo apt install certbot

Nginx- Benutzer müssen auch das Certbot Nginx-Plugin installieren.

sudo apt installiert python-certbot-nginx

Aktivieren Sie HTTPS mit dem Nginx-Plugin.

sudo certbot –nginx –agree-tos –redirect –staple-ocsp -d proxy.example.com –emailen Sie Ihre-E-Mail-Adresse

Apache- Benutzer müssen das Certbot Apache-Plugin installieren.

sudo apt installiert python-certbot-apache

Aktivieren Sie HTTPS mit dem Apache-Plugin.

sudo certbot –apache –agree-tos –redirect –staple-ocsp -d proxy.example.com –Mail Ihre-E-Mail-Adresse

Wenn Sie die folgende Fehlermeldung erhalten.

Der Client mit dem aktuell ausgewählten Authentifikator unterstützt keine Kombination von Herausforderungen, die die Zertifizierungsstelle erfüllen.

Bitte lesen Sie diesen Beitrag im Let’s Encrypt-Forum , um das Problem zu beheben.

Aktualisieren Sie nach erfolgreicher Installation des Zertifikats Ihren Proxy in Ihrem Webbrowser, um HTTPS zu verwenden.

(Optional) Setzen Sie Ihren Webproxy hinter CDN

Es gibt mindestens drei Möglichkeiten, wie ein Internet-Zensor eine Website blockieren kann:

  • Blockieren Sie die IP-Adresse der Website.
  • Hijacken Sie die DNS-Antwort, um dem Endbenutzer eine falsche IP-Adresse zu geben.
  • Blockieren Sie die TLS-Verbindung, indem Sie sich die Servernamenanzeige (SNI) ansehen.

Wenn Sie befürchten, dass Ihr Webproxy durch Internetzensoren blockiert wird, können Sie Ihren Webproxy hinter ein CDN (Content Delivery Network) wie Cloudflare stellen. Auf diese Weise wird die IP-Adresse Ihres Servers ausgeblendet. Wenn der Internet-Zensor die Cloudflare-IP-Adresse blockiert, entsteht ein Kollateralschaden, da viele andere Websites dieselbe IP-Adresse verwenden. Dies lässt den Internet-Zensor zweimal überlegen, bevor er dies tut.

Um DNS-Vergiftungen vorzubeugen, sollte der Endbenutzer DNS über TLS oder DNS über HTTPS verwenden. Um zu verhindern, dass die SNI-Informationen verloren gehen, sollte die Website verschlüsseltes SNI verwenden.

Fazit

Das ist es! Ich hoffe, dieses Tutorial hat Ihnen geholfen, Ihren eigenen Web-Proxy unter Ubuntu 16.04 zu erstellen. Wenn Sie diesen Beitrag nützlich fanden,  abonnieren Sie wie immer unseren kostenlosen Newsletter , um weitere Tipps und Tricks zu erhalten.