In hoste tsjinner mei in ynstallearre VPN hâldt op it lêst trije adressen, en mar ien dêrfan heart op elke plak datst hast te konfigurearjen. It nûmer út in providerdashboard nei DNS, nei in listener of nei in allowlist kopiearje is hoe’t in wurkjende tunnel in tsjinst wurdt dy’t nimmen berikke kin. Dizze runbook oardere it wurk sa dat elk adres foar in neamd doel keazen wurdt. Hy listet ek de opdrachten op dy’t befêstigje watst echt publisearre hast.

Karteer de trije adressen foardatst wat publisearrest

Neam se nei funksje. It ûnderlaachadres is wat de masine brûkt om it VPN-einpunt oer it ynternet te berikken, en it is faak privee efter de NAT fan ’e provider. It tunneladres libbet binnen de VPN en wurdt troch de tsjinner of de klient útjûn, ôfhinklik fan it produkt. De iepenbiere útgong is it adres dat in eksterne webside nei de oersetting logt, en it hoech net te bestean op in ynterface datst opfreegje kinst.

In dashboard dat ien iepenbier adres foar in masine sjen lit, fertelt dy hiel lyts oer de oare twa rollen. Underlaachberikberens is in eask, gjin oankeap: in laptop efter in thúsrouter kin in hoste VPN-einpunt berikke sûnder in iepenbier IPv4-adres te besitten. Watst net kinst, is in ynkommend paad betinke troch in namme te skriuwen dy’t nei in adres wiist dat nimmen trochstjoert.

Kies it adres by de tsjinst, net by it label

Skriuw op wat de tsjinner dwaan moat foardatst in nûmer kiest. Utgeande API-oproppen hawwe in stabile útgong nedich as de oare kant in allowlist hâldt. Privee tagong hat in tunneladres nedich dêr’t kliïnten nei route kinne en in listener dy’t dêroan bûn is. Iepenbier hosten hat in ynkommende mapping nedich dy’t de provider echt biedt, en dat leveret it útgongsadres allinnich net.

Ien masine kin alle trije doelen tsjinje en dochs trije ferskillende adressen brûke. Wat brekt, is de oanname dat ien wearde se allegear dekt:

RequirementValue that belongs thereWhat you see when the roles are swapped
Outbound allowlistingPublic exitRequests reach the service but are rejected
Private client accessTunnel addressClient connects, nothing answers
Inbound web serviceProvider mappingName resolves, connection times out

De ynkommende rige is dejinge dêr’t minsken oer diskusjearje. In record dat nei it útgongsadres wiist, makket gjin listener, gjin firewall-iepening en gjin poartmapping, en wachtsjen feroaret dêroan neat. As de provider in tawijd adres tegearre mei in ynkommende regel ferkeapet, is dat bondel de kapasiteit dy’tst kocht hast; it adres op himsels is net it rjocht.

Opdrachten dy’t sjen litte hokker adres hokker is

Lês de masine, net it dashboard. Ynterfacenammen ferskille tusken systemen, dus keppelje adressen oan apparaten ynstee fan in label te fertrouwen.

De earste rigel listet elk IPv4-adres en syn apparaat op, en de twadde freget de kernel hokker apparaat er brûke soe foar in bekend doel bûten:

ip -brief -4 addr show
ip -4 route get 198.51.100.10
curl -4 -s https://ifconfig.me
ss -lntp | grep -E ':(443|1194)'

As de rûtesikerij foar iepenbier ferkear mei in tunnelapparaat antwirdet, is dyn folsleine tunnel aktyf. De listenerkontrôle is like wichtich, want in proses dat allinnich oan 127.0.0.1 bûn is, sil nea op it tunneladres antwirdzje, hokker namme oftst ek publisearrest.

Publisearje it, en kontrolearje dan fan bûten

Publisearje de wearde dy’t de tsjinst nedich hat en neat mear: in A- of AAAA-record foar hosten, in allowlist-ynskriuwing foar útgeande oproppen, in klientprofyl foar privee tagong. Test dan fan ’e posysje dy’t der ta docht, en dat is nea de masine dy’tst krekt bewurke hast.

Twa kontrôles dekke it measte, en beide binne goedkeap genôch om yn in skript te hâlden:

dig +short vpn.example.net A
curl -4 -sS -o /dev/null -w '%{http_code}\n' https://vpn.example.net/health

In DNS-antwurd dat bewiist dat dyn record bestiet, is gjin bewiis dat in fersyk oankomt, en ien suksesfol fersyk bewiist allinnich dat ien paad fan ien netwurk wurket. Werhelje de kontrôle fia in mobile ferbining as der in allowlist yn it spul is, want de útgong dy’tst sjochst kin ôfhingje fan ’e adresfamylje en de folge rûte. Notearje hokker famylje oftst ferifiearre hast; in wurkjend IPv4-paad seit hielendal neat oer IPv6.

As de tsjinst ynkommend is, is it útgongsadres net genôch

Ynkommende tagong hat fjouwer dingen nedich op in rige: in namme of adres dat in klient berikke kin, in rûte dy’t it pakket by de masine bringt, in listener dy’t it oannimt en in belied dat it net falle lit. In VPN feroaret it twadde item en soms it earste, en it docht neat foar it tredde en fjirde. As de tunnel it leveringspaad is, ferbine kliïnten har mei it tunneladres, net mei de útgong.

Notearje fan hokker adres elke tsjinst ôfhinklik is, en besjoch dy notysje opnij as de provider syn routingmodel feroaret. In tsjinner dy’t privee antwirdet en iepenbier mist, is meastentiids net stikken; hy antwirdet ûnder de ferkearde identiteit, en de reparaasje is in mappingbeslissing en gjin firewallferoaring.

Relatearre artikelen