Vidensdatabase Enkle instruktioner til at arbejde med Profitserver-tjenesten
Main Vidensdatabase Xray VLESS Reality Guide: VPS, Windows, Mac, Android, iPhone

Xray VLESS Reality Guide: VPS, Windows, Mac, Android, iPhone


Denne Xray VLESS Reality serveropsætningsvejledning gennemgår implementeringen af ​​en moderne proxy på din VPS. VLESS med Reality transport-security layer er i øjeblikket den mest efterspurgte selvhostede proxyopsætning. VLESS med Reality transport-security layer er i øjeblikket den mest efterspurgte selvhostede proxyopsætning: I modsætning til en klassisk VPN producerer den ikke et karakteristisk handshake eller en fast pakkesignatur. Reality kloner TLS 1.3-handshaket fra et rigtigt, populært websted (målet), så for et DPI-system, der holder øje med ledningen, ser en forbindelse til din server identisk ud med, at nogen besøger det websted - der er intet falsk eller selvsigneret certifikat til fingeraftryk, fordi din server kortvarigt videresender det faktiske certifikat for målwebstedet under handshaket.

Protokolstakken er: VLESS (en let, statsløs proxyprotokol, der håndterer godkendelse), der kører over XTLS Vision (en flowkontroltilstand, der fremskynder forbindelsen ved at kopiere allerede krypterede TLS-poster på rå socketniveau) sikret af Reality (camouflagelaget beskrevet ovenfor). Alle tre kommer fra det samme projekt, Xray-core, den aktivt vedligeholdte efterfølger til det originale V2Ray/V2Fly-projekt.

Denne guide konfigurerer en Xray-server manuelt, udelukkende fra kommandolinjen, uden webpanel og uden Docker – det mindst mulige fodaftryk på VPS'en. Der kræves intet domænenavn og intet køb af TLS-certifikat: Reality låner målwebstedets certifikat til handshake og præsenterer aldrig sit eget. Dernæst, hvor der står your_IP, skal du indtaste din tildelte IP-adresse.

Det skal du bruge: en VPS, der kører Ubuntu 22.04/24.04 eller Debian 11/12, root-adgang, din VPS' IP-adresse og en ledig TCP-port 443 (ingen webserver, panel eller anden proxy, der allerede lytter på den).

Har du endnu ikke en server? Se Sådan bestiller og betaler du for en server.

Sammenligner du dette med andre selvhostede muligheder først? Se AmneziaWG Server Deployment Guide for et WireGuard-baseret alternativ, eller Hysteria2 og TUIC-opsætning for to andre moderne, censurbestandige protokoller.

Forbinder til serveren

Windows (PuTTY)

Åbn PuTTY, indtast din VPS IP-adresse i feltet Værtsnavn, indstil porten til 22, og log ind som root med den adgangskode, som din VPS-udbyder sendte dig via e-mail.

Server IP-adresse: din IP-adresse
log ind som: root
Adgangskode: din adgangskode

  • Åbn PuTTY, og indtast din VPS IP-adresse i feltet Værtsnavn.
1_1
  • Sæt porten til 22.
2_1
  • Indtast log ind som root.
3_1
  • Brug den adgangskode, som din VPS-udbyder sendte dig via e-mail. Du burde derefter lande på serverens shell-prompt.
4

For en detaljeret gennemgang af forbindelse via PuTTY/SSH, se Sådan opretter du forbindelse til en Linux-server via SSH.

5

Linux / macOS (terminal)

ssh root@your_IP

Alle kommandoer nedenfor køres på serveren i den samme SSH-session – som dækker afsnit 2 til 6, plus server-side kontrollerne i afsnit 10. Afsnit 7-9 (installation og konfiguration af VPN-klienten) foregår i stedet på din egen Windows/Android/iOS-enhed, da det er den enhed, proxyen skal køre på; hvert af disse afsnit angiver eksplicit, hvilke linjer, hvis nogen, der stadig berører serveren.

Klargøring af serveren

Opdater systemet

Før du installerer noget, skal du opdatere pakkelisten og opgradere installerede pakker:

