Beheer zelf je wachtwoorden met Bitwarden

© PXimport

Beheer zelf je wachtwoorden met Bitwarden

Geplaatst: 29 november 2019 - 08:07

Aangepast: 14 december 2022 - 13:24

Koen Vervloesem

Een wachtwoordkluis in de cloud is handig, want dan heb je op al je apparaten toegang tot je wachtwoorden. Maar dan moet je de aanbieder wel vertrouwen. Een andere oplossing is Bitwarden: een opensource-wachtwoordkluis die je ook op een server thuis kunt installeren. Zo profiteer je van de voordelen van een cloudgebaseerde wachtwoordkluis, maar behoud je de volledige controle over je wachtwoorden.

Een wachtwoordkluis neemt de taak van je over om wachtwoorden te onthouden, zodat je voor elk account een uniek en sterk wachtwoord kunt gebruiken. Het resultaat is dat je accounts veiliger zijn. Maar er staan ook risico’s tegenover. Doordat je je wachtwoorden zelf niet meer onthoudt, kun je ze allemaal in één keer verliezen. En als iemand erin slaagt om in te breken in je wachtwoordkluis, lopen in één klap al je accounts gevaar.

De keuze voor een specifieke wachtwoordkluis is dus niet iets om lichtzinnig over te doen, je legt immers al je eieren in één mandje. Een interessante oplossing is Bitwarden: zowel de clients als de server zijn opensource, en de clients bestaan voor Windows, macOS, Linux, alle mogelijke webbrowsers, Android en iOS. Al je wachtwoorden worden aan de kant van de client versleuteld, zodat de Bitwarden-server ze niet ziet, en je kunt je toegang extra beveiligen met tweefactorauthenticatie. Bovendien biedt Bitwarden ook extra functionaliteit om veilige wachtwoorden te genereren en dubbel gebruik van wachtwoorden te signaleren.

01 Op je eigen server of niet?

In tegenstelling tot de meeste andere cloudgebaseerde wachtwoordkluizen kun je Bitwarden ook op je eigen server installeren. Dat is de oplossing die onze voorkeur verdient, maar eerst bekijken we wat de ontwikkelaar van Bitwarden (het bedrijf 8bit Solutions) op zijn server aanbiedt. De clients werken allemaal met zowel de server van 8bit Solutions als je eigen server, dus je kunt gerust eerst de officiële server uitproberen om te zien of Bitwarden iets voor je is, voordat je de server zelf installeert.

Als je gebruikmaakt van de officiële server, is de basisversie gratis. Die basisversie biedt al best uitgebreide mogelijkheden. Je krijgt op een onbeperkt aantal toestellen toegang tot je wachtwoordkluis, waarin je een onbeperkt aantal accounts kunt opslaan. Ook tweefactorauthenticatie en het genereren van veilige wachtwoorden behoren tot de mogelijkheden.

Voor 10 dollar per jaar upgrade je naar de premiumversie, die je onder andere rapporten geeft over je wachtwoordhygiëne. Verder heeft 8bit Solutions ook nog accounts voor organisaties. Er is een gratis organisatie-account voor twee personen, ideaal voor een koppel dat wachtwoorden met elkaar wil delen. Voor 1 dollar per maand heb je een groepsaccount voor vijf gebruikers, handig voor gezinnen. En voor bedrijven zijn er nog extra accounttypes met onder andere logs, integratie met directoryservices zoals Active Directory en LDAP, en gebruikersgroepen. Als je niet graag je eigen server beheert, probeer dan zeker eens een van deze accounttypes uit.

 

© PXimport

02 Op welke server?

Als je besloten hebt om zelf een Bitwarden-server te draaien, is de vraag: waar? Je kunt dat op een vps doen, waarop je bijvoorbeeld Ubuntu Server of Debian geïnstalleerd hebt. Daardoor heb je overal toegang tot je wachtwoordkluis. Dat is het meest flexibel, maar brengt ook risico’s met zich mee: omdat je server publiek toegankelijk is, dien je veel aandacht te besteden aan de beveiliging.

