Dëse Guide gëtt enger proxy-bewosster Applikatioun Zougang zu engem existéierende WireGuard-Wee, ouni e Proxy-Port um VPN-Server oder am Internet ze verëffentlechen. Den SOCKS-Daemon liwwert d'Applikatiounsschnittstell, WireGuard liwwert deen schon approuvéierten IP-Wee, an keen vun deenen zwee authentifizéiert de Benotzer fir Iech. All Schrëtt hei drënner produzéiert eppes, wat Dir kontrolléiere kënnt, an all huet eng Réckroll: stoppt d'Instanz, huelt d'Regel ewech oder huelt d'Proxy-Astellung vun der Applikatioun ewech. Näischt hei ännert de Standardwee vum Host.

D'Beispill geet dovun aus, datt Dante 1.4.x als eegen, geréiert Instanz op enger vertrauenswierdeger Linux-Aarbechtsplaz installéiert ass, an de Servicekonto a Log-Konfiguratioun vum Paket op hirem Plaz gelooss goufen. D'Aarbechtsplaz besëtzt 10.77.0.2 op hirem WireGuard-Interface, erreecht 10.60.0.20:443 duerch deen Tunnel, an den eigentlechen Numm vum Service ass app.corp.example.

Schrëtt 1: de Listener nëmmen un Loopback binden

Setzt d'Netzwierk-, Method- an Regel-Bereicher an déi aktiv Konfiguratioun vun der Instanz, an ersetzt d'Beispilladressen. All Server-Astellunge kommen virun de Regel-Bléck:

internal: 127.0.0.1 port = 1080
external: 10.77.0.2
external.protocol: ipv4
clientmethod: none
socksmethod: none

client pass {
    from: 127.0.0.1/32 to: 127.0.0.1/32
}

socks pass {
    from: 127.0.0.1/32 to: 10.60.0.20/32 port = 443
    command: connect
    protocol: tcp
}

Dëst ass e Fragment, keen Ersatz fir d'Benotzer- a Log-Astellunge vum Paket. Wielt en onbenotzte lokale Port a bestätegt, datt dës eegen Instanz keng aner Listener, keng méi breet Pass-Regelen an keng Upstream-Ketten-Antré huet, déi de Kontrakt ännere géifen. Wann eng fréier Konfiguratioun eng socks pass ouni Destinatiounsbeschränkung hannerlooss huet, huelt se ewech, ier Dir eppes testt.

D'Réckroll fir dëse Schrëtt ass d'Instanz ze stoppen; d'Konfiguratiounsdatei kann op der Disk bleiwen, während Dir se zréckstellt.

Schrëtt 2: schreift zwou Regelen, net eng

Dem Dante seng Konfiguratiounsreferenz gëtt den zwou Regelzorte verschidden Aufgaben. D'Client-Regel léisst eng Verbindung zum Loopback-Listener zou, an hir Destinatioun ass d'Adress vum Listener selwer. D'SOCKS-Regel erlaabt déi gefrot weider Verbindung zum approuvéierten Host a Port. Net passend Ufroe ginn standardméisseg blockéiert, dofir gesäit eng fehlend Regel genee sou aus wéi en broche Wee.

Mierkt wat dës Konfiguratioun bewosst net mécht: se freet kee SOCKS-Passwuert un. Dat passt zu engem vertrauenswierdegen lokalen Host, an et ass keng Benotzerauthentifizéierung. All aner Prozess op där Maschinn ka Loopback och benotzen. Halt d'Authentifizéierung vun der entfernten Applikatioun selwer op hirem Plaz, a benotzt dës onauthentifizéiert Form net nach eng Kéier fir net vertrauenswierdeg lokal Benotzer oder en Listener, deen op d'LAN kuckt.

Schrëtt 3: de Wee vun der richteger Quell iwwerpréiwen

external wielt eng Ausgangsquelladress; et installéiert kee WireGuard-Wee. Nëmme-Lies-Abfro fir d'Beispillquell an -destinatioun:

ip -4 route get 10.60.0.20 from 10.77.0.2

Féiert dat am Dante sengem tatsächlechen Netzwierk-Namensraum aus, net an enger Shell, déi Dir just op hutt. De Wee, d'Wiel vum WireGuard-Peer, d'Erlaabnes op der wäiter Säit an de Réckwee mussen alleguer zu där Quelladress passen. Eng erfollegräich Abfro ass noutwendeg an net duer, well se näischt doriwwer seet, ob de wäiten Enn d'Ufro akzeptéiert.

Stellt Iech dem Verlaangue géint, en Standardwee bäizesetzen, fir datt d'Abfro geléngt. De Proxy-Port gëtt et just op dëser Aarbechtsplaz; dem Host säi Standardwee ze änneren, fir en ze schafen, dréit den ganzen Design ëm.

Schrëtt 4: testt mat der virgesinnener Identitéit

Nodeems den Eegentemer déi installéiert Konfiguratioun validéiert an d'Instanz iwwer hire Service-Manager gestart huet, ass eng illustrativ Ufro:

curl --proxy socks5h://127.0.0.1:1080 --noproxy '' https://app.corp.example/

Mat socks5h mécht Dante d'Destinatiounsopflesung, awer Dante leeft op dëser Aarbechtsplaz, dofir schéckt d'Astellung DNS net vun eleng op dat wäit Enn vum Tunnel. Den approuvéierte Resolver, deen Dante benotzt, muss déi erlaabt Adress fir deen Numm zréckginn. Déi eidel No-Proxy-Lëscht verhënnert, datt eng ierflech Ausnam SOCKS roueg ëmgeet.

Behält d'HTTPS-Hostnumm- an Zertifikatsvalidéierung am Test, kuckt dann den tatsächlechen Listener un a bestätegt béid Hälften vum Kontrakt: déi erlaabt Ufro geléngt an eng ausgeschloss Destinatioun schléit feel. Iwwerpréift och, datt net ënnerstëtzt Weiderleitungsbefehler refuséiert bleiwen, well dëst Fragment de SOCKS CONNECT-Befehl iwwer TCP erlaabt an näischt, wat engem allgemengen UDP- oder Ganzapparat-Tunnel gläicht.

Schrëtt 5: entscheet, wat geschitt, wann den Tunnel fält

Testt den Tunnelverloscht an de Neistart vun der Instanz, ier Dir dëst Produktioun nennt. En Iwwerwaacher, deen Dante no WireGuard start, erstellt keng fail-closed-Routing, an en erstellt och keng fail-closed-DNS; béides muss iwwer den Netzwierkeegentemer duerchgesat ginn. Kuckt wat d'Applikatioun mécht, wann den Tunnel erof ass: e propperen Feeler ass e gutt Resultat, e rouege Réckfall op en ëffentleche Resolver net.

Koordinéiert Aktualiséierungen, wann déi gebonnen Tunneladress sech ännert, well external ass drop fixéiert. Wann d'Arrangement net méi gebraucht gëtt, zitt dës Instanz an d'Proxy-Astellung vun der Applikatioun zesummen zréck, a loosst de WireGuard-Wee deem, deem en gehéiert.

Ähnlech Artikelen