apt update -y && apt upgrade -y
6 7 8 9

Hvis sessionen afbrydes efter apt-opgradering, er dette forventeligt (dbus/polkit genstartet) - genoptag blot forbindelsen via SSH. 

Hvis dette opgraderer kernen, er en genstart en god idé, før du fortsætter. (For en genopfriskning af apt og hvordan Linux-pakkehåndteringer fungerer, se Linux-pakkehåndteringer .) Tjek med:

cat /var/run/reboot-required

Hvis filen findes, genstart først med 'reboot', vent ~30 sekunder, og genopret derefter forbindelsen.

Installer de værktøjer, som denne vejledning bruger

apt install -y curl wget unzip openssl ufw qrencode

Krølle og udpakke skal bruges af selve Xray-installationsprogrammet; openssl genererer det korte ID i afsnit 4; ufw er den firewall, der er konfigureret nedenfor; qrencode omdanner det færdige klientlink til en QR-kode, der kan scannes, i afsnit 7.

10_1

Tjek systemuret

Realitys handshake inkluderer en tidsstempelkontrol (feltet maxTimeDiff, som standard er deaktiveret, men værd at være opmærksom på), og et ur, der har ændret sig mærkbart, kan også få almindelig TLS-certifikatvalidering til at opføre sig forkert andre steder på serveren. Bekræft, at uret er synkroniseret:

timedatectl status
11_1

Hvis "Systemur synkroniseret" viser "nej", skal du aktivere det med:

timedatectl set-ntp true

Konfigurer firewallen (UFW)

For mere information om UFW-regler, se Konfiguration af firewall på Linux.

Åbn de to porte, du skal bruge: 22/tcp til SSH (spring denne regel over, og du risikerer at miste adgang til serveren) og 443/tcp. Porten, som Xray lytter på, er den samme port, som almindelig HTTPS-trafik bruger – hvilket netop er grunden til, at det er det rigtige valg til Reality.

ufw allow 22/tcp
12_1
ufw allow 443/tcp
13_1
ufw --force enable
14_1
ufw status
15_1

Begge regler bør vises som ALLOW i ufw-statusoutputtet.

Installation af Xray-core til VLESS Reality Server

Xray-core-projektet (XTLS) udgiver et officielt installations- og opgraderingsscript, der installerer den binære fil som en systemd-tjeneste. Gennemgå ethvert tredjepartsscript, før du sender det til bash — dette kommer direkte fra projektets eget repository.

bash -c "$(curl -L https://github.com/XTLS/Xray-install/raw/main/install-release.sh)" @ install
16_1

Bekræft, at den binære fil er på plads, og tjek den installerede version:

/usr/local/bin/xray version
17_1

Hvis kommandoens output er pagineret og ser ud til at hænge, ​​skal du trykke på Q for at afslutte. Xray-binærfilen er installeret for at /usr/local/bin/xray, og dens konfigurationsfiler er gemt i /usr/local/etc/xray/.

Du kan også bruge det samme installationsskript til at opgradere en eksisterende installation. For en komplet liste over muligheder (herunder fjernelse, opdateringer kun af geodata og logrotation), kør:

bash -c "$(curl -L https://github.com/XTLS/Xray-install/raw/main/install-release.sh)" --help

Generering af nøgler og legitimationsoplysninger

Realitetsautentificering hviler på fire dataelementer. Generer dem alle nu; du skal indsætte dem i serverkonfigurationen i afsnit 5.

Generer et UUID til klienten

/usr/local/bin/xray uuid
18_1

Dette er VLESS-bruger-ID'et – behandl det som legitimationsoplysninger, da det er det, der godkender en klient til serveren. Kør kommandoen igen for hver yderligere enhed eller person, du vil give adgang til.

Generer nøgleparret Reality X25519

/usr/local/bin/xray x25519
19_1

