Xray: Unterschied zwischen den Versionen

Aus Foxwiki
Wechseln zu:Navigation, Suche
Zeile 21: Zeile 21:


== Funktion ==
== Funktion ==
; Was das Skript tut
[[Xray/Funktion]]
Beim Start stellt das Skript zwei vorbereitende Fragen, bevor es Änderungen vornimmt
 
{| class="table table-striped table-hover"
! # !! Frage !! Beschreibung
|-
| 1 || Sicherheitsprüfung || Es wird gefragt, ob Sie sich in einer sicheren Umgebung befinden (keine gemeinsam genutzten Bildschirme, Kameras oder Umstehende). Dies bestimmt, ob die Anmeldedaten während der Einrichtung angezeigt oder vollständig ausgeblendet werden.
|-
| 2 || Überschreibbestätigung || Warnt davor, dass vorhandene Xray-Konfigurationen, Firewall-Regeln und sysctl-Einstellungen überschrieben werden (Firewall-Regeln werden zuvor gesichert), und fordert Sie zur Bestätigung auf.
|}
 
----
 
=== Einrichtung ===
{| class="table table-striped table-hover"
! # !! Aufgabe !! Beschreibung
|-
| 1 || Distribution und Init-System erkennen, Pakete aktualisieren und Abhängigkeiten installieren ||
|-
| 2 || Installieren Sie die neueste Version von Xray-core (offizielles Skript für systemd, manuelle Installation unter OpenRC) ||
|-
| 3 || Wählen Sie einen benutzerdefinierten SSH-Port aus (OpenSSH oder Dropbear werden automatisch erkannt) ||
|-
| 4 || Wählen Sie einen benutzerdefinierten Xray-Eingangsport aus ||
|-
| 5 || Primären und sekundären DNS-Anbieter auswählen (DoH) ||
|-
| 6 || Wählen Sie Protokollierungseinstellungen (standardmäßig deaktiviert) ||
|-
| 7 || Wählen Sie die Einstellung BitTorrent-Blockierung (standardmäßig zugelassen) ||
|-
| 8 || UUID, x25519-Schlüsselpaar und Kurz-IDs generieren ||
|-
| 9 || Wählen Sie eine Tarnseite (mit TLS 1.3-Verifizierung) ||
|-
| 10 || Speichere die Serverkonfiguration unter <code>/usr/local/etc/xray/config.json</code>. ||
|-
| 11 || iptables-Firewall konfigurieren (Sicherung bestehender Regeln, atomisches Schreiben, SSH-Brute-Force-Schutz) ||
|-
| 12 || Wöchentliche Protokollrotation einrichten (wird übersprungen, wenn die Protokollierung deaktiviert ist) ||
|-
| 13 || BBR-Überlastungskontrolle und TCP-Optimierungen aktivieren ||
|-
| 14 || Xray-Service starten ||
|-
| 15 || Interaktive Zusammenfassung mit Anzeige der Anmeldedaten und Speicheroptionen ||
|}
 
----
 
=== Sicherer Modus vs. abgesicherter Modus ===
{| class="table table-striped table-hover"
! Verhalten
! Sicher (Antwort: Ja)
! Sicher (mit „N“ oder „Enter“ bestätigt)
|-
| Schritt 6: Anmeldedaten im Terminal
|Abgebildet
|Versteckt
|-
| Anmeldedaten anzeigen?
| Bei Abfrage lautet die Standardantwort '''Y'''
| Automatisch übersprungen
|-
| VLESS-Freigabelink anzeigen?
| Bei Abfrage lautet die Standardantwort '''Y'''
| Automatisch übersprungen
|-
| QR-Code anzeigen?
| Bei Abfrage lautet die Standardantwort '''Y'''
| Automatisch übersprungen
|-
| In Datei speichern?
| Abgefragt, Standardwert '''N'''
| Bei Abfrage: Standard '''Y''' (empfohlen)
|}
 
<blockquote>
Im abgesicherten Modus empfiehlt es sich, die Daten in der Datei <code>/root/xray-credentials.txt</code> zu speichern, um Ihre Anmeldedaten später aus einer privaten Sitzung abrufen zu können.
</blockquote>
 
----
 
=== Protokollierung ===
Das Skript fragt ab, ob der Xray-Zugriff und die Fehlerprotokolle aktiviert werden sollen. '''Standard: deaktiviert (N).'''
{| class="table table-striped table-hover"
!Auswahl
!Röntgenprotokoll-Pegel
!Protokolldateien
!Logrotate
!Datenschutz
|-
|Deaktiviert (Standard)
|<code>none</code>
|Keine erstellt
|Übersprungen
|Es wurden keine Verbindungsmetadaten gespeichert
|-
|Aktiviert
|<code>warning</code>
|<code>/var/log/xray/access.log</code>, <code>error.log</code>
|Wöchentlich, 12 Wochen Aufbewahrungsfrist
|Zeitstempel, IP-Adressen und Datenverkehrsvolumen wurden erfasst
|}
 
