ID.nl logo
Huis

Externe toegang tot je thuisnetwerk zonder NAT

Klanten van KPN met een 4G only-abonnement voor het buitengebied klagen sinds eind maart dat zij van buitenaf niet meer met hun thuisnetwerk kunnen verbinden. Er is gelukkig een simpele oplossing, die ook bruikbaar is voor wie geen KPN-klant is: regel externe toegang met Pagekite.

Als je in je thuisnetwerk een server opzet, is die standaard alleen binnen je eigen netwerk bereikbaar. Wil je ook van buitenaf bij je webserver, nas of beveiligingscamera kunnen, dan moet je daar nog het een en ander voor configureren. Zo dien je een statisch ip-adres aan je server toe te kennen. Dan moet je in je internetmodem/router portforwarding instellen, zodat die alle aanvragen op een specifieke poort op je publieke ip-adres naar het statische ip-adres van je server omleidt. Vaak dien je ook nog in de firewallregels van je router die poort open te zetten.

Maar dan is het nog niet gedaan: aangezien veel modems van internetabonnementen thuis geen vast ip-adres krijgen, heb je ook een dynamische dns (ddns) nodig, zodat je eigen domeinnaam altijd naar je publieke ip-adres verwijst, ook als dat verandert. Kortom, even een server thuis buiten je thuisnetwerk beschikbaar stellen, is gemakkelijker gezegd dan gedaan. Het is allemaal wel mogelijk, maar je verliest er heel wat tijd mee en maakt gemakkelijk fouten.

Wat is Pagekite?

Pagekite biedt een eenvoudige oplossing hiervoor. In enkele seconden maak je een thuisserver overal beschikbaar, en dat zonder je te moeten bezighouden met poorten, firewallregels, het wachtwoord van je router (wat was dat ook alweer?) en het configureren van een ddns-dienst.

Het enige wat je daarvoor hoeft te doen, is op je server het Python-script pagekite draaien. Dat werkt op Windows, macOS, Linux en BSD. Je dient je ook voor de Pagekite-dienst in te schrijven. Je krijgt sowieso een maand de tijd om de dienst gratis te proberen. Daarna betaal je hoeveel je wilt.

Het project stelt 3 dollar per maand voor en heeft er blijkbaar ook geen problemen mee dat individuen niets betalen voor persoonlijk gebruik, zolang ze één keer per maand een formulier invullen om te zeggen waarvoor ze Pagekite inzetten. Als je echt niet van de Pagekite-dienst wilt afhangen, dan is het ook mogelijk om zelf een Pagekite front-end te draaien op een server met publiek ip-adres (zie het kader ‘Draai je eigen Pagekite front-end’).

De ontwikkelaars van Pagekite noemen hun systeem een dynamische, getunnelde reverse proxy. Die bestaat uit een back-end en een front-end. De back-end draai je op je server. Dit Python-script configureert dns (zie het kader ‘Dns?’) voor je server en opent een tunnel naar een wereldwijde pool van front-end-relays (doorgevers). Die relays van het Pagekite-project zijn servers met een publiek ip-adres en zijn voor iedereen op internet bereikbaar.

De front-end-software op die relays leidt aanvragen om via de tunnel die door je back-end is opgezet. Je server ontvangt dan een aanvraag (bijvoorbeeld voor een webserver) en stuurt het antwoord terug via de tunnel. Zo is je server indirect op een publiek domein bereikbaar, terwijl het niet rechtstreeks publiek bereikbaar is.

Pagekite installeren

Pagekite draait zoals gezegd op Windows, MacOS, Linux en BSD. We tonen hier hoe je het op Linux installeert, bijvoorbeeld op een Raspberry Pi. Op de andere besturingssystemen verloopt de installatie vergelijkbaar, maar onder Windows moet je eerst nog Python 2.7 installeren. De back-end is immers een Python-script, en op Windows is in tegenstelling tot Linux en macOS niet standaard Python geïnstalleerd.