Een andere optie is om de Bitwarden-server in je thuisnetwerk te draaien, bijvoorbeeld op je nas of een Linux-server. Je kunt dit nu ook publiek toegankelijk maken via port-forwarding in je router. Een andere optie is om de Bitwarden-server alleen op je thuisnetwerk toegankelijk te maken.

Dat klinkt onhandiger dan het is: omdat je Bitwarden-clients hun wachtwoordkluis bij elke inlog en periodiek synchroniseren met de server, heb je altijd een versleutelde kopie van je wachtwoordkluis. Zo kun je ook onderweg, als je geen toegang hebt tot je Bitwarden-server, bij je wachtwoorden. Wil je onderweg toch op een veiliger manier toegang krijgen tot je Bitwarden-server, draai dan een vpn-server in je thuisnetwerk, samen met een dienst voor dynamische dns. Zo kun je via een vpn-verbinding naar je dynamische dns bij je server.

03 Bitwarden of Bitwarden_rs?

Dan is er nog één keuze die je dient te maken: draai je de serversoftware van Bitwarden zelf of een implementatie van een derde partij? Bitwarden geeft instructies over hoe je zijn serversoftware op je eigen server kunt installeren, maar dat is vrij bewerkelijk. Bovendien zijn de systeemvereisten behoorlijk zwaar: 2 GB RAM, 10 GB schijfruimte en een 1,4GHz-processor.

Gelukkig heeft Daniel García een onofficiële server geschreven die compatibel is met de Bitwarden-api: bitwarden_rs. Die is volledig compatibel met alle Bitwarden-clients en stelt heel wat minder eisen. En als je Ansible-NAS op een Ubuntu-server draait, kun je heel eenvoudig Bitwarden_rs in de vorm van een Docker-container draaien (zie de masterclass over Ansible-NAS in Computer!Totaal 9). Dat is dan ook de aanpak die we in dit artikel gebruiken: we gaan ervan uit dat je Ansible-NAS op Ubuntu 18.04 draait in je thuisnetwerk, en installeren daarmee Bitwarden_rs. Gebruik je een andere configuratie, zoek dan in de wiki van Bitwarden_rs hoe je het programma zelf in een Docker-container installeert.

 

© PXimport

04 Bitwarden_rs inschakelen

Log in op je Ubuntu-server met Ansible-NAS. Creëer eerst een willekeurige lange tekenreeks:

openssl rand -base64 48

Kopieer ze naar je klembord. Open dan het configuratiebestand van Ansible-NAS:

cd ansible-nas

nano group_vars/all.yml

Schakel Bitwarden_rs in met de volgende regel onder # Password Management:

bitwarden_enabled: true

Zoek dan verder naar de extra opties voor Bitwarden onder het kopje ### Bitwarden. Zorg dat er de volgende twee regels staan, met de willekeurige tekenreeks die je gekopieerd had:

bitwarden_admin_token: q0xoPiDMpsP4ZXA5KqoXO4wAkMGt/fx0tofyuSHH96e3U3H8DA9Hr8T8lFpC3CnM

bitwarden_allow_signups: true

 

© PXimport

05 Externe toegang en tls

Standaard maakt Bitwarden_rs gewoon gebruik van poort 80 voor een onversleutelde http-verbinding. Met onze wachtwoorden nemen we geen risico’s, dus daar willen we https van maken. Tegelijk willen we dat de server ook van buiten ons netwerk bereikbaar is. Gelukkig bestaat er een eenvoudige manier om zowel toegang van buitenaf als automatische aanmaak en hernieuwing van tls-certificaten af te handelen: Traefik.

Ansible-NAS maakt het wel heel eenvoudig om diensten zoals Bitwarden_rs via Traefik bereikbaar te maken. Zet in het begin van het configuratiebestand van Ansible-NAS de volgende regel:

traefik_enabled: true

Verder vul je de dynamische domeinnaam in die je gebruikt:

ansible_nas_domain: example.com

06 Cloudflare DDNS

Ervan uitgaande dat je al een domeinnaam bij een registrar hebt, creëer je nu een gratis Cloudflare-account en voeg je je domeinnaam toe. Cloudflare importeert je dns-records. Vervang bij je registrar je huidige nameservers door die van Cloudflare. Het kan 24 uur duren voordat Cloudflare de dns-servers van je domein beheert.

