ID.nl logo
Huis

Veiligheidscertificaat https op Apache installeren

In deze workshop laten we zien hoe de installatie en configuratie van Let’s Encrypt werkt in combinatie met de populaire webserver Ubuntu. We kiezen voor een recentere versie van Apache met http/2-ondersteuning.

Hier laten we zien hoe je een certificaat kunt installeren voor een eenvoudige website die draait onder Apache. Als besturingssysteem gebruiken we een minimale installatie van Ubuntu 16.04 LTS (Xenial Xerus). Verder gaan we in deze workshop uit van Apache als webserver. We beginnen met een versie installatie, maar als je Apache al hebt draaien kun je de stappen aanpassen voor je eigen situatie.

We profiteren graag van de extra snelheid van http/2 bij het serveren van pagina’s via https. Hiervoor is minimaal Apache 2.4.17 nodig. Hoewel Ubuntu daaraan voldoet bevat het niet de voor http/2 vereiste mod_http2-module, die nog als experimenteel te boek staat. Er is wel een mogelijkheid om die module toe te voegen, maar gezien enkele kwetsbaarheden is het verstandig om een recentere versie van Apache 2.4.x te installeren, bij voorkeur 2.4.25 of hoger. Die bevat ook meteen de mod_http2-module. Dat is waar we deze workshop dan ook mee beginnen.

Nieuwste versie Apache

Log voor onderstaande stappen in als root, bijvoorbeeld via ssh met Putty. Controleer met

apt-cache policy apache2

apache2 welke versie van Apache eventueel reeds is geïnstalleerd en welke versies beschikbaar zijn via de huidige bronnen. Om over de laatste versie van Apache te beschikken voegen we een veelgebruikte bron toe, ook wel repository genoemd, van een derde partij. Hiervoor zijn enkele tools nodig die je installeert met

apt-get install software-properties-common python-software-properties

Voeg daarna de repository toe met

add-apt-repository ppa:ondrej/apache2

Druk op enter op door te gaan en werk bij met

apt-get update

Een

apt-cache policy apache2

laat zien dat je nu een recentere versie is. Je kunt nu Apache installeren of, als het al eerder is geïnstalleerd, updaten met

apt-get install apache2

Met

apachectl -v

zie je welke versie is geïnstalleerd. Momenteel is 2.4.25 beschikbaar. Vervolg met

apt-get upgrade

om eventuele aanvullende pakketten bij te werken.

Virtual host aanmaken

Apache maakt na de installatie een standaard virtual host aan in de map /var/www/html. Die pagina zie je als je het ip-adres van de server opent in een browser. De configuratie van deze virtual host vind je in 000-default.conf in de map /etc/apache2/sites-available. Daar vind je ook default-ssl.conf voor de ssl-configuratie. Die twee bestanden kun je eventueel als basis voor andere virtual hosts gebruiken, als je meer dan één website wilt activeren.

Je zou voor een https-website zelfs andere content kunnen laten zien dan voor de http-versie door via DocumentRoot naar een andere map te verwijzen. Belangrijk voor die virtual hosts maar ook voor de aanvraag van certificaten is dat je de domeinnaam in dat configuratiebestand zet als ServerName samen met eventuele aliassen. In deze workshop gebruiken we domein.nl als basisdomein en www.domein.nl als alias. Geef dit in 000-default.conf aan met

ServerName domein.nl

met in de regel daaronder

ServerAlias www.domein.nl

of eventueel

ServerAlias *.mijndomein.nl

om meteen alle subdomeinen af te vangen.

Http2-module activeren

Om de http2-module met Apache te gebruiken moet je deze eerst activeren met

a2enmod http2

Activeer ook ssl met

a2enmod ssl

en activeer de virtual host met

a2ensite default-ssl

. Hiermee wordt een symlink aangemaakt in de map /etc/apache2/sites-enabled naar het bestand /etc/apache2/sites-available/default-ssl.conf zodat deze in de actieve Apache-configuratie wordt opgenomen. Herstart daarna Apache met

systemctl restart apache2

om de nieuwe configuratie actief te maken. Test de ssl-verbinding door https://ipadres in de browser te openen. Je krijgt een waarschuwing omdat het self-signed certificaat niet wordt vertrouwd. Zoals je in default-ssl.conf kunt zien gaat het om het certificaat /etc/ssl/certs/ssl-cert-snakeoil.pem. Wil je meer inzicht dan kun je in Chrome met Ctrl+Shift+I naar Hulpprogramma’s voor ontwikkelaars. Het tabblad Security geeft details over het bewuste certificaat. Om van de waarschuwing af te komen gaan we het certificaat vervangen door een certificaat van Let’s Encrypt.

