Dieses Tutorial zeigt Ihnen, wie Sie den Shadowsocks-Proxy-Server auf einem Debian 9 VPS (Virtual Private Server) installieren . Shadowsocks ist ein leichtgewichtiger, superschneller und sicherer Socks5-Proxy, mit dem die Internetzensur umgangen werden kann. Sie erfahren auch, wie Sie den Shadosocks-libev-Client auf dem Debian 9-Desktop einrichten .
Es gibt viele Implementierungen von Shadowsocks, dieses Tutorial zeigt Ihnen, wie Sie Shadowsocks-libev verwenden, weil
- Es ist in C geschrieben, sehr schnell sogar auf Low-End-Rechnern.
- Es ist gut gepflegt.
- Es ist die funktionsreichste Implementierung. TCP Fast Open, Multiuser, Management API, Umleitungsmodus, Tunnelmodus, UDP-Relay, AEAD-Chiffren und Plugins werden alle unterstützt.
Voraussetzungen
Um dieses Tutorial abzuschließen, benötigen Sie:
- Ein VPS (Virtual Private Server). Ich empfehle Vultr. Sie bieten einen Hochleistungs-KVM-VPS mit 512 MB Speicher für nur 2,5 $ pro Monat, was perfekt für Ihren privaten Proxy-Server ist.
- Installieren Sie dann Debian 9 auf Ihrem VPS.
So installieren Sie den Shadowsocks-libev-Server auf Debian 9 VPS
Sobald Sie Debian 9 auf Ihrem VPS installiert haben. Melden Sie sich per SSH bei Ihrem Server an. Shadowsocks-libev ist im Standard-Repository von Debian 9 enthalten, aber veraltet. Tatsächlich funktioniert die veraltete Version auf meinem Server nicht mehr. Ich habe empfohlen, es aus dem Debian 9 Stretch-Backports-Repository zu installieren, das die neueste Version von Shadowsocks-libev enthält, damit Sie Sicherheitsupdates und Fehlerbehebungen erhalten.
Um das Stretch-Backports-Repository zu aktivieren, müssen Sie sources.list
bearbeiten Datei.
sudo nano /etc/apt/sources.list
Fügen Sie die folgende Zeile am Ende dieser Datei hinzu.
deb http://ftp.debian.org/debian stretch-backports main
Speichern und schließen Sie die Datei. Aktualisieren Sie dann den lokalen Paketindex.
sudo apt update
Installieren Sie danach Shadowsocks-libev aus dem Stretch-Backports-Repository.
sudo apt -t stretch-backports install shadowsocks-libev
Um die Versionsnummer zu prüfen, führen Sie
ausss-server -v
Beispielausgabe:
shadowsocks-libev 3.1.3
Die Natrium-Kryptobibliothek (libsodium) wird zusammen mit shadowsocks-libev installiert. Es ist eine Voraussetzung, wenn Sie das sichere und schnelle Verschlüsselungsverfahren ChaCha20-Poly1305 verwenden möchten. Nach der Installation startet Shadowsocks-libev automatisch mit der Standardkonfigurationsdatei. Sie können den Status überprüfen mit:
systemctl status shadowsocks-libev
Ausgabe:
● shadowsocks-libev.service - Shadowsocks-libev Default Server Service Loaded: loaded (/lib/systemd/system/shadowsocks-libev.service; enabled; vendor preset: enabled Active: active (running) since Wed 2018-04-25 06:18:55 UTC; 3min 47s ago Docs: man:shadowsocks-libev(8) Main PID: 28728 (ss-server) CGroup: /system.slice/shadowsocks-libev.service └─28728 /usr/bin/ss-server -c /etc/shadowsocks-libev/config.json -u
Wie Sie sehen können, wird es ausgeführt und der automatische Start beim Booten ist aktiviert. Wenn es nicht läuft, können Sie es starten mit:
sudo systemctl start shadowsocks-libev
Um den automatischen Start beim Booten zu aktivieren, führen Sie Folgendes aus:
sudo systemctl enable shadowsocks-libev
Jetzt müssen wir die Standardkonfigurationsdatei bearbeiten.
sudo nano /etc/shadowsocks-libev/config.json
Der Standardinhalt der Datei ist wie folgt.
{ "server":"127.0.0.1", "server_port":8388, "local_port":1080, "password":"focobguph", "timeout":60, "method":null }
Ersetzen Sie 127.0.0.1 durch die öffentliche IP-Adresse Ihres Debian-Servers. Sie können server_port
ändern zu einer anderen Portnummer, aber verwenden Sie nicht Port 8388. Legen Sie dann Ihr bevorzugtes Passwort fest, das zum Verschlüsseln des Datenverkehrs verwendet wird. Es wird empfohlen, null
zu ersetzen mit chacha20-ietf-poly1305
als Verschlüsselungsverfahren. Hier ist ein Beispiel meiner Konfiguration.
Speichern und schließen Sie die Datei. Starten Sie dann Shadowsocks-libev neu, damit die Änderungen wirksam werden.
sudo systemctl restart shadowsocks-libev
Installieren und konfigurieren Sie den Shadowsocks-libev-Client auf Debian 9 Desktop
Das Paket shadowsocks-libev enthält sowohl die Server-Software als auch die Client-Software. Verwenden Sie also einfach die oben erwähnte Methode, um Shadowsocks-libev auf dem Debian 9-Desktop zu installieren.
Hinweis:Unter Debian 9 wird Shadowsocks-libev (der Server) nach der Installation automatisch gestartet. Sie müssen den Shadowsocks-Server auf dem Debian 9-Desktop stoppen.
sudo systemctl stop shadowsocks-libev
Deaktivieren Sie auch den automatischen Start beim Booten.
sudo systemctl disable shadowsocks-libev
Die Shadowsocks-Client-Binärdatei heißt ss-local
. Dafür gibt es eine systemd-Service-Unit-Vorlage: /lib/systemd/system/[email protected]
. Bevor wir den Client starten, müssen wir die clientseitige Konfigurationsdatei erstellen.
sudo nano /etc/shadowsocks-libev/location-of-your-server.json
Sie können location-of-your-server
ersetzen mit etwas wie SFO, LAX. Kopieren Sie die Shadowsocks-libev-Serverkonfiguration in die Client-Konfigurationsdatei und fügen Sie dann die folgende Zeile hinzu, um dem Client mitzuteilen, dass er auf 127.0.0.1 lauschen soll.
"local_address":"127.0.0.1",
Die Client-Konfigurationsdatei sieht also so aus:
{ "server":"your-server-ip-address", "server_port":8388, "local_address":"127.0.0.1", "local_port":1080, "password":"focobguph", "timeout":60, "method":"chacha20-ietf-poly1305" }
Speichern und schließen Sie die Datei. Dann können wir den Client starten mit:
sudo systemctl start [email protected]location-of-your-server.service
Und aktivieren Sie den automatischen Start beim Booten.
sudo systemctl enable shadowsocks-libe[email protected]location-of-your-server.service
Überprüfen Sie seinen Status. Stellen Sie sicher, dass es ausgeführt wird.
systemctl status [email protected]location-of-your-server.service
Nun der ss-local
Der Prozess lauscht auf 127.0.0.1:1080 auf Ihrem Ubuntu-Desktop und ist mit Ihrem Shadowsocks-Server verbunden.
Konfigurieren Sie den Webbrowser für die Verwendung des Socks-Proxys
Damit Ihr Programm einen Socks-Proxy verwenden kann, muss das Programm Socks-Proxy unterstützen. Programme wie Firefox Quantum, Google Chrome und Dropbox ermöglichen Benutzern die Verwendung von Proxys. Ich zeige Ihnen, wie Sie Firefox und Google Chrome konfigurieren.
Firefox
Gehen Sie in Firefox zu Bearbeiten> Einstellungen> Allgemeines . Scrollen Sie dann ganz nach unten und klicken Sie auf Einstellungen im Netzwerk-Proxy . In den Verbindungseinstellungen Wählen Sie im Fenster Manuelle Proxy-Konfiguration aus . Wählen Sie dann SOCKS v5 aus weil Shadowsocks ein Socks5-Proxy ist. Geben Sie 127.0.0.1 in das SOCKS-Host-Feld und 1080 in das Port-Feld ein. Stellen Sie sicher, dass Proxy-DNS bei Verwendung von SOCKS v5 verwendet wird aktiviert. Klicken Sie auf OK, um diese Änderungen anzuwenden.
Google Chrome
Die Google Chrome- und Chromium-Linux-Versionen haben keine GUI zum Konfigurieren des Proxys, aber Sie können Befehlszeilenoptionen wie unten verwenden.
google-chrome --proxy-server="socks5://127.0.0.1:1080"
oder
chromium-browser --proxy-server="socks5://127.0.0.1:1080"
Sie können auch die SwitchOmega-Erweiterung zum Konfigurieren des Proxys installieren und verwenden, sodass Sie den Befehl nicht im Terminalfenster eingeben müssen.
DNS-Leak-Test
Gehen Sie zu dnsleaktest.com. Sie sehen die IP-Adresse Ihres Shadowsocks-Servers, was darauf hinweist, dass Ihr Proxy funktioniert.
Klicken Sie auf Standardtest. Stellen Sie sicher, dass Ihr lokaler ISP nicht in den Testergebnissen enthalten ist.
TCP-BBR aktivieren
TCP BBR ist ein TCP-Überlastungskontrollalgorithmus, der die Verbindungsgeschwindigkeit drastisch verbessern kann. Befolgen Sie das nachstehende Tutorial, um TCP BBR auf dem Debian 9-Server zu aktivieren. Sie müssen es nicht auf dem Debian 9-Desktop aktivieren. Das unten verlinkte Tutorial ist für Ubuntu, gilt aber auch für Debian.
- Wie man die Ubuntu-Netzwerkleistung einfach steigert, indem man TCP BBR aktiviert
TCP Fast Open aktivieren
Sie können Shadowsocks etwas beschleunigen, indem Sie TCP Fast Open aktivieren. TCP ist ein verbindungsorientiertes Protokoll, d. h. Daten können erst ausgetauscht werden, nachdem eine Verbindung aufgebaut wurde, was über den Drei-Wege-Handshake erfolgt. Mit anderen Worten, Daten können traditionell erst ausgetauscht werden, nachdem der Drei-Wege-Handshake abgeschlossen ist. TCP Fast Open (TFO) ist ein Mechanismus, mit dem Daten ausgetauscht werden können, bevor der Drei-Wege-Handshake abgeschlossen ist, wodurch bis zu 1 Round-Trip-Zeit (RTT) eingespart wird.
Die TCP-Fast-Open-Unterstützung ist seit Version 3.7 mit dem Linux-Kernel zusammengeführt und seit Version 3.13 standardmäßig aktiviert. Sie können Ihre Kernel-Version überprüfen, indem Sie Folgendes ausführen:
uname -r
Um die TCP-Fast-Open-Konfiguration auf Ihrem Debian-Server zu überprüfen, führen Sie
auscat /proc/sys/net/ipv4/tcp_fastopen
Es kann 4 Werte zurückgeben.
- 0 bedeutet deaktiviert.
- 1 bedeutet, dass es für ausgehende Verbindungen (als Client) aktiviert ist.
- 2 bedeutet, dass es für eingehende Verbindungen aktiviert ist (als Server).
- 3 bedeutet, dass es sowohl für ausgehende als auch für eingehende Verbindungen aktiviert ist.
Alle meine Debian-Server haben 1
zurückgegeben nachdem Sie den obigen Befehl ausgeführt haben. Wir möchten, dass tcp_fastopen auf unserem Server auf 3 gesetzt ist. Um dies zu erreichen, können wir die sysctl-Konfigurationsdatei bearbeiten.
sudo nano /etc/sysctl.conf
Fügen Sie dann die folgende Zeile am Ende der Datei ein.
net.ipv4.tcp_fastopen=3
Laden Sie die Sysctl-Einstellungen neu, damit die Änderung wirksam wird.
sudo sysctl -p
Dann müssen Sie auch TCP Fast Open in der Shadowsocks-Konfigurationsdatei aktivieren.
sudo nano /etc/shadowsocks-libev/config.json
Fügen Sie die folgende Zeile hinzu.
"fast_open": true
Ihre Shadowsocks-Serverkonfigurationsdatei sieht also folgendermaßen aus:
{ "server":"your-server-ip-address", "server_port":8388, "local_port":1080, "password":"focobguph", "timeout":60, "method":"chacha20-ietf-poly1305", "fast_open": true }
Beachten Sie, dass die letzte Konfigurationszeile kein Komma enthält. Speichern und schließen Sie die Datei. Starten Sie dann den Shadowsocks-Server neu.
sudo systemctl restart shadowsocks-libev
Überprüfen Sie, ob es läuft. (Ein Fehler in der Konfigurationsdatei kann den Neustart verhindern.)
systemctl status shadowsocks-libev
Sie müssen auch die Konfigurationsdatei des Shadowsocks-Clients bearbeiten und neu starten, um TCP Fast Open auf dem Debian 9-Desktop zu aktivieren.
Weitere Informationen zur Verwendung auf Shadowsocks finden Sie im Handbuch.
man shadowsocks-libev
Das ist es! Ich hoffe, dieses Tutorial hat Ihnen geholfen, den Shadowsocks-libev-Proxy auf dem Debian 9-Server und -Desktop zu installieren. Wenn Sie diesen Beitrag nützlich fanden, abonnieren Sie wie immer unseren kostenlosen Newsletter, um weitere Tipps und Tricks zu erhalten. Pass auf dich auf.