Dette udskriver tre linjer: PrivateKey , Password og Hash32 . PrivateKey indgår kun i serverkonfigurationen og må aldrig deles. Password er den tilsvarende offentlige nøgle – på trods af navnet er dette den værdi, som hver klient indtaster; Xray omdøbte feltet fra PublicKey til Password specifikt for at afskrække folk fra at udgive det uforsigtigt. Hash32 bruges kun til den separate VLESS-krypteringsfunktion og er ikke nødvendig til en Reality-opsætning.

Generer et kort ID

openssl rand -hex 8
20_1

Dette producerer en hexadecimal streng på 16 tegn, der bruges til at skelne forskellige klienter eller klientgrupper fra hinanden. Både server og klient skal bruge den samme værdi.

Vælg og test et reality-mål

Målet er det rigtige websted, hvis TLS-handshake din server imiterer. Det skal understøtte TLS 1.3 og HTTP/2, må ikke være placeret bag et CDN som Cloudflare (Xray videresender al trafik, der ikke klarer Reality-godkendelse, direkte til målet, så et CDN-baseret mål kan gøre din server til et åbent relæ for det pågældende CDN), og ideelt set være hosted i omtrent samme netværksregion som din VPS for at få en plausibel latensprofil. Test en kandidat direkte fra serveren:

/usr/local/bin/xray tls ping www.microsoft.com:443
21_1

Brug det rene værtsnavn, ikke en URL. En håndfuld domæner, der almindeligvis bruges som Reality-mål, fordi de er stabile, TLS 1.3-kompatible og ikke CDN-frontede: www.microsoft.com, addons.mozilla.org, dl.google.com. Test et par stykker, og vælg et, der reagerer pålideligt fra din VPS' placering; du bruger det samme værtsnavn som både målet og serverNames-posten i afsnit 5.

Skrivning af serverkonfigurationen

Sikkerhedskopier den konfiguration, som installationsprogrammet leverede med, og åbn derefter filen for redigering:

cp /usr/local/etc/xray/config.json /usr/local/etc/xray/config.json.orig
nano /usr/local/etc/xray/config.json
23_1

Åbn konfigurationsfilen til redigering:

nano /usr/local/etc/xray/config.json
24_1

Erstat hele filen med skabelonen nedenfor, og brug din egen UUID, PrivateKey, short-ID og målværtsnavn fra afsnit 4 (og den port, du åbnede i afsnit 2, hvis du ændrede den fra 443):

{
  "log": {
    "loglevel": "warning"
  },
  "inbounds": [
    {
      "listen": "0.0.0.0",
      "port": 443,
      "protocol": "vless",
      "settings": {
        "users": [
          {
            "id": "YOUR-UUID-HERE",
            "flow": "xtls-rprx-vision",
            "email": "client1"
          }
        ],
        "decryption": "none"
      },
      "streamSettings": {
        "method": "raw",
        "security": "reality",
        "realitySettings": {
          "show": false,
          "target": "www.microsoft.com:443",
          "serverNames": ["www.microsoft.com"],
          "privateKey": "YOUR-SERVER-PRIVATE-KEY",
          "shortIds": ["YOUR-SHORT-ID"]
        }
      }
    }
  ],
  "outbounds": [
    { "protocol": "freedom", "tag": "direct" },
    { "protocol": "blackhole", "tag": "blocked" }
  ]
}

Tryk Ctrl+O (WriteOut) for at gemme filen.

Tryk på Enter for at bekræfte filnavnet.

Tryk Ctrl+X for at afslutte nano.

De vigtige felter: users[].id er UUID'et fra afsnit 4; users[].flow aktiverer XTLS Vision; method (tidligere kaldet network) vælger RAW-transporten, den almindelige TCP-baserede metode, som Reality kræver; target og serverNames er det websted, du testede i afsnit 4; privateKey er server-side X25519-nøglen, aldrig Password-værdien; shortIds viser alle korte ID'er, som klienter har tilladelse til at præsentere. For at tilføje flere brugere senere skal du tilføje yderligere objekter til users-arrayet, hver med sin egen UUID og e-mail-etiket, og derefter genstarte tjenesten.