----
 
; Protokollierung wieder aktivieren
<code>/usr/local/etc/xray/config.json</code>
<syntaxhighlight lang="json" highlight="0" line copy>
"log": {
"loglevel": "warning",
"access": "/var/log/xray/access.log",
"error": "/var/log/xray/error.log"
}
</syntaxhighlight>
 
Erstellen Sie anschließend das Protokollverzeichnis und starten Sie den Dienst neu:
<syntaxhighlight lang="bash" highlight="1" line copy>
mkdir -p /var/log/xray && <Befehl zum Neustart>
</syntaxhighlight>
 
----
 
=== BitTorrent-Sperrung ===
Das Skript fragt ab, ob der Datenverkehr des BitTorrent-Protokolls blockiert werden soll
* Standard: zugelassen (N)
 
Wenn Sie Torrents über einen Proxy ausführen, kann dies dazu führen, dass die IP-Adresse Ihres VPS vom Hosting-Anbieter markiert oder gesperrt wird. Torrent-Datenverkehr erzeugt zudem Muster mit hohem Datenvolumen, die für Zensurbehörden leicht zu erkennen sind. Wenn Sie diesen Proxy ausschließlich zum Surfen im Internet nutzen, wird empfohlen, BitTorrent zu blockieren.
 
Wenn diese Option aktiviert ist, fügt Xray eine Routing-Regel hinzu, die alle Verbindungen über das BitTorrent-Protokoll blockiert
{
    "type": "field",
    "protocol": ["bittorrent"],
    "outboundTag": "block"
}
 
Um diese Einstellung später zu ändern, fügen Sie diese Regel zum Array <code>routing.rules</code> in der Datei <code>/usr/local/etc/xray/config.json</code> hinzu oder entfernen Sie sie daraus und starten Sie Xray neu.
 
----


== Installation ==
== Installation ==

Version vom 22. August 2026, 13:10 Uhr

Xray - Xray + VLESS + REALITY + XTLS-Vision auf Debian installieren


Beschreibung


Lizenz

Dieses Projekt unterliegt der MIT-Lizenz


Zensur-Sicherheit

Xray/Zensur-Sicherheit

Funktion

Xray/Funktion

Installation

Xray/Installation

DNS-Server

Xray/DNS

Client-Konfiguration

Xray/Client

Verwaltung

Benutzer hinzufügen

Jeder Benutzer benötigt eine eindeutige UUID

xray uuid

Fügen Sie dem Array clients in der Datei /usr/local/etc/xray/config.json Folgendes hinzu:

{
    "id": "NEW-UUID-HERE",
    "email": "user2@xray",
    "flow": "xtls-rprx-vision"
}

Starten Sie Xray anschließend mit dem für Ihr Init-System vorgesehenen Befehl neu (siehe „Verwaltungsbefehle“ weiter unten)


Befehle

Die Einrichtungszusammenfassung gibt Befehle aus, die auf das Init-System zugeschnitten sind

Übersicht
Aufgabe systemd (Debian/Ubuntu)
Xray status systemctl status xray
Xray neu starten systemctl restart xray
Live-Protokolle journalctl -u xray -f
Konfiguration bearbeiten nano /usr/local/etc/xray/config.json
Konfiguration überprüfen xray run -test -c /usr/local/etc/xray/config.json
Firewall anzeigen iptables -L -n --line-numbers
Firewall neu laden netfilter-persistent reload
Röntgenbild aktualisieren bash -c "$(curl -L https://github.com/XTLS/Xray-install/raw/main/install-release.sh)" @ install
QR-Code generieren qrencode -t ANSIUTF8 'YOUR_VLESS_LINK'

Sicherheit

Bewährte Verfahren
# Aspekt Beschreibung
1 Verwenden Sie einen nicht standardmäßigen SSH-Port das Skript bietet diese Option während der Einrichtung an
2 SSH-Passwortauthentifizierung deaktivieren ausschließlich schlüsselbasierte Authentifizierung verwenden (OpenSSH: PasswordAuthentication no in sshd_config; Dropbear: Option -s in /etc/conf.d/dropbear)
3 Führen Sie keine anderen Dienste auf dem Xray-Port aus
4 Verwenden Sie pro Client eindeutige „shortIds“ zur Identifizierung
5 Halten Sie Xray auf dem neuesten Stand Indem Sie den oben genannten Befehl „update“ verwenden
6 Blockieren Sie den BitTorrent-Datenverkehr wenn Sie den Proxy ausschließlich zum Surfen im Internet nutzen (diese Option wird im Skript während der Einrichtung angeboten)
7 Geben Sie Ihren privaten Schlüssel niemals weiter geben Sie gegenüber Kunden ausschließlich den öffentlichen Schlüssel weiter
8 Führen Sie das Skript im abgesicherten Modus aus wenn Sie sich an einem öffentlichen Ort befinden – die Anmeldedaten werden dann nicht auf dem Bildschirm angezeigt.
9 Protokollierung deaktiviert lassen (Standardeinstellung) für maximale Privatsphäre – es werden keine Verbindungsmetadaten gespeichert
10 Das Skript vor der Ausführung prüfen Sicherstellen, dass der Code sicher ist (siehe unten)

