Tips en Trucs 2018

Een eenvoudige terminal Wachtwoordbeheerder

Zonder hulpmiddelen is het vandaag de dag niet meer mogelijk al onze wachtwoorden te onthouden. Wachtwoordbeheerder hebben deze taak van ons overgenomen. Linux gebruikers kunnen kiezen uit een groot aantal grafische en terminal wachtwoordbeheerders.

Pass is een eenvoudige wachtwoordbeheerder voor de terminal die de wachtwoorden opslaat in gpg versleutelde bestanden. Deze versleutelde wachtwoordbestanden worden opgeslagen in mappen waardoor je ze naar wens kunt ordenen.

Alle wachtwoorden worden opgeslagen in de verborgen map ~/.password-store/, en worden beheerd via eenvoudige opdrachten.

De pass opdracht zelf is een shell script waarmee je wachtwoorden kunt toevoegen, aanpassen, opvragen, op het klembord plaatsen en zelfs aanpassingen achterhalen via git. Het script gebruikt standaard opdrachten zoals gnupg, tree en git en kan uitgebreid worden met een grafische omgeving en andere extra mogelijkheden.

Pass installeren

Pass installeer je in openSUSE Leap 15.0 door een softwarebron toe te voegen en pass te installeren. Gebruik daarvoor de volgende opdrachten:

dany@pindabook:~> sudo zypper addrepo https://download.opensuse.org/repositories/security:privacy/openSUSE_Leap_15.0/security:privacy.repo
[sudo] wachtwoord voor root: 
Opslagruimte 'Crypto applications and utilities (openSUSE_Leap_15.0)' wordt toegevoegd ......................................[gereed]
Opslagruimte 'Crypto applications and utilities (openSUSE_Leap_15.0)' is toegevoegd

URI                    : http://download.opensuse.org/repositories/security:/privacy/openSUSE_Leap_15.0/
Ingeschakeld           : Ja                                                                             
GPG-controle           : Ja                                                                             
Automatisch vernieuwen : Nee                                                                            
Prioriteit             : 99 (standaard prioriteit)                                                      

Prioriteiten van opslagruimtes hebben geen effect. Alle ingeschakelde opslagruimtes delen dezelfde prioriteit.
dany@pindabook:~> sudo zypper refresh
Opslagruimte 'dvd' is actueel.                                                                                                       
Opslagruimte 'openSUSE_Leap_15.0' is actueel.                                                                                        
Opslagruimte 'packman' is actueel.                                                                                                   
Opslagruimte 'openSUSE-Leap-15.0-Non-Oss' is actueel.                                                                                
Opslagruimte 'openSUSE-Leap-15.0-Oss' is actueel.                                                                                    
Opslagruimte 'openSUSE-Leap-15.0-Update' is actueel.                                                                                 
Opslagruimte 'openSUSE-Leap-15.0-Update-Non-Oss' is actueel.                                                                         
Ophalen van metagegevens uit opslagruimte 'Crypto applications and utilities (openSUSE_Leap_15.0)' -------------------------------[\]

Een nieuwe handtekening voor een opslagruimte of pakket is ontvangen:

  Opslagruimte:              Crypto applications and utilities (openSUSE_Leap_15.0)            
  Sleutelnaam:               security:privacy OBS Project 
  Vingerafdruk van sleutel:  CB8366CC 735E720B BB1556A2 000C4B6D E3DBD3CD                      
  Sleutel aangemaakt:        wo 13 dec 2017 20:46:06 CET                                       
  Sleutel verloopt op:       vr 21 feb 2020 20:46:06 CET                                       
  Rpm-naam:                  gpg-pubkey-e3dbd3cd-5a31837e                                      


Wilt u de sleutel verwerpen, tijdelijk vertrouwen of altijd vertrouwen? [v/t/a/? alle opties tonen] (v): a
Ophalen van metagegevens uit opslagruimte 'Crypto applications and utilities (openSUSE_Leap_15.0)' ..........................[gereed]
Cache van opslagruimte 'Crypto applications and utilities (openSUSE_Leap_15.0)' wordt gebouwd ...............................[gereed]
Alle opslagruimtes zijn vernieuwd.
dany@pindabook:~> sudo zypper install password-store
Gegevens van opslagruimte laden...
Lezen van geïnstalleerde pakketten...
Pakketafhankelijkheden oplossen...