Siden Xray 26.3.27 har en indgående Reality-applikation uden et eksplicit minClientVer-felt håndhævet en standardværdi for serverens egen kerneversion — ældre klientapps (en forældet v2rayN-, v2rayNG- eller Streisand-build, der indeholder en ældre Xray-kerne) omdirigeres lydløst til målets fallback-side i stedet for at oprette forbindelse, uden fejl i klienten og uden noget åbenlyst galt i serverloggen. Hvis en klient, der plejede at virke, pludselig får timeout efter en opdatering, skal du først prøve at opdatere selve klientappen. Hvis det ikke er muligt, skal du tilføje "minClientVer": "25.9.11" (eller en anden ældre baseline) i realitySettings, på bekostning af at gøre den ældre klients TLS-fingeraftryk lidt mindre konsistent med en moderne browser.

Valider og genstart

Test konfigurationen, før du genstarter live-tjenesten — dette fanger JSON-tastefejl og ikke-understøttede felter, før de fjerner proxyen:

/usr/local/bin/xray run -test -c /usr/local/etc/xray/config.json
25_1

Start af tjenesten og aktivering af automatisk start

Genstart Xray med den nye konfiguration, og aktiver den til at starte automatisk ved genstart:

systemctl enable --now xray
26_1
systemctl restart xray
27_1
systemctl status xray --no-pager
28_1

Status bør vise aktiv (kører). Bekræft, at noget rent faktisk lytter på port 443:

ss -lntp | grep ':443'
29_1

Hvis Xray ikke starter, er den hurtigste måde at finde ud af hvorfor ved at bruge systemd-journalen (for baggrund om læsning af Linux-logfiler generelt, se Sådan læser du Linux-logfiler og hvor du finder dem ):

journalctl -u xray -n 50 --no-pager

Opbygning af klientforbindelseslinket

Xray-klienter importerer et enkelt vless:// share-link i stedet for en konfigurationsfil. Byg det ud fra de værdier, der er genereret i afsnit 4 (klientapps' share-link-format bruger stadig det ældre navn type=tcp til transporten, selvom selve JSON-feltet nu kaldes method):

DIN-UUID — fra røntgen-uuid (f.eks. a1b2c3d4-e5f6-7890-abcd-ef1234567890)

DIN-ADGANGSKODE-OFFENTLIG-NØGLE — er adgangskoden fra xray x25519 (IKKE den private nøgle!)

DIT-KORT-ID — fra openssl rand -hex 8 (f.eks. a1b2c3d4e5f67890)

din_IP — (din servers IP-adresse)

SNI — www.microsoft.com (eller din målgruppe)

vless://YOUR-UUID-HERE@your_IP:443?encryption=none&security=reality&sni=www.microsoft.com&fp=chrome&pbk=YOUR-PASSWORD-PUBLIC-KEY&sid=YOUR-SHORT-ID&type=tcp&flow=xtls-rprx-vision#My-Xray-Server

Eksempellink: 

vless://a1b2c3d4-e5f6-7890-abcd-ef1234567890@your_IP:443?encryption=none&security=reality&sni=www.microsoft.com&fp=chrome&pbk=xyz_public_key_here&sid=a1b2c3d4e5f67890&type=tcp&flow=xtls-rprx-vision#My-Xray-Server

pbk er adgangskodeværdien fra xray x25519 (den offentlige nøgle, aldrig den private nøgle), sni matcher destinationsværtsnavnet, og teksten efter # er blot en visningsetiket, som du frit kan omdøbe i enhver klient.

Lav den om til en QR-kode, så mobilklienter kan scanne den direkte:

qrencode -o ~/vless-client.png "vless://YOUR-UUID@your_IP:443?encryption=none&security=reality&sni=www.microsoft.com&fp=chrome&pbk=YOUR-PASSWORD-PUBLIC-KEY&sid=YOUR-SHORT-ID&type=tcp&flow=xtls-rprx-vision#My-Xray-Server"

Eller udskriv den direkte til terminalen uden at gemme en fil:

qrencode -t ansiutf8 "vless://YOUR-UUID@your_IP:443?encryption=none&security=reality&sni=www.microsoft.com&fp=chrome&pbk=YOUR-PASSWORD-PUBLIC-KEY&sid=YOUR-SHORT-ID&type=tcp&flow=xtls-rprx-vision#My-Xray-Server"
30_1

