Wettelijk privacygericht publiceren

Host anoniem een website vanuit huis met Cloudflare Tunnel en een VPN

Deze gids laat zien hoe u uw thuis-IP verbergt voor bezoekers door een lokale site via Cloudflare Tunnel te publiceren en eventueel cloudflared eerst via een VPN te laten lopen.

De privacygrens is belangrijk: bezoekers hoeven uw woon-IP niet te weten, maar Cloudflare kent nog steeds uw account en een VPN-provider kan weten dat u verbinding maakt met Cloudflare.

Dit artikel ondersteunt alleen wettige privacy.

Het is geschreven voor legitiem zelfhosten, testen, publiceren en onderzoek. Het ondersteunt geen fraude, malware, phishing, intimidatie of andere illegale activiteiten.

Wat deze setup eigenlijk beschermt

Het praktische doel is niet om bij elke provider te verdwijnen. Het doel is om gewone bezoekers, scanners en routinematige DNS-zoekopdrachten te verhinderen uw woon-IP te achterhalen of direct uw router te bereiken.

Verberg het woonadres-IP voor bezoekers

DNS kan naar Cloudflare wijzen in plaats van een thuisadres, zodat gewone zoekopdrachten niet onthullen waar de site gehost wordt.

Houd de router gesloten

Een benoemde tunnel is alleen uitgaand, dus u heeft geen inkomende poortdoorsturing nodig voor de website zelf.

Beperk directe blootstelling van de oorsprong

Uw site kan op localhost of een andere privé-interface blijven terwijl Cloudflare de publieke bereikbaarheid regelt.

Behoud een realistisch dreigingsmodel

Dit is privacy ten opzichte van bezoekers, niet onzichtbaarheid voor Cloudflare, een VPN-provider of uw eigen accountspoor.

Wie u nog kan identificeren

De beste manier om anoniem thuis hosten te bekijken is door doelgroepen te scheiden. Elke doelgroep leert een ander deel van het verhaal.

Bezoekers

  • Ze kunnen uw publieke hostnaam, TLS-oppervlak en alle inhoud, headers, analytics en cookies zien die u bewust blootstelt.
  • Ze zien meestal Cloudflare edge IP's in plaats van uw thuis-IP als DNS alleen naar de tunnel wijst.
  • Ze kunnen nog steeds de admin-browser vingerafdrukken als u inlogt op dezelfde backend vanaf hetzelfde apparaat of browserprofiel.

Cloudflare

  • Cloudflare kent het account, de zone, tunnel UUID, geconfigureerde hostnamen en de status van de tunnel.
  • Cloudflare ziet ook het bron-IP dat cloudflared gebruikt om verbinding te maken, dit is uw thuis-IP of het VPN-uitgangs-IP daarvoor.
  • Een VPN kan het woonadres-IP voor Cloudflare verbergen, maar verwijdert de relatie met het Cloudflare-account niet.

VPN-provider

  • De VPN-provider kan nog steeds zien dat uw apparaat versleuteld verkeer naar Cloudflare onderhoudt.
  • Als de VPN gekoppeld is aan uw normale e-mail of betaalidentiteit, blijft die relatie buiten de tunnel bestaan.
  • Een VPN verandert het bron-IP dat Cloudflare ziet. Het verwijdert niet het vertrouwen dat u in de VPN-provider stelt.

Uw bredere identiteitsroute

  • Domeinregistratiegegevens, herstelmailboxen, betalingen en hergebruikte gebruikersnamen kunnen het project nog steeds aan u koppelen.
  • Inloggen op adminpanelen vanuit een persoonlijk browserprofiel kan de site koppelen aan uw dagelijkse identiteit.
  • In de praktijk hangt anonimiteit net zozeer af van operationele discipline als van de tunnel zelf.

Hoe de verkeersroute werkt

Het eenvoudige pad is simpel: de publieke kant eindigt bij Cloudflare, terwijl de privé-kant een lokale service blijft die alleen cloudflared kan bereiken.

01 Bezoeker

Vraagt uw hostnaam op en bereikt het Cloudflare edge-netwerk.

02 Cloudflare

Beëindigt HTTPS, past regels toe en stuurt het verzoek door naar de benoemde tunnel.

03 cloudflared.exe

Onderhoudt alleen uitgaande tunnelverbindingen van uw Windows-machine naar Cloudflare.

04 Lokale website

Reageert op localhost of een ander privé-oorsprongadres zonder direct aan het internet blootgesteld te zijn.