In principe kun je het Python-bestand pagekite.py gewoon downloaden, maar het is handiger om het als een pakket te installeren, zodat je updates krijgt. Debian (en dus ook Raspbian voor de Raspberry Pi) heeft een pakket van Pagekite in zijn standaardrepository, maar dat is vrij oud. Gelukkig hebben de makers van Pagekite hun eigen repository opgezet.

Voeg daarom eerst de repository van Pagekite toe in Raspbian:

echo deb http://pagekite.net/pk/deb/ pagekite main | sudo tee -a /etc/apt/sources.list

Voeg dan de sleutel toe waarmee de ontwikkelaars van Pagekite hun pakketten ondertekenen:

sudo apt-key adv --recv-keys --keyserver keys.gnupg.net AED248B1C7B2CAC3

Update de pakketbronnen en installeer tot slot Pagekite:

sudo apt-get update sudo apt-get install pagekite

De eerste keer moet je nog een account aanmaken bij de Pagekite-dienst. Het programma helpt je daarbij. Pagekite is een opdrachtregelprogramma, dus voor de Raspberry Pi start je een Putty-sessie op en voer je het daarin uit:

pagekite –signup

Je krijgt dan enkele vragen, zoals je e-mailadres en de naam van je eerste ‘kite’. Wat Pagekite een kite noemt, is de naam die je aan je server verbindt. Standaard krijg je een subdomein van de domeinnaam pagekite.me, maar het is ook mogelijk om een kite aan je eigen domeinnaam te koppelen.

Vul dus het subdomein in dat je graag hebt. Je krijgt dan een e-mail met activatielink. Klik daarop binnen de 15 minuten om je account te activeren, daarna start Pagekite. Stop het programma met een druk op Ctrl+C.

Webserver op internet

Het eerste wat je kunt doen, is een webserver op je Raspberry Pi publiek maken. Daarvoor hoef je zelfs geen webserver te draaien, want Pagekite heeft een ingebouwde webserver. Handig als je even snel een directory met zijn volledige inhoud op internet wilt delen. Dan voer je eenvoudigweg de volgende opdracht uit:

pagekite /pad/naar/directory jesubdomein.pagekite.me +indexes

Zonder de optie +indexes krijg je niet de inhoud van de directory te zien, maar het bestand index.html of (als de directory zo’n bestand niet bevat) een foutmelding. Ook hier weer sluit je Pagekite (en dus de publieke beschikbaarheid van je bestanden) af met Ctrl+C.

Als je al een webserver draait op je Pi, dan is die uiteraard ook met Pagekite publiek beschikbaar te maken. Installeer bijvoorbeeld de lichtgewicht webserver lighttpd:

sudo apt-get install lighttpd

Een maak de webserver dan publiek beschikbaar op je Pagekite-domein met:

pagekite 80 jesubdomein.pagekite.me

Met 80 verwijzen we hier naar de poort 80 waarop een webserver standaard draait. Pas het poortnummer aan als je dat in de configuratie van je webserver aangepast hebt.

Of je nu met de ingebouwde of je eigen webserver werkt, maakt niet uit. Als je in je browser, het maakt niet uit op welke locatie, jesubdomein.pagekite.me bezoekt, krijg je toegang tot de webserver. Bovendien beveiligt Pagekite de verbinding automatisch met ssl, waardoor je website ook met https is te bezoeken, zelfs als je op je webserver geen ssl hebt geconfigureerd.

©PXimport

Pagekite beveiligen

Zodra je iets publiek aanbiedt op internet, is het heel belangrijk dat je beveiliging goed zit. De vorige opdrachten delen je webserver gewoon voor iedereen op internet. Dat is oké als dat de bedoeling is, maar niet als het om bestanden met gevoelige inhoud gaat die je alleen met specifieke personen wilt delen.

De beveiliging hoor je eigenlijk in de server zelf in te bouwen, maar Pagekite biedt ook enkele eenvoudige manieren om de toegang tot je server te beperken. Met de optie +password/GEBRUIKERSNAAM=WACHTWOORD stel je in dat alleen wie de gegeven gebruikersnaam en het wachtwoord dat erbij hoort toegang krijgt tot de server.

