Wissensbasis Einfache Anweisungen zur Arbeit mit dem Profitserver-Dienst
Main Wissensbasis 3Proxy-Konfiguration auf CentOS/ArchLinux

3Proxy-Konfiguration auf CentOS/ArchLinux


In diesem Artikel zeigen wir die 3proxy-Konfiguration auf einem dedizierten Server mit ArchLinux/CentOS-Betriebssystem. 3proxy ist eines der wichtigsten und funktionalsten Tools. Es unterstützt verschiedene Protokolle: HTTP, HTTPS, FTP, SOCKS und weitere. Damit richten Sie Ihren eigenen Proxy-Server in wenigen Minuten ein.

Der Artikel enthält eine Schritt-für-Schritt-Anleitung zur Installation und Konfiguration des Programms. Themen wie die Installation von einer offiziellen Quelle, das Einrichten von Konfigurationsdateien und das Öffnen nicht standardmäßiger Ports werden behandelt. Häufige Fehler werden beschrieben und praktische Lösungsvorschläge gegeben. Vor dem Start benötigen Sie einen VPS oder dedizierten Server mit CentOS oder Arch Linux. Alle Schritte im Beispiel werden auf einem dedizierten Server mit CentOS 7 und einer statischen öffentlichen IP-Adresse durchgeführt.

Installation

Schritt 1:

3proxy wird direkt aus den Quellen installiert. Als Compiler wird gcc verwendet. Wir verbinden uns als Root (Superuser) mit dem Server und installieren den Compiler.

yum install gcc

Schritt 2:

Nun müssen Sie die 3proxy-Quelldateien herunterladen. Besuchen Sie dazu die offizielle Website und kopieren Sie den Link zur aktuellen Version:

Dienstprogramm installieren

Falls eine archivierte Version benötigt wird, können Sie den Link auch direkt von GitHub herunterladen :

3proxy von Github installieren

Zum Zeitpunkt des Schreibens dieses Artikels ist die aktuelle Version 0.9.3. Laden Sie es herunter und entpacken Sie es sofort:

wget https://github.com/z3APA3A/3proxy/archive/0.9.3.tar.gz
tar -xvzf 0.9.3.tar.gz

Schritt 3:

Gehen Sie in das Verzeichnis mit dem entpackten Projekt und kompilieren Sie:

cd 3proxy-0.9.3/
make -f Makefile.Linux

Schritt 4:

Wir erstellen Verzeichnisse und kopieren die 3proxy-Datei nach /usr/bin:

mkdir -p /var/log/3proxy
mkdir /etc/3proxy
cp bin/3proxy /usr/bin/

Schritt 5:

Wir erstellen einen Benutzer für die Arbeit mit dem Katalog. In diesem Fall lautet der Benutzername 3proxyuser:

useradd -s /usr/sbin/nologin -U -M -r 3proxyuser

Wir erteilen dem erstellten Benutzer die Rechte zum Arbeiten mit Verzeichnissen:

chown -R 3proxyuser:3proxyuser /etc/3proxy
chown -R 3proxyuser:3proxyuser /var/log/3proxy
chown -R 3proxyuser:3proxyuser /usr/bin/3proxy

Erstellen wir nun eine Konfigurationsdatei mit dem folgenden Befehl:

touch /etc/3proxy/3proxy.cfg

Bei Bedarf können Sie die Berechtigungen für die Konfigurationsdatei für den Root-Benutzer festlegen. Dieser Schritt ist nicht zwingend erforderlich, bietet aber zusätzlichen Schutz.

chmod 600 /etc/3proxy/3proxy.cfg

3Proxy-Konfiguration

Schritt 6:

Es ist notwendig, die zuvor erstellte Konfigurationsdatei korrekt auszufüllen. Ermitteln Sie zunächst die UID und GID des Benutzers mit dem folgenden Befehl:

id 3proxyuser

In unserem Fall sind dies folgende Werte:

uid und gid

Zum Ausfüllen der Konfigurationsdatei können Sie vorgefertigte Konfigurationen verwenden oder die Dokumentation auf der offiziellen Website nutzen. Eine Beispieldatei ist bereits standardmäßig vorinstalliert; Sie finden sie unter folgendem Pfad: /cfg/3proxy.cfg.sample