Waar de VPN zit

Als cloudflared eerst een VPN gebruikt, ziet Cloudflare het VPN-uitgangs-IP als connectorbron in plaats van uw woon-IP. Valt de VPN weg zonder kill switch, dan kan cloudflared via de normale ISP-route opnieuw verbinden.

Wat cloudflared.exe op Windows doet

cloudflared.exe is geen VPN en geen anonimiteitsnetwerk. Het is de Cloudflare-connector die een tunnel authenticieert, langdurige uitgaande verbindingen openhoudt en een publieke hostnaam koppelt aan een lokale service.

Maakt en authenticieert benoemde tunnels

U kunt één keer inloggen, een benoemde tunnel maken en deze hergebruiken voor een stabiele hostnaam in plaats van wegwerplinks te gebruiken.

Onderhoudt redundante uitgaande verbindingen

Cloudflare documenteert dat elke tunnel meerdere langdurige verbindingen onderhoudt zodat de route veerkrachtig blijft als één pad wegvalt.

Koppelt hostnamen aan privéservices

Een configuratiebestand kan app.example.com naar http://localhost:3000 sturen zonder localhost tot een openbare bron te maken.

Draait interactief of als Windows-service

U kunt de tunnel eerst in een terminal testen en later omzetten in een altijd-aan Windows-service.

Ondersteunt meer dan websites

Cloudflare Tunnel kan HTTP, HTTPS, TCP, SSH, RDP en vergelijkbare privéservices publiceren, maar deze gids richt zich op websites.

Windows-installatie: cloudflared.exe stap voor stap

Dit pad gaat ervan uit dat een website lokaal al werkt en uw domein al Cloudflare DNS gebruikt. Het voorbeeld hieronder gebruikt app.example.com en een lokale service op poort 3000.

Gebruik PowerShell 7 voor elke onderstaande opdracht. Vervang de voorbeeldhostnaam, tunnelnaam en lokale service voordat u iets kopieert.

01

Stap 1: definieer de waarden die u hergebruikt

Start in PowerShell 7 en vervang de voorbeeldhostnaam, tunnelnaam en lokale service door uw eigen waarden voordat u verdergaat.

CLIPowerShell 7
$TunnelName = "ghostly-home-site"
$PublicHostname = "app.example.com"
$LocalService = "http://localhost:3000"
$CloudflaredHome = "C:\Cloudflared\bin"
$ConfigPath = "$env:USERPROFILE\.cloudflared\config.yml"
02

Stap 2: bereid cloudflared.exe voor

Hernoem de gedownloade binary, maak een aparte map aan en kopieer het uitvoerbare bestand daarin.

CLIPowerShell 7
Rename-Item "$env:USERPROFILE\Downloads\cloudflared-windows-amd64.exe" "cloudflared.exe"
New-Item -ItemType Directory -Force $CloudflaredHome
Copy-Item "$env:USERPROFILE\Downloads\cloudflared.exe" "$CloudflaredHome\cloudflared.exe"
03

Stap 3: ga naar de werkmap en controleer de binary

Ga naar de map en controleer of cloudflared.exe zonder fouten start voordat u iets authenticieert.

CLIPowerShell 7
Set-Location $CloudflaredHome
.\cloudflared.exe --version
04

Stap 4: log in en autoriseer de Cloudflare-zone

Dit opent de browser zodat u de zone kunt goedkeuren. Het accountcertificaat wordt geschreven in uw standaard .cloudflared-map.

CLIPowerShell 7
.\cloudflared.exe tunnel login
05

Stap 5: maak de benoemde tunnel en sla de UUID op

Maak de tunnel aan en plak de UUID uit de opdrachtuitvoer in de onderstaande variabele zodat de volgende opdrachten deze kunnen hergebruiken.

CLIPowerShell 7
.\cloudflared.exe tunnel create $TunnelName
$TunnelId = "<paste-the-tunnel-uuid-from-the-create-output>"
06

Stap 6: schrijf config.yml regel voor regel

Deze opdrachten bouwen de lokale config.yml in uw Windows-profiel zodat de tunnel weet welke publieke hostnaam naar welke lokale service moet doorverwijzen.