Met de optie +ip/IPADRES=ok of +ip/SUBNET=ok beperk je de toegang tot je server toe een specifiek ip-adres of subnet. Je kunt bovendien meerdere keren de opties +ip combineren om meerdere adressen of bereiken toe te voegen, of meerdere keren +password om meerdere gebruikers toegang te geven.

SSH

Een andere server die heel handig is om op internet te delen, is ssh (Secure SHell). Op die manier log je bijvoorbeeld van overal op je Raspberry Pi in. Let op: verander dan wel het standaard wachtwoord van de gebruiker pi met de opdracht

passwd

Zorg eerst dat de ssh-server zeker ingeschakeld is. Voer daarvoor

sudo raspi-config

uit en schakel de ssh-server in onder Advanced Options. Laat dan Pagekite de ssh-server op internet delen met de volgende opdracht:

pagekite 22 ssh:jesubdomein.pagekite.me

Pagekite beschouwt alles wat je deelt wel als een webserver. Daardoor moet je je ssh-client nog configureren om de toegang tot de ssh-server via een http-proxy te laten verlopen. In Putty doe je dat door na het invoeren van de hostnaam (jesubdomein.pagekite.me) links naar Connection / Proxy te gaan en dan HTTP aan te vinken. Vul dan bij Proxy hostname je Pagekite-domein in en bij Port poortnummer 443. Klik tot slot op Open om de ssh-verbinding naar je Pi te starten.

Kites beheren

Tot nu toe hebben we ad hoc Pagekite gestart om servers toegankelijk te maken. Zodra we op Ctrl+C drukten, stopte Pagekite. Maar je kunt ook Pagekite automatisch laten starten bij het starten van je Pi en een vooraf geconfigureerde lijst van servers toegankelijk maken.

Schakel allereerst Pagekite in, zodat het programma automatisch gestart wordt:

sudo systemctl enable pagekite.service

En start de service ook:

sudo systemctl start pagekite.service

Nu kun je servers aan de configuratie van Pagekite toevoegen. Dat doe je met dezelfde opdrachten als we hierboven gebruikten, maar dan met de extra optie --add. Wil je bijvoorbeeld je lokale webserver via Pagekite beschikbaar maken, voer dan de volgende opdracht uit:

pagekite --add 80 jesubdomein.pagekite.me

Voer op deze manier alle servers die je wilt delen in. Op elk moment kun je opvragen welke servers Pagekite in zijn configuratie heeft staan:

pagekite --list

Tijdelijk een server uitschakelen is ook mogelijk:

pagekite --disable ssh:jesubdomein.pagekite.me

Of een server uit de configuratie van Pagekite verwijderen:

pagekite --remove ssh:jesubdomein.pagekite.me

Kopieer daarna het configuratiebestand naar de systeemconfiguratie van Pagekite:

sudo cp ~/.pagekite.rc /etc/pagekite.d/10_account.rc

En herstart Pagekite met:

sudo systemctl restart pagekite.service

Nu zijn al je geconfigureerde servers automatisch na het starten van je Raspberry Pi bereikbaar op internet via Pagekite.

Tot slot

Nu je Pagekite onder de knie hebt, is het beschikbaar maken van servers slechts een kwestie van wat extra configuratie. De mogelijkheden zijn eindeloos. Draai bijvoorbeeld een vnc-server op je Pi om de desktopomgeving van je Pi over internet te delen. Op die manier start je van overal grafische programma’s op je Pi op alsof je er vlak voor zit.

Of draai GNU MediaGoblin op je Pi om een fotogalerij aan te bieden. Of draai Owncloud of Nextcloud om cloudopslag zoals Dropbox op je eigen server te draaien en er van overal toegang tot te krijgen. Of wie weet wil je wel je eigen Diaspora-node thuis draaien om deel te nemen aan het gelijknamige gedistribueerde sociale netwerk.

Op de website van Pagekite vind je allerlei informatie over het instellen van deze en nog veel andere servers voor gebruik met Pagekite. Houd er wel rekening mee dat sommige pagina’s op de wiki wat verouderd zijn en niet meer gelden voor nieuwere versies van Pagekite en de besproken servers.