Sicherheitsprüfung

Bevor Sie ein Skript als Root auf Ihrem Server ausführen, sollten Sie sich vergewissern, dass es sicher ist. Wir stellen Ihnen einen umfassenden Leitfaden zur Sicherheitsüberprüfung unter SECURITY_AUDIT.md zur Verfügung.

Kurzanleitung:

  1. Lade xray-setup.sh in einen KI-Assistenten (Claude, ChatGPT, Gemini usw.) hoch.
  2. Verwenden Sie die Audit-Eingabeaufforderung aus SECURITY_AUDIT.md
  3. Überprüfen Sie den erstellten Sicherheitsbericht

Was bei der Prüfung überprüft wird:

  • Es werden keine Anmeldedaten an externe Server gesendet
  • Downloads ausschließlich aus offiziellen XTLS-Quellen
  • Keine Hintertüren, keine versteckten Benutzer und kein unbefugter Zugriff
  • Sichere Generierung von Anmeldeinformationen (UUID, x25519-Schlüssel)
  • Systemänderungen sind auf dokumentierte Pfade beschränkt

Zur manuellen Überprüfung:

# Check all network requests
grep -n "curl\|wget" xray-setup.sh

# Verify download URLs are official
grep -n "github.com/XTLS" xray-setup.sh

# Check for suspicious commands
grep -n "base64\|eval\|exec" xray-setup.sh

Fehlerbehebung

Problem Lösung
Xray lässt sich nicht starten xray run -test -c /usr/local/etc/xray/config.json
Verbindung abgelehnt iptables -L -n – Überprüfen Sie, ob Ihr Port offen ist
TLS-Handshake schlägt fehl xray tls ping <domain> — Camouflage-Website überprüfen
Niedrige Geschwindigkeit sysctl net.ipv4.tcp_congestion_control — sollte bbr anzeigen
Der Client kann keine Verbindung herstellen Stellen Sie sicher, dass UUID, publicKey, serverName und shortId übereinstimmen.
Aus SSH ausgesperrt Stellen Sie eine Verbindung über die VPS-Konsole her. OpenSSH: Überprüfen Sie /etc/ssh/sshd_config. Dropbear: Überprüfen Sie /etc/conf.d/dropbear
Alte Firewall wiederherstellen cp /etc/iptables/rules.v4.bak.TIMESTAMP /etc/iptables/rules.v4 && iptables-restore < /etc/iptables/rules.v4
Alpine: Xray lässt sich nicht starten Überprüfen Sie, ob /etc/init.d/xray vorhanden ist und ob es unter rc-update show aufgeführt wird.
Alpine: iptables wird beim Systemstart nicht geladen Überprüfen Sie, ob /etc/init.d/iptables-xray vorhanden ist und in rc-update show aufgeführt wird.
Alpine: qrencode nicht gefunden Stellen Sie sicher, dass das Community-Repo aktiviert ist: Überprüfen Sie /etc/apk/repositories

Speicherorte der Dateien

File Path
Xray binary /usr/local/bin/xray
Server config /usr/local/etc/xray/config.json
Access log /var/log/xray/access.log (if logging enabled)
Error log /var/log/xray/error.log (if logging enabled)
Log rotation /etc/logrotate.d/xray (if logging enabled)
Credentials backup /root/xray-credentials.txt (optional)
Firewall rules (v4) /etc/iptables/rules.v4
Firewall rules (v6) /etc/iptables/rules.v6
Firewall backup /etc/iptables/rules.v4.bak.* (timestamped)
Sysctl tuning /etc/sysctl.d/99-xray-optimize.conf
Xray init script /etc/init.d/xray (OpenRC only)
Firewall init script /etc/init.d/iptables-xray (OpenRC only)
Systemd unit /etc/systemd/system/xray.service (systemd only)
GeoIP database /usr/local/share/xray/geoip.dat
GeoSite database /usr/local/share/xray/geosite.dat
OpenSSH config /etc/ssh/sshd_config (if OpenSSH)
Dropbear config /etc/conf.d/dropbear (if Dropbear)

Aufruf

Optionen

Unix GNU Parameter Beschreibung

Parameter

Umgebungsvariablen

Exit-Status

Wert Beschreibung
0 Erfolg
>0 Fehler

Anwendung

Problembehebung

Konfiguration

Dateien

Datei Beschreibung


Anhang

Siehe auch


Dokumentation

Projekt

  1. https://github.com/0xevn/xray-reality-setup
  1. Xray-core GitHub
  2. Official REALITY example
  3. Project X Documentation
  4. VLESS protocol docs
  5. Transport/REALITY docs
  6. DNS.SB
  7. Mullvad DNS
  8. Quad9
  9. Cloudflare 1.1.1.1
  10. AdGuard DNS