Als Beispiel betrachten wir zwei Konfigurationstypen: mit und ohne Protokollierung . Jede Zeile wird von Kommentaren begleitet (diese sind mit dem Symbol „#“ gekennzeichnet).

Dies ist ein Beispiel für eine fertige Konfiguration ohne Protokollierung :

# We specify the user's data that we found out in the previous command
setgid 995
setuid 997

# Type the NS-servers. It is possible to clarify your own servers at /etc/resolv.conf
nserver 1.1.1.1
nserver 8.8.8.8

# Cache size
nscache 65536

# Timeouts
timeouts 1 5 30 60 180 1800 15 60

# Authorization of users by login/password (if required). You may not to use it or specify the path to the file in which authorization data is stored, for example, users $/etc/3proxy/.authfile

# If you insert a password in md5 format, replace “CL” with “CR”, as indicated in the example. You can use 2 methods at the same time.
auth cache strong
users "userproxy:CL:passwordproxy"
users "userproxy2:CR:b89097a7ad0b94f13b3c313ae76699d4 "

# Launch mode. Daemon only.
Daemon

# We write the port through which the http connection will take place. The example shows the standard one. To establish a socks connection, use the command specified in the second line, the port is also standard.
proxy -p3128			
socks -p1080

Wir haben die Option einer Konfigurationsdatei ohne Protokollierung erwogen. Nun erstellen wir eine Konfigurationsdatei mit Protokollierung und Benutzerauthentifizierung ; diese wird später bei der Servereinrichtung verwendet.

Stellen Sie sicher, dass Sie Autorisierungsinformationen angeben, da der Server auch über nicht standardmäßige Ports erkannt werden kann.

# Configuring the server to launch from the userproxy user and the passwordproxy password.
users userproxy:CL:passwordproxy

# Specify the user's uid and gid
setgid 995
setuid 997

# Nameservers (NS-servers)
nserver 1.1.1.1
nserver 8.8.8.8

# Timeouts
timeouts 1 5 30 60 180 1800 15 60

# Cache size (standard)
nscache 65536

# Indicate the launch mode
daemon

# We install http proxy on a non-standard 50001 port. If there are several IP addresses on the server, be sure to specify a specific address for connecting the network. For example, "-e91.150.32.146". The argument "i" is a local address.
proxy –p50001	

# In a same way as socks proxy, we conduct the installation on a 50002 port.
socks –p50002			

# Path to the directory with logs, logs format and proxy rotation
Log /var/log/3proxy/3proxy.log D	
logformat "- +_L%t.%. %N.%p %E %U %C:%c %R:%r %O %I %h %T"
rotate 30

Damit ist die Einrichtung der Hauptkonfigurationsdatei abgeschlossen. Wir fahren mit der letzten Phase und dem Start fort.

Schritt 7:

Erstellen Sie eine Initialisierungsdatei für systemd:

touch /etc/systemd/system/3proxy.service

Erteilen Sie die erforderlichen Rechte:

chmod 664 /etc/systemd/system/3proxy.service

Kopieren Sie die folgenden Werte, fügen Sie sie in die Datei ein und speichern Sie sie:

[Unit]
Description=3proxy Proxy Server
After=network.target
[Service]
Type=simple
ExecStart=/usr/bin/3proxy /etc/3proxy/3proxy.cfg
ExecStop=/bin/kill `/usr/bin/pgrep 3proxyuser`
RemainAfterExit=yes
Restart=on-failure
[Install]
WantedBy=multi-user.target»

Bitte beachten Sie: Im Feld „ExecStop“ muss der Benutzername angegeben werden, der in Schritt 5 erstellt wurde.

Danach müssen Sie die Daemon-Konfiguration mit dem folgenden Befehl aktualisieren:

systemctl daemon-reload

Schritt 8:

Wir müssen lediglich den konfigurierten 3proxy starten, ihn zum Autostart hinzufügen und auch Ports in der Firewall öffnen.

Zum Autostart hinzufügen, starten und Status prüfen:

systemctl enable 3proxy
systemctl start 3proxy
systemctl status 3proxy

Nach der Überprüfung des Status sehen wir die Information, dass 3proxy erfolgreich gestartet wurde:

Proxy läuft

Jetzt müssen nur noch die Ports geöffnet werden:

firewall-cmd --zone=public --add-port=50001/tcp
firewall-cmd --zone=public --add-port=50002/tcp
firewall-cmd –reload

Starten Sie den Server gegebenenfalls neu. Mit folgendem Befehl können Sie überprüfen, ob die Ports geöffnet sind:

firewall-cmd --list-all

Was sollte sein:

Öffnen Sie Firewall-Ports

Wie wir sehen können, wurden beide Ports erfolgreich geöffnet und werden abgehört. Die HTTP-Verbindung besteht über den ersten Port, die SOCKS-Verbindung über den zweiten Port.

Überprüfen Sie die Verbindung über einen beliebigen geeigneten Dienst:

Erfolgreiche 3proxy-Einrichtung

Alles funktioniert. Wir empfehlen jedoch dringend, keine ungesicherte Verbindung ohne Benutzername/Passwort-Authentifizierung und mit Standardports zu verwenden . Achten Sie beim Einrichten der Konfigurationsdatei darauf, einen Benutzernamen und ein sicheres Passwort festzulegen und die Ports auf nicht standardmäßige Ports zu ändern . In Ausnahmefällen ist die Authentifizierung per IP-Adresse möglich.

Allgemeine Probleme

Ist ein Fehler aufgetreten und der Proxy funktioniert nicht? Möglicherweise wurde die 3proxy-Konfiguration falsch durchgeführt. Wir betrachten die häufigsten Probleme und ihre Lösungen bei der Installation und Konfiguration des Dienstprogramms.

Keine Verbindung

Das häufigste Problem vieler Nutzer ist eine nicht erreichbare Verbindung, obwohl die Konfigurationsdateien scheinbar korrekt sind. Wenn Sie sicher sind, dass alle Einstellungen korrekt vorgenommen wurden, der Hosting-Anbieter den gewählten Port nicht beschränkt und alle Daten auf einen funktionierenden Dienst hinweisen, liegt das Problem möglicherweise an der Firewall, genauer gesagt an ihrer falschen Konfiguration. Beispielsweise können mehr als zwei Programme auf dem System installiert sein, die miteinander in Konflikt geraten. Um das Problem zu lösen, reicht es aus, eine bestimmte Firewall zu verwenden. Wir empfehlen Ihnen, nur iptables oder firewall-cmd auszuwählen.

Der Dienst startet nicht

Der Dienst startet nicht, nachdem alle erforderlichen Konfigurationsdateien eingerichtet wurden. Dies tritt auf, wenn ein Konfigurationsschritt ausgelassen, die entsprechenden Berechtigungen nicht erteilt oder ein kleiner Fehler in den Konfigurationsdateien enthalten ist. Wir empfehlen Ihnen, die Anweisungen Schritt für Schritt erneut sorgfältig durchzugehen, da Sie möglicherweise einen Schritt übersehen haben. Sollte dies nicht helfen, empfiehlt sich eine Neuinstallation des Betriebssystems und die Durchführung aller Schritte von vorn. Wir empfehlen, die Beispielkonfiguration unter /cfg/3proxy.cfg.sample als Testkonfiguration und die vorinstallierte Firewall-Befehlszeile als Firewall zu verwenden.

Protokollierung

Das letzte, aber nicht weniger wichtige Problem betrifft die Dateispeicherung. 3proxy benötigt während der Installation mehrere MB, die Größe kann sich jedoch im Laufe der Zeit nur durch die Protokollierung deutlich erhöhen. Viele Benutzer aktivieren zwar die Protokollierung in einer separaten Datei, richten aber keine Rotation ein und löschen keine irrelevanten Protokolle. Zur Lösung dieses Problems bieten sich drei Möglichkeiten an:

  1. Protokollierung aktivieren;
  2. Löschen Sie regelmäßig irrelevante Protokolle.
  3. Aktivieren Sie die Rotation, wie in der obigen Konfiguration beschrieben. Beispielsweise bedeutet „rotate 30“ in der Konfigurationsdatei, dass 3proxy nur die letzten 30 Dateien speichert.

Fazit

Die Installation und Konfiguration von 3proxy unter CentOS und ArchLinux ist relativ einfach und gleichzeitig effektiv. Der Artikel beschreibt die Schritte zur Installation der erforderlichen Pakete, zur Konfiguration der Konfigurationsdateien und zum Starten des Dienstes. Mit den gewonnenen Kenntnissen können Sie Ihren Proxyserver problemlos selbst installieren und konfigurieren.

❮ Vorheriger Artikel So setzen Sie das Windows-Passwort zurück
Nächster Artikel ❯ So vergrößern Sie die Festplattenpartition unter Windows

Fragen Sie uns nach VPS

Wir stehen Ihnen jederzeit und rund um die Uhr für Ihre Fragen zur Verfügung.