Kopier PNG-filen til din egen computer med scp, kør den fra din computers terminal (eller PowerShell på Windows), ikke serveren:

scp root@your_IP:~/vless-client.png .

Forbinder fra Windows

Alt i dette afsnit sker på din Windows-pc, ikke via SSH – klienten skal køre på den enhed, der rent faktisk bruger proxyen.

Installer v2rayN

v2rayN er en gratis, aktivt vedligeholdt GUI-klient, der indeholder Xray-core med indbygget VLESS/Reality-understøttelse. Download den seneste udgivelse fra projektets side :

Hent Windows 64-bit .zip-filen (en selvstændig build kræver ingen separat .NET-runtime som i de seneste v2rayN-versioner), pak den ud hvor som helst, og kør v2rayN.exe.

Importer serveren

Kopier linket vless:// fra afsnit 7 til din udklipsholder (eller kopier QR PNG-filen over med scp og åbn den), og vælg derefter Servere i v2rayN og derefter Importer masse-URL fra udklipsholder (eller scan QR-koden via den indbyggede scanner). Den nye serverprofil vises på listen med den etiket, du har angivet efter #.

Højreklik på profilen, og vælg den som aktiv, og aktiver derefter systemproxyen (eller TUN-tilstand til routing af hele maskinen) fra hovedvinduets værktøjslinje.

Forbinder fra Android

Alt her sker på din Android-enhed, ikke via SSH.

Installer v2rayNG

v2rayNG er Android-modstykket til v2rayN, fra samme udvikler, og er den mest anvendte Xray-klient på Android. Installer den fra Google Play, eller download APK'en direkte fra projektets udgivelsesside, hvis Play ikke er tilgængelig i din region:

Importer serveren

Åbn v2rayNG, tryk på + knappen øverst til højre, og vælg Importer konfiguration fra udklipsholder efter at have kopieret vless://-linket, eller Scan QR-koden og peg kameraet mod den PNG, der blev genereret i afsnit 7. Tryk på den importerede profil for at vælge den, og tryk derefter på den runde forbindelsesknap nederst. Android vil bede om VPN-tilladelse første gang – godkend den for at etablere tunnelen.

Forbinder fra iOS

Alt her sker på din iPhone eller iPad, ikke via SSH. Apples App Store-retningslinjer betyder, at Xray/VLESS-klienter på iOS typisk er gratis, men lejlighedsvis betalte, separate apps i stedet for en systemintegreret funktion.

Installer en Reality-kompatibel klient

Streisand er en gratis open source-klient, der understøtter VLESS med Reality, sammen med adskillige andre protokoller. Søg efter den i App Store, eller åbn dette link.

App Store-kataloger varierer afhængigt af butik/region og kan ændre sig over tid. Hvis Streisand ikke er synlig i din, inkluderer alternativer med VLESS+Reality-understøttelse Happ, V2Box og V2rayTun – søg i App Store efter det, der er tilgængeligt for din konto.

Importer serveren

Kopier linket vless:// til din udklipsholder, åbn klienten, og brug dens Tilføj fra udklipsholder (eller tilsvarende "import") mulighed, eller scan QR-koden fra afsnit 7 med klientens indbyggede scanner. Slå den nye profil til; iOS vil bede om VPN-konfigurationstilladelse første gang, som du skal godkende via Face ID, Touch ID eller din adgangskode.

Bekræftelse af forbindelsen

Når tunnelen fra afsnit 8, 9 eller 10 er aktiv, skal du gå tilbage til din egen enhed (ikke SSH-sessionen) og åbne en hvilken som helst "Hvad er min IP"-tjekker i en browser — den viste adresse skal matche din VPS' IP-adresse.

For at verificere fra serversiden i stedet, skal du kontrollere systemd-journalen for forbindelsesaktivitet og bekræfte en etableret TCP-session på port 443:

journalctl -u xray -n 50 --no-pager
ss -tnp | grep ':443'