▼ Volgende artikel
AI-tip: zo maak je zelf (heel snel!) een geïllustreerd kinderboek met Storybook
Huis

AI-tip: zo maak je zelf (heel snel!) een geïllustreerd kinderboek met Storybook

Word de held van je (klein)kinderen door hen te verrassen met een uniek, zelfgemaakt verhalenboek. Laat hen zelf de grote lijnen van het verhaal bedenken en zie hoe je dankzij Storybook in een handomdraai een prachtig digitaal boekje creëert, compleet met een mooie cover en bijpassende illustraties.

Dit gaan we doen

In dit artikel laten we zien hoe je met Google Storybook een persoonlijk prentenboek maakt. Je leest hoe je een goede prompt schrijft, hoe het boek automatisch wordt opgebouwd met tekst en illustraties en welke extra opties er zijn, zoals voorlezen, delen en downloaden als pdf. Zo weet je precies wat je kunt verwachten en hoe je het resultaat afstemt op je (klein)kind.

Lees ook: Handige AI-apps voor mobiel

Stap 1: De prompt

Storybook draait op de Gemini AI-chatbot van Google. De functie is gloednieuw en op dit moment alleen te gebruiken via het web, niet via de Gemini-apps voor Android of iPhone. Het goede nieuws: Storybook is helemaal gratis. Je hoeft dus geen betaald abonnement te nemen om het uit te proberen. Wel moet je ingelogd zijn met je Google-account. Surf vervolgens naar: https://gemini.google.com/gem/storybook

Net als bij andere generatieve AI-tools start je met een tekstopdracht, de zogeheten prompt. In een paar zinnen beschrijf je het onderwerp. Of je kiest voor een uitgebreidere instructie, bijvoorbeeld: "Kun je een verhaal maken dat aan een kind uitlegt hoe het leven van een vlinder eruitziet?"

Geef Storybook een tekstopdracht.

Stap 2: Prentenboek van 10 pagina's

Boven het tekstvak vind je alvast enkele inspirerende voorbeelden van recente prompts, compleet met het bijbehorende verhaal. Denk aan: 'Mijn kind van 7 wil niet logeren bij oma. Maak een Storybook om haar te helpen hiermee om te gaan.' Je kunt je eigen prompt typen, maar ook inspreken: klik op het microfoontje, geef Gemini toegang tot je microfoon en vertel je opdracht. Enkele seconden later verschijnt het prentenboek op het scherm. Elk boek telt tien pagina's, inclusief een prachtige omslag én een door Gemini bedachte titel. Met iedere klik blader je door het verhaal. De tekst is verzorgd opgemaakt en de illustraties zijn verrassend sfeervol. Wij waren aangenaam verrast door de kwaliteit.

Naast iedere tekst staat een bijpassende illustratie.

Stap 3: Lezen of luisteren

Je kunt het verhaal natuurlijk gewoon lezen, maar Storybook heeft nog een extra troef: een ingebouwde voorleesfunctie. Daarbij kun je kiezen om alleen de huidige pagina te beluisteren of om vanaf de eerste pagina te beginnen. De hoogte van de stem is instelbaar, zodat je een toon kunt kiezen die het best bij het verhaal of de luisteraar past. En het plezier stopt daar niet: via de Deel-knop krijg je een unieke link naar jouw persoonlijke Storybook. Die kun je eenvoudig doorsturen naar familie, vrienden of de kinderen zelf, zodat ze het boekje op hun eigen toestel kunnen bekijken en beluisteren. Bovendien kun je het boekje ook downloaden als pdf. Wil je dat je kind ook offline kan bladeren, dan kun je het dus voor hem of haar printen.

Je ontvangt een link om het geïllustreerde verhaal te delen.

🧚Sprookjesboek geschreven?

👑 Daar hoort een prinsessenjurk bij!
▼ Volgende artikel
Gourmetten zonder stank: 10 ideeën die écht werken
© NilsZ - stock.adobe.com
Huis