Vul nu in het configuratiebestand van Ansible-NAS de volgende regel in:

cloudflare_ddns_enabled: true

Zoek in je profiel van Cloudflare op het tabblad API Tokens naar de Global API Key en klik op View. Kopieer de sleutel en vul die in op de volgende regel in het configuratiebestand:

cloudflare_api_key: abcdeabcdeabcdeabcde1234512345

Maak tot slot Bitwarden extern toegankelijk met:

bitwarden_available_externally: "true"

Sla je wijzigingen op. Zodra Cloudflare de dns-servers van je domein beheert, maak je bij je domeininstellingen een ‘wildcard-domein’ aan: bij je dns-records vul je *.example.com in en bij het ip-adres het huidige publieke ip-adres van je internetverbinding, dat je vindt door www.whatismyip.com te bezoeken. Klik op de oranje wolk ernaast zodat die grijs wordt, en klik daarna op Add Record.

Dan hoef je nu alleen nog poort 443 in je router te forwarden naar de machine waarop Ansible-NAS staat. Hoe dat gaat, hangt af van het model. Zoek bij ‘port forwarding’, ‘firewall’ of ‘NAT’. Pas daarna de gewijzigde configuratie van Ansible-NAS toe met:

ansible-playbook -i inventory nas.yml -b -K

 

© PXimport

07 Gebruiker aanmaken

Als je nu in je webbrowser hiernaartoe gaat, kun je een account aanmaken. Vul je e-mailadres, je naam en een hoofdwachtwoord in. De veiligheid van je wachtwoordkluis hangt uiteraard af van dit hoofdwachtwoord waarmee al je wachtwoorden versleuteld worden.

Je hoofdwachtwoord moet lang genoeg zijn (minstens twaalf tekens en het liefst twintig of meer) en niet te raden. Maar dan is het natuurlijk ook voor jou moeilijk te onthouden. Diceware (zie het kader ‘Sterk hoofdwachtwoord met Diceware’) is een interessante manier om een veilige wachtwoordzin te genereren die je relatief gemakkelijk onthoudt. Je kunt ook een wachtwoordhint kiezen die je via e-mail krijgt wanneer je je hoofdwachtwoord vergeten bent, maar dat is optioneel. We raden af om dit te gebruiken. Klik daarna op Versturen om je account aan te maken.

Je krijgt nu de Bitwarden Web Vault te zien. Dit is een webinterface voor je wachtwoordkluis. We gaan dit even negeren. Keer terug naar het configuratiebestand van Ansible-NAS om ervoor te zorgen dat er geen nieuwe gebruikers kunnen worden geregistreerd:

bitwarden_allow_signups: false

Pas vervolgens de configuratie toe:

ansible-playbook -i inventory nas.yml -b -K -t bitwarden

Sterk hoofdwachtwoord met Diceware

 

© PXimport

08 Browserextensie

De gemakkelijkste manier om Bitwarden te gebruiken, is met de browserextensies. Installeer de extensie voor je favoriete webbrowser. Na de installatie nestelt het icoontje zich in je werkbalk rechts bovenaan. Klik je erop, dan vraagt de extensie om in te loggen of een account te creëren. Een account hebben we zojuist al aangemaakt, maar klik eerst op het instellingenicoontje linksboven.

Vul onder Zelfgehoste omgeving bij Server-URL je domein bitwarden.example.com in. Als je niet gebruikmaakt van Traefik, kun je hier http://IPVANJESERVER:19080 invullen met het lokale ip-adres van je Ubuntu-server. Dan werkt je verbinding met je Bitwarden-server wel alleen op je lokale netwerk en niet via https, wat niet aan te raden is. Klik rechts bovenaan op Opslaan.