Ved standardlogniveauet "advarsel" udskriver Xray ikke meget om individuelle forbindelser. Hvis du har brug for at se flere detaljer under fejlfinding, skal du midlertidigt indstille "loglevel": "info" i config.json og genstarte tjenesten. Skift derefter tilbage til advarsel, når alt fungerer.

Reference:

Felt

Værdi

Adresse

din VPS' offentlige IP-adresse

port

443 (den samme havn åbnet i sektion 2)

UUID / id

YOUR-UUID-HERE — genereret i afsnit 4 med xray uuid

Flow

xtls-rprx-vision — skal matche på begge sider

Sikkerhed

virkelighed

SNI / servernavn

Målværtsnavnet testet i afsnit 4, f.eks. www.microsoft.com

Fingeraftryk (fp)

Chrome — et understøttet uTLS-fingeraftryk; skal indstilles på klienten

Offentlig nøgle / pbk

Adgangskodeværdien fra xray x25519 — aldrig den private nøgle

Kort ID / side

Genereret med openssl rand -hex 8; skal matche en værdi i shortIds

Konklusion

Hvis du følger denne vejledning, kører din VPS sin egen Xray VLESS+Reality-server, forklædt som almindelig HTTPS-trafik til et rigtigt websted, uden domæne og certifikat at vedligeholde. Tjenesten kører som systemd-enheden xray og overlever en genstart uden nogen handling fra din side.

Tilføj nye klienter når som helst ved at tilføje et andet objekt til users-arrayet i config.json med en frisk UUID fra xray uuid og en distinkt e-mail-etiket, og genstart derefter tjenesten (systemctl restart xray) og opbygge brugerens eget delingslink fra afsnit 7. Separate UUID'er pr. person eller enhed gør det muligt at tilbagekalde en uden at forstyrre andre.

Et par vaner, der er værd at holde ved lige, når serveren kører:

  • Hold Xray opdateret. Kør installationsscriptet fra afsnit 3 med jævne mellemrum – det opgraderer en eksisterende installation – og hold klientapps opdaterede, givet minClientVer-adfærden nævnt i afsnit 5.
  • Sikkerhedskopier config.json et sted privat uden for serveren. Den indeholder serverens Reality-private nøgle og hver klients UUID; hvis du mister den, genereres legitimationsoplysninger for hver enhed.
  • Tilbagekald mistede enheder med det samme. Fjern den tilsvarende post fra brugerarrayet i config.json, og genstart tjenesten.

Hvis forbindelsen ikke oprettes, skal du kontrollere i rækkefølge:

  • servicestatus (systemctl status xray --no-pager) og journalen (journalctl -u xray -n 50 --no-pager)
  • firewallreglerne (ufw-status — port 443/tcp skal være åben)
  • at port 443 ikke allerede er bundet af en anden tjeneste (ss -lntp | grep ':443' burde kun vise xray)
  • at UUID, offentlig nøgle, short ID, SNI og flow i klienten matcher config.json præcist — et enkelt uoverensstemmende tegn fejler handshake lydløst
  • Selve Reality-målet, med xray tls ping :443, i tilfælde af at webstedet ændrede sin TLS-konfiguration

Sammenligning af Xray med andre muligheder? Se AmneziaWG Server Deployment Guide og How to set up Wireguard VPN on your server for WireGuard-baserede alternativer, eller Hysteria2 og TUIC setup for to andre censurresistente protokoller bygget til tabsgivende eller stærkt filtrerede netværk. Hvis du kun har brug for en simpel proxy i stedet for en fuld tunneling-opsætning, er 3proxy-konfiguration på CentOS/ArchLinux et meget lettere alternativ, og den ældre VPN-serveropsætning på Linux: PPTP eller OpenVPN? dækker protokoller, der er enklere at konfigurere, men langt lettere for DPI at registrere og blokere. For generel serverhærdning, når proxyen er live, se Linux-brugere: Administration og tilladelser.


Spørg os om VPS

Vi er altid klar til at besvare dine spørgsmål når som helst på dagen eller natten.