Certbot installeren en certificaat aanvragen

Voor het ophalen van het certificaat heb je een acme-client op je server nodig. Wij kiezen Certbot. De ontwikkelaars houden voor Ubuntu een speciale repository bij met de laatste versie. Het is verstandig die te gebruiken omdat de tool nog actief wordt ontwikkeld. Met

add-apt-repository ppa:certbot/certbot

voeg je deze repository toe. Druk op enter om door te gaan en werk bij met

apt-get update

Installeer vervolgens Certbot met

apt-get install python-certbot-apache

De tool kan voor Apache automatisch een certificaat aanvragen én installeren. We willen dat het certificaat zowel voor het basisdomein domein.nl als voor www.domein.nl geldig is en moeten ze daarom beide opgeven. Dat kan met

certbot --apache -d domein.nl -d www.domein.nl

Begin altijd met het basisdomein, in dit geval domein.nl, gevolgd door alle subdomeinen, met een limiet van 100. Een wildcard zoals je bij sommige duurdere certificaten zien is helaas niet mogelijk bij Let’s Encrypt, je zult dus alle namen op moeten geven. Certbot vraagt vervolgens om je e-mailadres en een paar privacyvoorkeuren.

Als laatste kun je kiezen of je toegang via zowel http als https wilt toestaan of dat http-verzoeken moeten worden omgeleid naar https. We kiezen de eerste optie. In de volgende workshop laten we zien hoe je die tweede optie handmatig activeert zodat je er meer controle over hebt.

Het nieuwe certificaat is direct actief. De bestanden die bij het certificaat horen vind je in de map /etc/letsencrypt/live/domein.nl. Je kunt het proberen door je website via https te bezoeken. De configuratie voor de https-website is opgenomen in /etc/apache2/sites-available/000-default-le-ssl.conf. Je ziet dat Let’s Encrypt de algemene ssl-configuratie in /etc/letsencrypt/options-ssl-apache.conf zet. Die wordt met alle virtual hosts gedeeld, wat wel zo handig is als je enkele aanpassingen wilt maken.

©PXimport

Http/2 aanzetten

We moeten, in 000-default-le-ssl.conf, alleen nog expliciet http/2 aanzetten voor deze website. Daarvoor voeg je de regel Protocols h2 http/1.1 toe. Het bestand ziet er dan als volgt uit. Herstart Apache na de aanpassing.

<virtualhost *:443=""> Protocols h2 http/1.1 ServerName mijndomein.nl ServerAlias *.mijndomein.nl ... </virtualhost>

Je kunt http/2 overigens ook met een globale instelling direct voor iedere site actief maken, maar omdat het nog vrij nieuw is is het verstandig dit per virtual host te doen. Op bijvoorbeeld

https://tools.keycdn.com/http2-test

kun je controleren of http/2 werkt, of je kunt de headers onderzoeken met de hulpprogramma’s van Chrome en Firefox. Hoewel je http/2 ook voor de http-versie kunt aanzetten heeft dat weinig zin, omdat browsers het protocol alleen voor https-verkeer ondersteunen. Een mooi extraatje van http/2 is de push-mogelijkheid waarmee je bestanden, zoals stylesheets of fonts, kunt voorladen.

In een volgende workshop gaan we een en ander verder testen én optimaliseren.

▼ Volgende artikel
Nieuw van Philips: Café Aromis 8000 combineert barista-kwaliteit met persoonlijke instellingen
© Philips
Huis

Nieuw van Philips: Café Aromis 8000 combineert barista-kwaliteit met persoonlijke instellingen

Philips breidt zijn koffielijn uit met de nieuwe Café Aromis 8000 Series, een volautomatische espressomachine die meer dan vijftig warme en koude koffievariaties kan bereiden. De machine combineert een strak design met slimme technologie, bedoeld om thuis koffie van café-kwaliteit te zetten zonder gedoe.

De kern van het nieuwe model espressomachine is de BrewExtract-technologie, die zorgt voor een rijkere smaak. Door meer versgemalen bonen te doseren en deze steviger aan te drukken, komt er meer aroma vrij. De gebruiker kan bovendien kiezen uit zeven intensiteitsniveaus om de smaak af te stemmen op persoonlijke voorkeur.

Wat doet BrewExtract?