Gourmetten zonder stank: 10 ideeën die écht werken

Gourmetten is misschien wel dé nationale volkssport tijdens de feestdagen. Maar hoe leuk de avond ook is, de ochtend erna is vaak minder feestelijk. Die doordringende vetlucht die in je gordijnen, bank en kleding is getrokken, ben je liever kwijt dan rijk. Met deze tien tips – verdeeld over wat je eet en wat je doet – blijft je huis een stuk frisser!

Dit gaan we doen

Stankvrij gourmetten is een kwestie van goede voorbereiding én de juiste nazorg. We splitsen de tien tips daarom op. We beginnen bij de basis: ingrediënten en spullen die nauwelijks rook veroorzaken. Vervolgens geven we je praktische hacks om, mocht er toch wat gourmetlucht blijven hangen, die direct weer uit je woonkamer te krijgen, zodat je de volgende ochtend wakker wordt in een fris huis.

Lees ook: Gourmetten nieuwe stijl: topfavoriet met een eigen twist

Ingrediënten & materialen

De meeste stank ontstaat niet door het gourmetstel zelf, maar door wat we erop leggen. Verbrande boter, karamelliserende suikers en spetterend vet zijn de grote boosdoeners. Met een paar slimme aanpassingen aan je boodschappenlijstje ben je de rookwolken voor.

Tip 1: Investeer in hittebestendige olie

De fout die bijna iedereen maakt: bakken in roomboter of standaard olijfolie. Deze vetten verbranden snel bij de hoge temperaturen van het gourmetten, wat zorgt voor die zware, scherpe walm. Kijk in de supermarkt eens schuin boven de olijfolie; daar vind je rijstolie of arachideolie. Deze oliesoorten hebben een veel hoger rookpunt en blijven stabiel als ze heet worden. Wil je het jezelf helemaal makkelijk maken? Koop dan een bakspray. Daarmee nevel je de pannetjes of de plaat licht in, waardoor je nooit te veel gebruikt en het vet niet onnodig staat te walmen.

Tip 2: Laat de kant-en-klare marinades staan

Die voorgemarineerde schotels uit de supermarkt zijn makkelijk, maar funest voor de luchtkwaliteit. De marinades zitten namelijk vaak vol suiker en water. Zodra dat de hete pan raakt, verbrandt de suiker en verdampt het vocht, met veel rook tot gevolg. Je kunt beter ongemarineerd vlees of vis kopen. Wil je toch smaak? Gebruik dan een dry rub (een droog kruidenmengsel) om het vlees vooraf te kruiden. Als je echt van sausjes houdt, kun je die beter koud op je bord toevoegen dan warm in het pannetje.

Tip 3: Kies voor 'droger' vlees en meer groente

Hoe meer vet er in het vlees zit, hoe meer het spettert en rookt. Hamburgers, worstjes en speklapjes zijn in feite kleine rookbommen. Kies liever voor magere opties zoals biefstuk, kipfilet, kalkoen of witvis. Daarnaast kun je de geuroverlast flink beperken door de verhouding vlees/groente om te draaien. Plakjes courgette, paprika, champignons en aubergine bakken vrijwel geurloos. Met een goede mandolineof groentesnijder maak je in een handomdraai dunne plakjes die snel gaar zijn, waardoor je minder lang hoeft te bakken.

Tip 4: Vervang die oude, bekraste pannetjes

Kijk voordat je begint eens kritisch naar je huidige gourmetstel. Zitten de pannetjes vol krassen en is de antiaanbaklaag versleten? Dan koekt je eten sneller aan, wat zorgt voor verbrandingsluchtjes die je de dag erna nog ruikt. Het is vaak helemaal niet nodig om een compleet nieuw apparaat te kopen; veel fabrikanten verkopen losse pannetjes of nieuwe bakplaten. Voor een paar tientjes bak je weer op een glad oppervlak, heb je minder olie nodig en ben je niet de hele avond bezig aangekoekte resten weg te schrapen.

Tip 5: Gebruik een gourmetstel met keramische coating