CLIPowerShell 7
Set-Content $ConfigPath "tunnel: $TunnelId"
Add-Content $ConfigPath "credentials-file: $env:USERPROFILE\.cloudflared\$TunnelId.json"
Add-Content $ConfigPath ""
Add-Content $ConfigPath "ingress:"
Add-Content $ConfigPath "  - hostname: $PublicHostname"
Add-Content $ConfigPath "    service: $LocalService"
Add-Content $ConfigPath "  - service: http_status:404"
07

Stap 7: controleer en valideer de configuratie

Print het bestand één keer om te controleren, laat cloudflared daarna de ingress-regels valideren voordat u DNS publiceert.

CLIPowerShell 7
Get-Content $ConfigPath
.\cloudflared.exe tunnel ingress validate
08

Stap 8: maak de DNS-route en controleer de tunnel

Dit vertelt Cloudflare welke hostnaam de benoemde tunnel moet targeten voordat u live verkeer gaat bedienen.

CLIPowerShell 7
.\cloudflared.exe tunnel route dns $TunnelName $PublicHostname
.\cloudflared.exe tunnel info $TunnelName
09

Stap 9: start de tunnel in de voorgrond

Houd dit PowerShell 7-venster open terwijl u de site vanaf een ander netwerk test. Stop met Ctrl+C als u klaar bent.

CLIPowerShell 7
.\cloudflared.exe tunnel run $TunnelName
Optioneel: zet de tunnel om in een Windows-service

Doe dit alleen nadat de interactieve tunnel werkt. Voer onderstaande opdrachten uit in een verhoogd PowerShell 7-venster omdat de service het systeemprofielpad en de service-registervermelding gebruikt.

01

Stap 1 service: installeer de Windows-service shell

Open een verhoogd PowerShell 7-venster voor deze optionele stap en installeer eerst de Cloudflared-service.

CLIPowerShell 7 (Admin)
Set-Location $CloudflaredHome
.\cloudflared.exe service install
02

Stap 2 service: kopieer cert.pem, referenties en config naar het systeemprofiel

De Windows-service draait onder het systeemprofiel, dus het heeft een eigen .cloudflared-map nodig met het certificaat, tunnelreferenties en config.yml.

CLIPowerShell 7 (Admin)
$SystemCloudflaredHome = "C:\Windows\System32\config\systemprofile\.cloudflared"
New-Item -ItemType Directory -Force $SystemCloudflaredHome
Copy-Item "$env:USERPROFILE\.cloudflared\cert.pem" "$SystemCloudflaredHome\cert.pem"
Copy-Item "$env:USERPROFILE\.cloudflared\$TunnelId.json" "$SystemCloudflaredHome\$TunnelId.json"
Set-Content "$SystemCloudflaredHome\config.yml" "tunnel: $TunnelId"
Add-Content "$SystemCloudflaredHome\config.yml" "credentials-file: $SystemCloudflaredHome\$TunnelId.json"
Add-Content "$SystemCloudflaredHome\config.yml" ""
Add-Content "$SystemCloudflaredHome\config.yml" "ingress:"
Add-Content "$SystemCloudflaredHome\config.yml" "  - hostname: $PublicHostname"
Add-Content "$SystemCloudflaredHome\config.yml" "    service: $LocalService"
Add-Content "$SystemCloudflaredHome\config.yml" "  - service: http_status:404"
03

Stap 3 service: wijs ImagePath naar de systeemconfig en start de service

De Windows-service documentatie van Cloudflare vereist ook dat de Cloudflared ImagePath verwijst naar het configuratiebestand van het systeemprofiel.

CLIPowerShell 7 (Admin)
Set-ItemProperty -Path "HKLM:\SYSTEM\CurrentControlSet\Services\Cloudflared" -Name ImagePath -Value "C:\Cloudflared\bin\cloudflared.exe --config=C:\Windows\System32\config\systemprofile\.cloudflared\config.yml tunnel run"
sc.exe start cloudflared

Dit weerspiegelt de Windows-service workflow van Cloudflare: kopieer cert.pem en de tunnelreferenties naar het systeemprofiel, schrijf een systeemprofiel config.yml en wijs de Cloudflared service ImagePath naar die config.

VPN-plaatsing en beveiligingsregels

De tunnel is slechts zo privé als de route eronder. Wilt u dat Cloudflare een VPN-uitgangs-IP ziet in plaats van een woon-IP, dan moet de VPN deel uitmaken van het connectorpad voordat cloudflared start.

Start de VPN vóór cloudflared

Controleer eerst het publieke IP op de host. Als de machine nog het ISP-IP toont, ziet Cloudflare datzelfde IP als de tunnel verbinding maakt.