De volgende 4 NIEUWE pakketten zullen worden geïnstalleerd:
  password-store pwgen qrencode tree

Het volgende aanbevolen pakket is automatisch geselecteerd:
  pwgen

4 nieuwe te installeren pakketten.
Totale downloadgrootte: 164,5 KiB. Reeds in de cache: 0 B. Na de bewerking zal aanvullend 332,2 KiB worden gebruikt.
Doorgaan? [j/n/...? alle opties tonen] (j): 
pakket pwgen-2.08-lp150.1.3.x86_64 wordt opgehaald                                             (1/4),  23,2 KiB ( 29,6 KiB uitgepakt)
Ophalen: pwgen-2.08-lp150.1.3.x86_64.rpm ....................................................................................[gereed]
pakket qrencode-4.0.0-lp150.1.3.x86_64 wordt opgehaald                                         (2/4),  49,9 KiB (129,8 KiB uitgepakt)
Ophalen: qrencode-4.0.0-lp150.1.3.x86_64.rpm ....................................................................[gereed (8,0 KiB/s)]
pakket tree-1.7.0-lp150.1.8.x86_64 wordt opgehaald                                             (3/4),  55,8 KiB (109,8 KiB uitgepakt)
Ophalen: tree-1.7.0-lp150.1.8.x86_64.rpm ....................................................................................[gereed]
pakket password-store-1.7.3-lp150.1.1.noarch wordt opgehaald                                   (4/4),  35,6 KiB ( 63,0 KiB uitgepakt)
Ophalen: password-store-1.7.3-lp150.1.1.noarch.rpm ..........................................................................[gereed]
Controleren op conflicten tussen bestanden: .................................................................................[gereed]
(1/4) Installeren van: pwgen-2.08-lp150.1.3.x86_64 ..........................................................................[gereed]
(2/4) Installeren van: qrencode-4.0.0-lp150.1.3.x86_64 ......................................................................[gereed]
(3/4) Installeren van: tree-1.7.0-lp150.1.8.x86_64 ..........................................................................[gereed]
(4/4) Installeren van: password-store-1.7.3-lp150.1.1.noarch ................................................................[gereed]

Een GPG sleutelpaar aanmaken

Als je nog geen GPG sleutelpaar gebruikt, kan je met de volgende opdracht een GPG sleutelpaar genereren:

dany@pindabook:~> gpg --gen-key
gpg (GnuPG) 2.2.5; Copyright (C) 2018 Free Software Foundation, Inc.
This is free software: you are free to change and redistribute it.
There is NO WARRANTY, to the extent permitted by law.

Note: Use "gpg2 --full-generate-key" for a full featured key generation dialog.

GnuPG needs to construct a user ID to identify your key.

Real name: Dany Pinoy
Email address: 
You selected this USER-ID:
    "Dany Pinoy <>"

Change (N)ame, (E)mail, or (O)kay/(Q)uit? o
We need to generate a lot of random bytes. It is a good idea to perform
some other action (type on the keyboard, move the mouse, utilize the
disks) during the prime generation; this gives the random number
generator a better chance to gain enough entropy.
We need to generate a lot of random bytes. It is a good idea to perform
some other action (type on the keyboard, move the mouse, utilize the
disks) during the prime generation; this gives the random number
generator a better chance to gain enough entropy.
gpg: key ED602C20C02B3FDE marked as ultimately trusted
gpg: directory '/home/dany/.gnupg/openpgp-revocs.d' created
gpg: revocation certificate stored as '/home/dany/.gnupg/openpgp-revocs.d/CC643F2D367473615F64DDD4ED602C20C02B3FDE.rev'
public and secret key created and signed.

pub   rsa2048 2018-12-28 [SC] [expires: 2020-12-27]
      CC643F2D367473615F64DDD4ED602C20C02B3FDE
uid                      Dany Pinoy <>
sub   rsa2048 2018-12-28 [E] [expires: 2020-12-27]

Daarbij verschijnt een dialoogvenster om een wachtwoordzin voor het GPG sleutelpaar in te geven.

Wachtwoordzin

Mocht de wachtwoordzin niet voldoen aan de regels voor een sterke wachtwoordzin, dan wordt de daar met volgend dialoogvenster op gewezen.