Ben je toch toe aan een heel nieuw apparaat? Let dan goed op de coating. Tegenwoordig zijn er gourmetstellen met een keramische bakplaat. Deze kunnen vaak hogere temperaturen aan zonder dat de laag beschadigt en ze zijn veel makkelijker schoon te maken.

Watch on YouTube

Zo ga je de strijd aan met de luchtjes in huis

Zelfs met de beste ingrediënten ontkom je niet aan enige baklucht. Gelukkig zijn er genoeg manieren om te voorkomen dat die geur permanent blijft hangen.

Tip 6: Zet een aromadiffuser aan

Een geurkaars maskeert de lucht vaak alleen maar, waardoor je een weeïge mengeling krijgt van lavendel en hamburger. Een betere optie is een elektrische aromadiffuser (ook wel vernevelaar genoemd). Dit apparaat verspreidt via koude waterdamp een constante, frisse geur naar keuze door de kamer, zonder dat er verbranding aan te pas komt. Kies voor essentiële oliën die bekend staan om hun verfrissende werking, zoals citroengras, eucalyptus of dennen. De waterdamp helpt bovendien meteen tegen de droge lucht in huis als de verwarming hoog staat.

Tip 7: Laat de luchtreiniger draaien

Misschien heb je er al eentje staan, en anders is dit het moment: de luchtreiniger. Let er bij aanschaf op dat het apparaat een koolstoffilter heeft, want alleen HEPA is niet genoeg voor kookluchtjes. Een koolstoffilter absorbeert gassen en geuren. Zet het apparaat niet pas aan als je naar bed gaat, maar laat hem al draaien zodra het gourmetstel aangaat. Heb je een modern exemplaar met een app? Zet hem dan alvast op de hoogste stand voordat de eerste walm ontstaat.

Tip 8: Ventileer flink

Ramen openzetten klinkt logisch, maar doe het wel slim. Eén raampje op een kier doet weinig. Je hebt trek nodig. Zet aan weerszijden van de woning een raam of rooster open zodat de luchtstroom de damp direct meeneemt. Vind je het te koud worden? Zet de verwarming gerust tijdelijk wat hoger; de kosten daarvan wegen niet op tegen de stomerijkosten van je gordijnen. Plaats eventueel een simpele tafelventilator in de buurt van het gourmetstel (niet erop gericht, maar richting het open raam) om de rook een handje te helpen de juiste kant op te gaan.

Tip 9: Azijn & koffie

Het is een klassieker uit grootmoeders tijd, maar hij werkt nog steeds: azijn neutraliseert. Je kunt bakjes azijn neerzetten, maar voor het zware werk kun je na het eten beter even een pannetje water met een flinke scheut schoonmaakazijn op het fornuis koken. Laat de afzuigkap uit en laat de damp door de kamer trekken. Vind je de azijnlucht zelf te heftig? Gooi er dan wat citroenschillen, een kaneelstokje of kruidnagel bij. Zo ruikt je huis direct weer naar winterse gezelligheid in plaats van naar een snackbar. Wat ook kan, is koffie. Zet na het eten een paar schaaltjes met gemalen koffie (snelfiltermaling) in de woonkamer. De koffie neutraliseert de zware baklucht en vervangt deze door een neutraal, aards aroma. Voor een nog sterker effect kun je wat koffiebonen op een warme onderzetter leggen; door de restwarmte verspreiden ze een subtiele geur die de gourmetlucht naar de achtergrond verdrijft.

Tip 10: Maak meteen met schoon

Het is verleidelijk om na het eten uit te buiken op de bank en de ravage te laten voor wat het is. Doe het niet. Zolang het gourmetstel vet en warm in de kamer staat, blijft het geur verspreiden. Haal direct na het eten een stuk keukenrol over de plaat. Gebruik daarna een sopje van afwasmiddel en warm water om de plaat en de tafel (want ja, vetnevel komt overal) af te nemen. Geloof ons, door hier na het eten even een paar minuten tijd voor vrij te maken, bespaar je jezelf de volgende ochtend een hoop gourmetluchtfrustratie!