Gebruik een echte kill switch

Als de VPN wegvalt en er geen firewall is, kan cloudflared via de normale woonroute opnieuw verbinden.

Houd de oorsprong lokaal

Koppel de webservice aan localhost of een privé-interface waar mogelijk, zodat de tunnel de enige bedoelde openbare route blijft.

Behandel logs als gevoelig

De documentatie van Cloudflare waarschuwt dat debug-logging verzoek-URL's, methoden, protocollen, inhoudslengtes en headers kan vastleggen. Gebruik normale logging in dagelijks gebruik.

Optionele VPN-keuzes en vergelijking

Wilt u een snelle VPN-snelkoppeling of een bredere vergelijking?

Wilt u een eenvoudig startpunt, dan opent de wisselende VPN-knop hieronder een actuele optie. Wilt u eerst veel alternatieven vergelijken, gebruik dan de volledige providerlijst.

Huidige wisselende keuze: Proton VPN

Als de tunnel stopt terwijl het DNS-record actief blijft, zien bezoekers meestal een Cloudflare-fout totdat de connector terugkomt. Dat is storend, maar beter dan stilletjes een thuis-IP lekken.

Controlelijst voordat u het vertrouwt

Ga er niet vanuit dat de setup privé is alleen omdat de site één keer laadt. Controleer de route als een operator, niet als een marketeer.

DNS lost op naar Cloudflare, niet naar uw thuis-IP

Een snelle externe controle toont Cloudflare-gerichte records in plaats van een woonadres.

De host toont het VPN-uitgangs-IP voordat de tunnel start

Controleer eerst het publieke IP van de machine zodat u weet wat Cloudflare aan de connectorzijde ziet.

De site werkt vanaf een ander netwerk zonder poortdoorsturing

Test vanaf mobiel internet of een ander extern netwerk zodat u niet misleid wordt door een lokale routeringsshortcut.

Een VPN-verbinding die wegvalt, staat geen terugval naar het woonadres toe

Simuleer één keer het faalgeval. Als cloudflared via de ISP-route opnieuw verbindt, is het privacymodel gebroken.

Wanneer GhostlyShare de eenvoudigere optie is

GhostlyShare

Als u alleen een tijdelijke publieke preview, een snelle klantdemo of een webhook callback-URL nodig heeft, is GhostlyShare de eenvoudigere optie. Het vermijdt het meeste handmatige werk met Cloudflare dashboard, DNS en config.yml.

Gebruik handmatige cloudflared als u volledige controle wilt over de tunnel, DNS, service-accountpad en langdurig thuis hosten. Gebruik GhostlyShare als snelheid belangrijker is dan infrastructuur.

Bekijk GhostlyShare

Veelgestelde vragen over anoniem thuis hosten

Weet Cloudflare nog steeds wie ik ben?

Ja. Cloudflare kent nog steeds het account, de zone, tunnel en het bron-IP dat de edge bereikt. Een VPN kan het woonbron-IP dat Cloudflare ziet vervangen, maar verwijdert de Cloudflare-accountrelatie niet.

Zien bezoekers mijn thuis-IP-adres?

Normaal gesproken niet, als uw DNS alleen naar Cloudflare wijst en u de oorsprong niet op een andere manier heeft blootgesteld. Bezoekers bereiken de Cloudflare-edge en de publieke hostnaam, niet het woon-IP achter de tunnel.

Heb ik router poortdoorsturing nodig?

Nee. Cloudflare Tunnel is alleen uitgaand, dus de connector maakt verbinding met Cloudflare in plaats van te wachten op inkomend internetverkeer.

Kan ik cloudflared.exe alleen starten wanneer nodig?

Ja. Start de tunnel interactief vanuit PowerShell als u de site tijdelijk nodig heeft. Zet het pas om in een Windows-service als u de route beschikbaar wilt houden na uitloggen of herstart.

Wat gebeurt er als de VPN wegvalt

Zonder kill switch kan cloudflared via de normale woonroute opnieuw verbinden en ziet Cloudflare het thuis-ISP-IP. Daarom is het faalgeval net zo belangrijk als het succesgeval.

Is dit genoeg om het hele project anoniem te maken?

Nee. Domeinregistratie, betalingen, herstelmails, browser-vingerafdrukken en admin-gedrag kunnen u nog steeds identificeren. De tunnel lost slechts een deel van het blootstellingsprobleem op.

Gerelateerde gidsen