De BrewExtract-technologie van Philips optimaliseert de extractie van koffie door de juiste hoeveelheid gemalen bonen te doseren en met hogere druk aan te drukken. Daardoor komt er meer smaak en aroma vrij, vergelijkbaar met de manier waarop professionele espressomachines in cafés werken.

Voor liefhebbers van melkdranken heeft Philips het LatteGo Pro-melksysteem toegevoegd. Dit slangvrije systeem maakt zowel warm als koud melkschuim en kan binnen tien seconden worden schoongemaakt. De zetgroep is eenvoudig uitneembaar en de losse onderdelen zijn geschikt voor de vaatwasser.

Een opvallende nieuwe functie is de Barista Assistant. Deze leert de smaakvoorkeuren van de gebruiker kennen en past de instellingen daarop aan. Via de HomeID-app kunnen gebruikers de machine koppelen aan hun smartphone om koffie op afstand te zetten, recepten te personaliseren of de machine met Alexa-spraakcommando's te bedienen. De machine ondersteunt tot acht gebruikersprofielen, zodat iedereen in huis zijn eigen koffierecept kan opslaan.

©Philips

Het ontwerp van de Café Aromis is modern en stil. De behuizing heeft metalen accenten, terwijl het SilentBrew-systeem het geluid tijdens het zetten beperkt. Het 4,3 inch TFT-touchscreen zorgt voor een overzichtelijke bediening.

De Philips Café Aromis 8000 Series is verkrijgbaar in zilver, zwart en grijs en heeft een adviesprijs van 999 euro.

▼ Volgende artikel
Waar voor je geld: 5 slimme thermostaat-sets voor een energiezuinig(er) huis
Energie

Waar voor je geld: 5 slimme thermostaat-sets voor een energiezuinig(er) huis

Bij ID.nl zijn we gek op producten voor een mooie prijs of die iets bijzonders te bieden heeft. Een paar keer per week gaan we daarom op zoek naar zulke producten. Wil je je huis slim en energiezuinig(er) maken? Een starterset met een slimme thermostaat en radiatorkranen is dan een mooi begin.

Om je huis wat energiezuiniger te maken is het gebruik van de CV-ketel en de verwarming een goed begin om deze wat beter reguleren. En in plaats van dat je dat zelf helemaal handmatig moet bijhouden, kun je kiezen voor een slimme thermostaat die dat voor je doet. Wij vonden vijf handige startersets met slimme thermostaat en extra apparatuur zoals radiatorkranen waarmee je direct aan de slag kunt.

TP‑Link KE100 KIT

Met deze set van TP‑Link maak je je radiatoren afzonderlijk aanstuurbaar. De doos bevat twee thermostatische radiatorkranen en een hub. Die hub vormt het hart van het systeem: je verbindt hem met je wifi en plaatst de radiatorkranen op de bestaande ventielen. Vervolgens kun je via de Kasa Smart‑app voor iedere ruimte een eigen temperatuur instellen. Dankzij het ingebouwde schema stel je vaste tijdstippen in waarop de radiatoren opwarmen of juist lager worden gezet. De apparaten communiceren draadloos met de hub, waardoor je ook meerdere kamers kunt bedienen.

Je kunt tot wel 32 radiatoren op één hub aansluiten. De set werkt samen met stemassistenten zoals Google Assistant, Amazon Alexa en Siri, zodat je de temperatuur per kamer kunt aanpassen zonder je telefoon erbij te pakken. Er is een vorstbeschermingsmodus die de radiator inschakelt als de temperatuur te laag wordt, handig bij koude winters. Via meegeleverde adapters passen de radiatorkranen op de meeste ventielen. En omdat ze op batterijen werken hoef je geen stroompunt in de buurt te hebben.

Imou TRV1 Kit

Dit starterspakket van Imou is bedoeld voor wie één of meerdere radiatoren los wil regelen en via internet wil bedienen. In de doos zit een thermostatische radiatorkraan en een gateway; de gateway verbindt de kraan met je thuisnetwerk via Zigbee. De kraan meet de temperatuur en stuurt het ventiel nauwkeurig aan tussen 5 °C en 35 °C, met stappen van een halve graad. Je programmeert via de Imou Life‑app een tijdschema of stelt handmatig de gewenste temperatuur in. De gateway heeft een bereik van honderd meter, zodat je de set eventueel met extra kranen kunt uitbreiden tot een maximaal aantal van 32 radiatoren.