Ontgrendel nu je wachtwoordkluis door op Inloggen te klikken en dan je e-mailadres en hoofdwachtwoord in te voeren. Als je met een ontgrendelde wachtwoordkluis op een website inlogt, vraagt de extensie daarna om je accountnaam en wachtwoord op te slaan. Als je later opnieuw op die website wilt inloggen, hoef je maar op het icoontje in de werkbalk te klikken, op de website te klikken die de extensie herkent (je kunt zelfs meerdere accounts voor die website toevoegen, die worden allemaal getoond), en erop klikken om je accountnaam en wachtwoord automatisch in het aanmeldformulier in te vullen.

 

© PXimport

09 Wachtwoorden genereren

Een andere handige functie is het genereren van wachtwoorden. Stel dat je op een website een nieuw account aanmaakt, dan moest je zonder wachtwoordkluis een wachtwoord verzinnen dat je kon onthouden. Met Bitwarden hoeft dat niet meer: het is zelfs beter om een zo willekeurig mogelijk wachtwoord op te geven.

Open daarvoor de pop-up van de extensie en klik onderaan op het icoontje van de wachtwoordgenerator. Kies de lengte van het wachtwoord (twintig is een goede lengte) en de toegelaten tekentypes (standaard geen speciale tekens zoals !@#$%^&*, maar vink dat gerust aan). Boven krijg je het met die parameters gegenereerde wachtwoord te zien. Klik op Wachtwoord kopiëren en plak het in het wachtwoordveld van het account dat je aan het aanmaken bent. Nadat je account gecreëerd is, vraagt de extensie om het wachtwoord in je kluis op te slaan.

Overigens kun je ook altijd in de extensie op Login toevoegen klikken om handmatig een account en wachtwoord in te voeren. Elk account dat je toevoegt, wordt door de extensie op de achtergrond gesynchroniseerd met je eigen Bitwarden-server.

 

© PXimport

10 Webkluis

Heb je een aantal van je wachtwoorden toegevoegd, open dan de webgebaseerde kluis op je server (of http://IPVANJESERVER:19080), want die heeft ook nog enkele interessante functies. In het tabblad Hulpmiddelen vind je onder Hulpmiddelen dezelfde wachtwoordgenerator als in de browserextensie, en ook mogelijkheden om wachtwoorden uit andere wachtwoordkluizen te importeren of je Bitwarden-wachtwoordkluis te exporteren.

Onder Rapportages vind je enkele heel leerrijke rapporten die je wachtwoordgebruik kunnen verbeteren. Klik je op Verslag van blootgestelde wachtwoorden, dan controleert Bitwarden een hash van alle wachtwoorden in je kluis met bekende wachtwoordlekken en toont je welke van je wachtwoorden in die lekken aanwezig zijn. Dat betekent waarschijnlijk dat je een bestaand woord als wachtwoord gebruikt. Veranderen dus, die wachtwoorden!

11 Zwakke wachtwoorden

Een ander rapport is Verslag van dubbel gebruikte wachtwoorden. Hier krijg je te zien welke van je wachtwoorden je hergebruikt hebt in meerdere accounts. Als je vroeger geen wachtwoordkluis gebruikte, had je waarschijnlijk voor meerdere websites hetzelfde wachtwoord. In dat geval is dit rapport nu wel heel confronterend. De oplossing? Ga al deze accounts af en wijzig je wachtwoord op de website (met een willekeurig gegenereerd wachtwoord), zodat er geen dubbel gebruik meer is.

Een ander rapport dat je zeker helpt om veiligere wachtwoorden te kiezen, is het Verslag van zwakke wachtwoorden, dat je toont welke wachtwoorden eenvoudig te kraken zijn. Verander deze ook. En met Verslag van niet-beveiligde websites wijst Bitwarden je op accounts in je wachtwoordkluis zonder https. Verslag van niet-geactiveerde 2FA wijst je op websites in je kluis die tweefactorauthenticatie ondersteunen, inclusief instructies daarvoor, zodat je dit kunt inschakelen om die accounts nog beter te beveiligen. En met Datalek verslag kun je opvragen of je e-mailadres in bekende lekken van wachtwoorddatabases te vinden is. Kortom, als je al deze rapporten bekijkt en ernaar handelt, maak je je accounts een stuk veiliger!

 

© PXimport

Tweefactorauthenticatie voor je Bitwarden-server

Deel dit artikel
Voeg toe aan favorieten