Waarschuwing

Een opslagplaats voor versleutelde wachtwoorden aanmaken

Met uw GPG sleutelpaar initialiseer je een opslagplaats om versleutelde wachtwoorden in op te slaan. Voer daarvoor de volgende opdracht uit met uw email-id of gpg-id.

dany@pindabook:~> pass init 
mkdir: map '/home/dany/.password-store/' is aangemaakt
Password store initialized for 

Deze opdracht maakt een opslagplaats voor versleutelde wachtwoorden aan in de map ~/.password-store.

Een wachtwoord toevoegen

Met de volgende opdracht voeg ik het wachtwoord voor het e-mailadres toe aan de wachtwoordkluis.

dany@pindabook:~> pass insert e-mail/
mkdir: map '/home/dany/.password-store/e-mail' is aangemaakt
Enter password for e-mail/: 
Retype password for e-mail/:

Op dezelfde manier voeg ik het wachtwoord voor mijn Facebook account toe.

dany@pindabook:~> pass insert Sociaal/Facebook_dany.pinoy
mkdir: map '/home/dany/.password-store/Sociaal' is aangemaakt
Enter password for Sociaal/Facebook_dany.pinoy: 
Retype password for Sociaal/Facebook_dany.pinoy:

Met de pass opdracht zonder opties, krijg je een overzicht van de inhoud van de wachtwoordkluis.

dany@pindabook:~> pass
Password Store
├── e-mail
│   ├── 
│   └── dany.pinoy@snt.be
└── Sociaal
    ├── Facebook_dany.pinoy
    └── Twitter_dany.pinoy

Een opgeslagen versleuteld wachtwoord weergeven

Dit kan met de volgende opdracht, waarbij je de wachtzin van uw GPG sleutelpaar in een dialoogvenster moet opgeven.

dany@pindabook:~> pass e-mail/ 
geheimwachtwoord

Passphrase

Een wachtwoord tijdelijk naar het klembord kopiëren

Moeilijke wachtwoorden kopieer je beter tijdelijk (45 seconden) naar het klembord om deze van daaruit in een wachtwoordveld te plakken.

dany@pindabook:~> pass -c e-mail/
Invalid MIT-MAGIC-COOKIE-1 keyCopied e-mail/ to clipboard. Will clear in 45 seconds.

Een nieuw sterk wachtwoord aanmaken

Pass kan met behulp van de pwgen opdracht sterke wachtwoorden genereren.

dany@pindabook:~> pass generate e-mail/ 15
An entry already exists for e-mail/. Overwrite it? [y/N] y
The generated password for e-mail/ is:
)<C}#,0_)1][AX6

Gebruik je liever wachtwoorden zonder symbolen.

dany@pindabook:~> pass generate e-mail/ 15 -n
An entry already exists for e-mail/. Overwrite it? [y/N] y
The generated password for e-mail/ is:
JpdapTgOo9tpeVw

Bestaande wachtwoorden aanpassen

Om een wachtwoord met een teksteditor aan te passen, gebruik je de volgende opdracht:

dany@pindabook:~> pass edit e-mail/

De teksteditor vi wordt gestart met het aan te passen wachtwoord. Om het wachtwoord aan te passen druk je op de i toets om de invoeg mode van vi te starten. Het aangepaste wachtwoord sla je op door de commando mode met de Esc toets te activeren, daarna typ je het commando :wq om het aangepaste wachtwoord op te slaan en de editor te verlaten.

Een wachtwoord verwijderen

Een wachtwoord verwijder je uit de wachtwoordkluis met:

dany@pindabook:~> pass rm e-mail/
Are you sure you would like to delete e-mail/? [y/N] y
'/home/dany/.password-store/e-mail/.gpg' is verwijderd

Een wachtwoord met meerdere regels toevoegen

Soms is het handig om extra informatie naast het wachtwoord op te slaan. Ik denk dan aan URL's, gebruikersnamen, enz. Zorg echter dat het wachtwoord steeds in de eerste regel staat, enkel de inhoud van de eerste regel wordt naar het klembord gekopieerd.

dany@pindabook:~> pass insert e-mail/ -m
Enter contents of e-mail/ and press Ctrl+D when finished:

JpdapTgOo9tpeVw
URL: https://linux.pindanet.be
Info: Linux tips en trucs