Handige functies zijn open‑raamdetectie, antivriesstand en een kinderslot. Wanneer er een raam openstaat schakelt de kraan automatisch lager om energie te besparen. Batterijen leveren de stroom; Imou levert AA‑batterijen en diverse adapters mee. De set werkt samen met Amazon Alexa en Google Assistant zodat je via spraakcommando’s de verwarming aanstuurt. Dankzij de heldere led‑ring op de knop zie je in één oogopslag welke modus actief is. Hierdoor is het systeem geschikt voor wie op een eenvoudige manier per kamer wil verwarmen zonder ingrijpende installatie.

Hombli Smart Radiator Thermostat Starterkit

Hombli biedt een set met twee radiatorthermostaten en een bridge om de knoppen via de Hombli‑app te bedienen. Je plaatst de knoppen op de bestaande ventielen, waarna je met de bridge de verbinding maakt tussen de knoppen en je wifi‑netwerk. Met de app stel je per kamer een weekprogramma in, zodat je bijvoorbeeld ’s avonds in de woonkamer verwarmt en overdag juist in de werkkamer. De thermostaten hebben een energieverbruiksmonitor waarmee je ziet hoeveel warmte elke radiator gebruikt. Er is ook een geofencing‑optie: als je het huis verlaat, gaat de verwarming automatisch lager.

Open‑raamdetectie voorkomt onnodig stoken als er geventileerd wordt. De knoppen communiceren via bluetooth low energy; daardoor gaan de AA‑batterijen volgens Hombli tot anderhalf jaar mee. Je bedient het systeem met de app of via spraakassistenten zoals Google Assistant, Amazon Alexa en Siri. Omdat de bridge meerdere knoppen kan koppelen, kun je later uitbreiden naar extra radiatoren. Via de app kun je ook alle gekoppelde knoppen gelijktijdig aanpassen, waardoor het systeem geschikt is voor blok‑ of stadsverwarming.

Tado Slimme Radiatorknop Starterskit V3+

Deze starterskit van tado° is bedoeld voor woningen waar elke radiator apart geregeld moet worden zonder centrale thermostaat. De verpakking bevat één slimme radiatorkraan en een internetbridge. Je vervangt de bestaande knop door de slimme kraan en koppelt de bridge aan je router. Via de tado°‑app regel je de temperatuur per kamer en stel je uitgebreide programma’s in, zoals een week- of weekendprogramma. De app gebruikt geolocatie, open‑raamdetectie en weersinformatie om de verwarming automatisch aan te passen.

De set werkt met spraakbesturing via Amazon Alexa, Apple HomeKit en Google Assistant. Dankzij de internetbridge kun je extra radiatorkranen toevoegen om meer kamers aan te sturen. tado° adviseert om per radiator een slimme knop te plaatsen voor optimale werking. Volgens de fabrikant kun je tot 31 % energie besparen doordat de app de verwarming afstemt op je aanwezigheid. Batterijen zorgen voor de stroomvoorziening. Voor geavanceerde functies zoals automatische geofencing heb je een optioneel abonnement nodig, maar de basisbediening via de app blijft beschikbaar zonder extra kosten.

Bosch EasyControl Set CT 200

Bosch levert een compleet pakket waarmee je elke ruimte afzonderlijk kunt verwarmen. De set bevat de EasyControl CT 200‑thermostaat en drie draadloze radiatorthermostaten. Je installeert de slimme kraankoppen eenvoudig op de bestaande ventielen; dankzij meegeleverde adapterringen passen ze op de meeste radiatoren. Vervolgens verbind je de CT 200 met je wifi en stel je via de EasyControl‑app voor maximaal negentien kamers afzonderlijke temperaturen en klokprogramma’s in. De thermostaat toont energieverbruik in grafieken en heeft een zelflerende “Coming Home”‑functie; via geofencing detecteert hij of je thuis bent en past hij de verwarming automatisch aan. Je kunt de set bedienen via het aanraakscherm of met spraakassistenten zoals Google Nest, Amazon Alexa en Siri, en integreren met IFTTT.

De radiatorthermostaten werken draadloos en laten zich via een unieke QR‑code koppelen aan de CT 200; in de app stel je per radiatorknop een individueel schema in, zodat kamers alleen worden verwarmd wanneer dat nodig is. De batterijen zijn meegeleverd en de kleppen zijn zowel horizontaal als verticaal te gebruiken. Daarnaast meldt de app storingen en toont zij de waterdruk van je cv‑installatie. Voor open haarden is er een speciale functie: de cv‑ketel levert geen warmte aan de kamer met open haard terwijl andere vertrekken comfortabel warm blijven.