Xray: Unterschied zwischen den Versionen

Aus Foxwiki
Wechseln zu:Navigation, Suche
 
(121 dazwischenliegende Versionen desselben Benutzers werden nicht angezeigt)
Zeile 1: Zeile 1:
'''Xray VLESS + REALITY + XTLS-Vision''' - Komplettpaket
<noinclude>
<!--
<!--
Back to top button
----
<button>
{{Navigation|<zurück>|<nachste>}}
        type="button"
{{Navigation|BSI/200-3|BSI/200-3/Einleitung/Beispiele}}
        class="btn btn-danger btn-floating btn-lg"
----
        id="btn-back-to-top"
        >
  <i class="fas fa-arrow-up"></i>
</button>
-->
 
<!-- Explanation -->
<!--
<div class="container mt-4 text-center" style="height: 2000px">
  <p>
    Start scrolling the page and a red
    <strong>"Back to top" button </strong> will appear in the
    <strong>bottom right corner</strong> of the screen.
  </p>
 
  <p>Click this button and you will be taken to the top of the page.</p>
</div>
-->
-->
'''Xray'''  - [[VLESS]] + [[REALITY]] + [[XTLS-Vision]] auf [[Debian]]
</noinclude>


== Beschreibung ==
== Beschreibung ==
Automatisiertes Installationsprogramm für Xray VLESS + REALITY + XTLS-Vision für Alpine sowie Debian/Ubuntu Linux. Interaktive Einrichtung mit SSH-Absicherung, Firewall-Konfiguration, BBR-Optimierung und datenschutzorientierten Standardeinstellungen
{| class="table table-striped table-hover"
 
| Zensur-Sicherheit || [[Xray/Zensur-Sicherheit]]
=== Spionage-Sicherheit ===
; Warum diese Konfiguration [[DPI]]-unabhängig ist
Diese Konfiguration nutzt den '''fortschrittlichsten Anti-Zensur-Stack''', der in Xray-core verfügbar ist
 
{| class="wikitable"
!Ebene
!Technologie
!Zweck
|-
|-
|Protokoll
| Lizenz || [[MIT-Lizenz]]
|'''[[VLESS]]'''
| Leichtgewichtig, kein erkennbares Verschlüsselungsmuster (im Gegensatz zu [[VMess]])
|-
|-
|TLS
| Funktion || [[Xray/Funktion]]
|'''[[REALITY]]'''
| Verwendet den [[TLS-Fingerabdruck]] einer echten Website – keine Zertifikate erforderlich, immun gegen aktive Erkundungsversuche
|-
|-
|Ablauf
| Installation || [[Xray/Installation]]
|'''[[XTLS-Vision]]'''
| Beseitigt Fingerabdrücke durch doppelte Verschlüsselung und fügt zufällige Auffülldaten zu den internen Handshakes hinzu
|-
|-
| Fingerabdruck
| DNS-Server || [[Xray/DNS]]
|'''[[uTLS]] (Chrome)'''
| Der Client ahmt das „TLS ClientHello“ eines echten Chrome-Browsers nach
|-
|-
|Transport
| Client-Konfiguration || [[Xray/Client]]
|'''[[TCP]]'''
| Am natürlichsten, vermeidet den Overhead und die Muster von [[WebSocket]]/[[gRPC]]
|-
|-
|DNS
| Verwaltung || [[Xray/Verwaltung]]
|'''DNS.SB + Mullvad'''
| [[DoH-Anbieter]] außerhalb der „Five Eyes“-Allianz, die keine Protokolle führen; keine Speicherung personenbezogener Daten
|}
 
; Funktionsweise von [[REALITY]]
* Wenn eine Zensurinstanz Ihren Server abfragt, leitet Xray die Anfrage an die echte Tarn-Website weiter (z. B. <code>www.microsoft.com</code>).
* Die Zensurinstanz erhält eine legitime Antwort von Microsoft – die von einem echten Besuch nicht zu unterscheiden ist.
 
----
 
=== Lizenz ===
Dieses Projekt unterliegt der MIT-Lizenz.
----
 
== Schnellstart ==
On a fresh VPS (Debian/Ubuntu or Alpine Linux)
 
; Install git if not present:
apt install git (Debian/Ubuntu) or apk add git (Alpine)
git clone <nowiki>https://github.com/0xevn/xray-reality-setup.git</nowiki>
cd xray-reality-setup
; Run as root
Use su/doas/sudo to get a root shell first
chmod +x xray-setup.sh
sh xray-setup.sh
 
<blockquote>
The script starts with <code>#!/bin/sh</code> and auto-installs <code>bash</code> if missing (e.g., on Alpine), then re-executes itself in bash. Bash is required for arrays, regex matching, and other features used throughout the script.
</blockquote>
 
=== Supported Distributions ===
{| class="wikitable"
!Distro
!Package Manager
!Init System
!Tested
|-
|-
|Debian / Ubuntu
| Sicherheit || [[Xray/Sicherheit]]
|apt
|systemd
|✔
|-
|-
|Alpine Linux
| Fehlerbehebung || [[Xray/Fehlerbehebung]]
|apk
|OpenRC
|✔
|}
The script auto-detects your distro, init system, and package manager, then adapts accordingly.<blockquote>'''Installationsverfahren:''' Auf systemd-basierten Distributionen (Debian/Ubuntu) wird Xray über das offizielle Installationsskript installiert. Unter Alpine (OpenRC) lässt sich das offizielle Skript nicht ausführen, daher lädt das Setup die Xray-Binärdatei direkt aus den GitHub-Releases herunter, installiert die Geodaten-Dateien und erstellt ein OpenRC-kompatibles Init-Skript.</blockquote>
----
 
== Was das Skript tut ==
Beim Start stellt das Skript zwei vorbereitende Fragen, bevor es Änderungen vornimmt:
 
# '''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.
# '''Ü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.
 
=== Ablauf ===
Dann geht die Einrichtung wie folgt weiter
# Distribution und Init-System erkennen, Pakete aktualisieren und Abhängigkeiten installieren
# Installieren Sie die neueste Version von Xray-core (offizielles Skript für systemd, manuelle Installation unter OpenRC)
# Wählen Sie einen benutzerdefinierten SSH-Port aus (OpenSSH oder Dropbear werden automatisch erkannt)
# Wählen Sie einen benutzerdefinierten Xray-Eingangsport aus
# Primären und sekundären DNS-Anbieter auswählen (DoH)
# Wählen Sie Protokollierungseinstellungen (standardmäßig deaktiviert)
# Wählen Sie die Einstellung BitTorrent-Blockierung (standardmäßig zugelassen)
# UUID, x25519-Schlüsselpaar und Kurz-IDs generieren
# Wählen Sie eine Tarnseite (mit TLS 1.3-Verifizierung)
# Speichere die Serverkonfiguration unter <code>/usr/local/etc/xray/config.json</code>.
# iptables-Firewall konfigurieren (Sicherung bestehender Regeln, atomisches Schreiben, SSH-Brute-Force-Schutz)
# Wöchentliche Protokollrotation einrichten (wird übersprungen, wenn die Protokollierung deaktiviert ist)
# BBR-Überlastungskontrolle und TCP-Optimierungen aktivieren
# Röntgendienst starten
# Interaktive Zusammenfassung mit Anzeige der Anmeldedaten und Speicheroptionen
 
=== Sicherer Modus vs. abgesicherter Modus ===
{| class="wikitable"
!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?
| Konfiguration || [[Xray/Konfiguration]]
|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="wikitable"
!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
|}
Um die Protokollierung später wieder zu aktivieren, bearbeiten Sie die Datei <code>/usr/local/etc/xray/config.json</code>:
"log": {
    "loglevel": "warning",
    "access": "/var/log/xray/access.log",
    "error": "/var/log/xray/error.log"
}
Erstellen Sie anschließend das Protokollverzeichnis und starten Sie den Dienst neu: <code>mkdir -p /var/log/xray && <Befehl zum Neustart></code>


=== 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.
<noinclude>
 
<!--
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.
----
----
 
{{Navigation|<zurück>|<nachste>}}
== DNS-Server ==
Bei der Einrichtung wählen Sie aus dieser Liste einen primären und einen sekundären DNS-over-HTTPS-Anbieter aus:
{| class="wikitable"
!#
!Anbieter
!Gerichtsbarkeit
!Protokollierung
!DoH URL
|-
|1
|'''DNS.SB'''
|Deutschland
|Keine Protokollierung
|<code>doh.dns.sb/dns-query</code>
|-
|2
|'''Maulwurf DNS'''
|Schweden
|Keine Protokolle, geprüft
|<code>dns.mullvad.net/dns-query</code>
|-
|3
|'''Quad9'''
|Schweiz
|Keine IP-Protokollierung, Blockierung von Bedrohungen
|<code>dns.quad9.net/dns-query</code>
|-
|4
|'''Quad9 Ungefiltert'''
|Schweiz
|Keine IP-Protokollierung, keine Filterung
|<code>dns11.quad9.net/dns-query</code>
|-
|5
|'''Cloudflare'''
|USA
|Protokolle vor 24 Stunden gelöscht, von KPMG geprüft
|<code>1.1.1.1/dns-query</code>
|-
|6
|'''AdGuard DNS'''
|Zypern
|Aggregierte anonyme Statistiken, Werbeblocker
|<code>dns.adguard-dns.com/dns-query</code>
|}
Standardeinstellungen: DNS.SB (primär) + Mullvad (sekundär). Ein <code>localhost</code>-Fallback wird immer angehängt.
----
----
-->


== Client-Konfiguration ==
== Anhang ==
 
=== Siehe auch ===
=== Option A: QR-Code (am schnellsten auf Mobilgeräten) ===
<div style="column-count:2">
Wählen Sie während der Einrichtung (im sicheren Modus) die Option „QR-Code anzeigen“ und scannen Sie diesen direkt mit der Client-App auf Ihrem Smartphone. Alle Verbindungsdaten sind im QR-Code enthalten.
<categorytree hideroot=on mode="pages">xray</categorytree>
 
</div>
So generieren Sie einen QR-Code zu einem späteren Zeitpunkt neu:
qrencode -t ANSIUTF8 'vless://UUID@IP:PORT?type=tcp&security=reality&...'
Oder falls Sie die Anmeldedaten in einer Datei gespeichert haben:
qrencode -t ANSIUTF8 "$(grep -A1 'VLESS Share' /root/xray-credentials.txt | tail -1)"
 
=== Option B: Link teilen ===
Das Einrichtungsskript generiert einen <code>vless://</code>-Link. Fügen Sie diesen in einen beliebigen kompatiblen Client ein:
{| class="wikitable"
!Plattform
!Empfohlene App
|-
|Android
|[[V2rayNG]], v2rayNG, NekoBox, Hiddify
|-
|iOS
|Streisand, V2Box, FoXray
|-
|Windows
|v2rayN, Hiddify, NekoRay
|-
|macOS
|V2Box, FoXray, NekoRay
|-
|Linux
|[[NekoRay]], NekoRay, v2rayA, Hiddify
|}
 
=== Option C: Manuelle Client-Konfiguration ===
Verwenden Sie diese Vorlage in Ihrem Client und ersetzen Sie dabei alle <code><...></code>-Werte durch die Ausgabe des Setup-Skripts:
{
    "log": {
        "loglevel": "warning"
    },
    "dns": {
        "servers": [
            {
                "address": "<nowiki>https://doh.dns.sb/dns-query</nowiki>",
                "domains": ["geosite:geolocation-!cn"]
            },
            "localhost"
        ],
        "queryStrategy": "UseIP"
    },
    "routing": {
        "domainStrategy": "IPIfNonMatch",
        "rules": [
            {
                "type": "field",
                "domain": ["geosite:category-ads-all"],
                "outboundTag": "block"
            },
            {
                "type": "field",
                "ip": ["geoip:private"],
                "outboundTag": "direct"
            }
        ]
    },
    "inbounds": [
        {
            "tag": "socks-in",
            "listen": "127.0.0.1",
            "port": 10808,
            "protocol": "socks",
            "settings": { "udp": true }
        },
        {
            "tag": "http-in",
            "listen": "127.0.0.1",
            "port": 10809,
            "protocol": "http"
        }
    ],
    "outbounds": [
        {
            "tag": "proxy",
            "protocol": "vless",
            "settings": {
                "vnext": [
                    {
                        "address": "<SERVER_IP>",
                        "port": <XRAY_PORT>,
                        "users": [
                            {
                                "id": "<UUID>",
                                "encryption": "none",
                                "flow": "xtls-rprx-vision"
                            }
                        ]
                    }
                ]
            },
            "streamSettings": {
                "network": "tcp",
                "security": "reality",
                "realitySettings": {
                    "fingerprint": "chrome",
                    "serverName": "<DEST_DOMAIN>",
                    "publicKey": "<PUBLIC_KEY>",
                    "shortId": "<SHORT_ID>",
                    "spiderX": "/"
                }
            }
        },
        { "tag": "direct", "protocol": "freedom" },
        { "tag": "block", "protocol": "blackhole" }
    ]
}
Kundenspezifische Einstellungen:
 
* '''Fingerabdruck''': <code>chrome</code> (recommended), <code>firefox</code>, <code>safari</code>, <code>random</code>
* '''spiderX''': <code>/</code> or any path — used for web crawling differentiation per client
 
----
----
{{Special:PrefixIndex/{{BASEPAGENAME}}/}}


== Weitere Benutzer hinzufügen ==
=== Dokumentation ===
Jeder Benutzer benötigt eine eindeutige UUID:
<!--
xray uuid
; Man-Page
Fügen Sie dem Array <code>clients</code> in der Datei <code>/usr/local/etc/xray/config.json</code> Folgendes hinzu:
# [https://manpages.debian.org/stable/procps/pgrep.1.de.html prep(1)]
{
    "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).
----


== Verwaltung ==
; Info-Pages
; Befehle
Die Einrichtungszusammenfassung gibt Befehle aus, die auf das Init-System zugeschnitten sind


; Übersicht
; Hinweise
{| class="wikitable"
<div class="card h-100 bg-warning">
!Aufgabe
<div class="card-header">'''<big>Header</big>'''</div>
!systemd (Debian/Ubuntu)
<div class="card-body bg-white">
!OpenRC (Alpine)
Hier steht der Kartentext
|-
</div>
|Xray status
</div>
|<code>systemctl status xray</code>
-->
|<code>rc-service xray status</code>
|-
|Xray neu starten
|<code>systemctl restart xray</code>
|<code>rc-service xray restart</code>
|-
|Live-Protokolle
|<code>journalctl -u xray -f</code>
|<code>tail -f /var/log/xray/error.log</code>
|-
|Konfiguration bearbeiten
|<code>nano /usr/local/etc/xray/config.json</code>
|← dasselbe
|-
|Konfiguration überprüfen
|<code>xray run -test -c /usr/local/etc/xray/config.json</code>
|← dasselbe
|-
|Firewall anzeigen
|<code>iptables -L -n --line-numbers</code>
|← dasselbe
|-
|Firewall neu laden
|<code>netfilter-persistent reload</code>
|<code>rc-service iptables-xray restart</code>
|-
|Röntgenbild aktualisieren
|<code>bash -c "$(curl -L <nowiki>https://github.com/XTLS/Xray-install/raw/main/install-release.sh</nowiki>)" @ install</code>
|Führen Sie <code>sh xray-setup.sh</code> erneut aus.
|-
|QR-Code generieren
|<code>qrencode -t ANSIUTF8 'YOUR_VLESS_LINK'</code>
|← dasselbe
|}
----
 
== Bewährte Verfahren im Bereich Sicherheit ==
 
# '''Verwenden Sie einen nicht standardmäßigen SSH-Port'''
#: das Skript bietet diese Option während der Einrichtung an
# '''SSH-Passwortauthentifizierung deaktivieren'''
#: ausschließlich schlüsselbasierte Authentifizierung verwenden (OpenSSH: <code>PasswordAuthentication no</code> in <code>sshd_config</code>; Dropbear: Option <code>-s</code> in <code>/etc/conf.d/dropbear</code>)
# '''Führen Sie keine anderen Dienste''' auf dem Xray-Port aus
# '''Verwenden Sie pro Client eindeutige „shortIds“ zur Identifizierung'''
# '''Halten Sie Xray auf dem neuesten Stand'''
#:Indem Sie den oben genannten Befehl „update“ verwenden
# '''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)
# '''Geben Sie Ihren privaten Schlüssel niemals weiter'''
#: geben Sie gegenüber Kunden ausschließlich den öffentlichen Schlüssel weiter
# '''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.
# '''Protokollierung deaktiviert lassen''' (Standardeinstellung)
#:für maximale Privatsphäre – es werden keine Verbindungsmetadaten gespeichert
# '''Das Skript vor der Ausführung prüfen'''
#: Sicherstellen, dass der Code sicher ist (siehe unten)
 
----


== Sicherheitsprüfung ==
=== Links ===
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 <code>SECURITY_AUDIT.md</code> zur Verfügung.
==== Projekt ====
# https://github.com/0xevn/xray-reality-setup


'''Kurzanleitung:'''
==== Weblinks ====
 
# Lade <code>xray-setup.sh</code> in einen KI-Assistenten (Claude, ChatGPT, Gemini usw.) hoch.
# Verwenden Sie die Audit-Eingabeaufforderung aus <code>SECURITY_AUDIT.md</code>
# Ü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 ==
{| class="wikitable"
!Problem
!Lösung
|-
|Xray lässt sich nicht starten
|<code>xray run -test -c /usr/local/etc/xray/config.json</code>
|-
|Verbindung abgelehnt
|<code>iptables -L -n</code> – Überprüfen Sie, ob Ihr Port offen ist
|-
|TLS-Handshake schlägt fehl
|<code>xray tls ping <domain></code> — Camouflage-Website überprüfen
|-
|Niedrige Geschwindigkeit
|<code>sysctl net.ipv4.tcp_congestion_control</code> — sollte <code>bbr</code> 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 <code>/etc/ssh/sshd_config</code>. Dropbear: Überprüfen Sie <code>/etc/conf.d/dropbear</code>
|-
|Alte Firewall wiederherstellen
|<code>cp /etc/iptables/rules.v4.bak.TIMESTAMP /etc/iptables/rules.v4 && iptables-restore < /etc/iptables/rules.v4</code>
|-
|Alpine: Xray lässt sich nicht starten
|Überprüfen Sie, ob <code>/etc/init.d/xray</code> vorhanden ist und ob es unter <code>rc-update show</code> aufgeführt wird.
|-
|Alpine: iptables wird beim Systemstart nicht geladen
|Überprüfen Sie, ob <code>/etc/init.d/iptables-xray</code> vorhanden ist und in <code>rc-update show</code> aufgeführt wird.
|-
|Alpine: <code>qrencode</code> nicht gefunden
|Stellen Sie sicher, dass das Community-Repo aktiviert ist: Überprüfen Sie <code>/etc/apk/repositories</code>
|}
----
 
== Speicherorte der Dateien ==
{| class="wikitable"
!File
!Path
|-
|Xray binary
|<code>/usr/local/bin/xray</code>
|-
|Server config
|<code>/usr/local/etc/xray/config.json</code>
|-
|Access log
|<code>/var/log/xray/access.log</code> (if logging enabled)
|-
|Error log
|<code>/var/log/xray/error.log</code> (if logging enabled)
|-
|Log rotation
|<code>/etc/logrotate.d/xray</code> (if logging enabled)
|-
|Credentials backup
|<code>/root/xray-credentials.txt</code> (optional)
|-
|Firewall rules (v4)
|<code>/etc/iptables/rules.v4</code>
|-
|Firewall rules (v6)
|<code>/etc/iptables/rules.v6</code>
|-
|Firewall backup
|<code>/etc/iptables/rules.v4.bak.*</code> (timestamped)
|-
|Sysctl tuning
|<code>/etc/sysctl.d/99-xray-optimize.conf</code>
|-
|Xray init script
|<code>/etc/init.d/xray</code> (OpenRC only)
|-
|Firewall init script
|<code>/etc/init.d/iptables-xray</code> (OpenRC only)
|-
|Systemd unit
|<code>/etc/systemd/system/xray.service</code> (systemd only)
|-
|GeoIP database
|<code>/usr/local/share/xray/geoip.dat</code>
|-
|GeoSite database
|<code>/usr/local/share/xray/geosite.dat</code>
|-
|OpenSSH config
|<code>/etc/ssh/sshd_config</code> (if OpenSSH)
|-
|Dropbear config
|<code>/etc/conf.d/dropbear</code> (if Dropbear)
|}
----
 
== Anmerkungen zu Alpine Linux ==
Alpine erfordert einige Anpassungen, die das Skript automatisch vornimmt:
 
* '''Bash''': Standardmäßig nicht installiert – das POSIX-Shell-Bootstrap-Skript des Skripts installiert es und wird anschließend erneut in Bash ausgeführt.
* '''QR-Codes''': Das Paket heißt <code>libqrencode-tools</code> (nicht <code>qrencode</code>) und erfordert das <code>Community-Repository</code> – dieses wird automatisch aktiviert, falls es fehlt.
* '''Xray-Installation''': Das offizielle Installationsskript akzeptiert keine Nicht-Systemd-Versionen – die Binärdatei wird direkt von den GitHub-Releases heruntergeladen
* '''Startskripte''': Der Pfad zu OpenRC <code>openrc-run</code> variiert je nach Alpine-Version (<code>/sbin/</code> oder <code>/usr/sbin/</code>) – wird automatisch erkannt
* '''Firewall-Persistenz''': Der benutzerdefinierte OpenRC-Dienst <code>/etc/init.d/iptables-xray</code> stellt die Regeln beim Systemstart wieder her
* '''Logrotate''': Cron-Job unter <code>/etc/periodic/daily/</code> angelegt, da Alpine „periodic cron“ und keine systemd-Timer verwendet
* '''SSH-Daemon''': Erkennt OpenSSH oder Dropbear automatisch – die Port-Erkennung und -Konfiguration funktioniert bei beiden. Der Dropbear-Port wird über das Flag <code>-p</code> in <code>/etc/conf.d/dropbear</code> verwaltet.
* '''Erkennung des SSH-Ports''': OpenSSH liest aus der Datei <code>sshd_config</code>; Dropbear wertet <code>DROPBEAR_OPTS</code> in <code>/etc/conf.d/dropbear</code> aus (BusyBox <code>ss</code> unterstützt das Flag <code>-p</code> für Prozessnamen nicht)
* '''Kein <code>sudo</code>''': Alpine wird ohne <code>sudo</code> ausgeliefert – führen Sie das Skript direkt als Root aus (<code>su</code>, <code>doas</code> oder Root-Anmeldung)
 
----
 
== Literaturverzeichnis ==
# [https://github.com/XTLS/Xray-core Xray-core GitHub]
# [https://github.com/XTLS/Xray-core Xray-core GitHub]
# [https://github.com/XTLS/Xray-examples/tree/main/VLESS-TCP-XTLS-Vision-REALITY Official REALITY example]
# [https://github.com/XTLS/Xray-examples/tree/main/VLESS-TCP-XTLS-Vision-REALITY Official REALITY example]
Zeile 604: Zeile 81:
# [https://adguard-dns.io/ AdGuard DNS]
# [https://adguard-dns.io/ AdGuard DNS]


<!--
{{DEFAULTSORT:new}}
{{DISPLAYTITLE:new}}
-->


----
[[Kategorie:Xray]]


== Links ==
</noinclude>
https://github.com/0xevn/xray-reality-setup

Aktuelle Version vom 25. August 2026, 12:44 Uhr