wiki/HowtoKeePassX.md
2017-10-04 21:33:51 +02:00

170 lines
5.8 KiB
Markdown

---
categories: Desktop sécurité
title: Howto KeepassX
...
[KeePassX](https://www.keepassx.org/) est un logiciel de gestion des mots de passe. C'est un fork du logiciel [KeePass](http://keepass.info/) avec lequel son format de stockage (.kdb/.kdbx) est compatible. Il existe aussi [KeePassXC](https://keepassxc.org/) un fork de… KeePassX !
* KeePassX 0.4 utilise le format **.kdb** (compatible avec KeePass 1)
* KeePassX 2 utilise le format **.kdbx** (compatible avec KeePass 2) et peut lire le format **.kdb** (lecture seule et conversion au format .kdbx)
**Nous utilisons KeePassX 2 et son format .kdbx**
## Installation
~~~
# apt install keepassx kpcli libcapture-tiny-perl libclipboard-perl
$ keepassx -v
keepassx 2.0.3
~~~
> *Note* : Pour Debian 8, on peut faire :
>
> ~~~
> # echo "deb http://mirror.evolix.org/debian jessie-backports main" > /etc/apt/sources.list.d/backports.list
> # cat /etc/apt/preferences.d/keepassx
> Package: keepassx
> Pin: release a=jessie-backports
> Pin-Priority: 999
> # apt install keepassx kpcli libcapture-tiny-perl
> ~~~
Les paquets `libcapture-tiny-perl` et `libclipboard-perl` (disponible uniquement sous *Stretch*) permettent d'avoir accès aux commandes xu/xp/xw/xx de _kpcli_ pour placer le login ou mot de passe directement dans le presse-papier.
## Utilisation
Vous pouvez créer un fichier .kdbx protégé par mot de passer et/ou clé pour stocker vos mots de passe :
~~~
Base de données> Nouvelle base de données> Mot de passe: PASSWORD > OK > Enregistrer la base de données
~~~
Vous pourrez ultérieurement l'utiliser via la commande :
~~~
$ keepass db.kdbx
~~~
### Convertir un fichier .kdb en .kdbx
~~~
Base de données> Importer une base de données KeePass
~~~
il faut ensuite sauvegarder la nouvelle base de données importée du fichier .kdb
## kpcli
[kpcli](http://kpcli.sourceforge.net/) est un utilitaire permettant la manipulation de fichier .kdbx (ou .kbd) depuis la console. Il couvre toute les fonctions principales de KeePassX (copie du login/mot de passe dans le presse-papier, arborescence conservée, création de nouvelles entrées etc.)
### Créer une nouvelle base
Il suffit de lancer `kpcli` sans argument, puis de sauvegarder :
~~~
$ kpcli
KeePass CLI (kpcli) v3.1 is ready for operation.
kpcli:/> saveas foo.kdbx
Please provide the master password: *************************
Retype to verify: *************************
~~~
### Utilisation courante
kpcli a quelques options au démarrage. Les plus utiles étant :
* `--kdb FICHIER` - Spécifie le fichier .kdbx à ouvrir.
* `--key FICHIER` - Spécifie le fichier clé à utiliser pour déverrouiller la base
* `--readonly` - Ouverture de la base de donnée en lecture seule
~~~
$ kpcli --kdb foo.kdbx
Please provide the master password: *************************
Type 'help' for a description of available commands.
Type 'help <command>' for details on individual commands.
kpcli:/> help
attach -- Manage attachments: attach <path to entry|entry number>
cd -- Change directory (path to a group)
cl -- Change directory and list entries (cd+ls)
clone -- Clone an entry: clone <path to entry> <path to new entry>
close -- Close the currently opened database
cls -- Clear screen ("clear" command also works)
copy -- Copy an entry: copy <path to entry> <path to new entry>
edit -- Edit an entry: edit <path to entry|entry number>
export -- Export entries to a new KeePass DB (export <file.kdbx> [<file.key>])
find -- Finds entries by Title
help -- Print helpful information
history -- Prints the command history
icons -- Change group or entry icons in the database
import -- Import another KeePass DB (import <file.kdbx> <path> [<file.key>])
ls -- Lists items in the pwd or a specified path ("dir" also works)
mkdir -- Create a new group (mkdir <group_name>)
mv -- Move an item: mv <path to group|entry> <path to group>
new -- Create a new entry: new <optional path&|title>
open -- Open a KeePass database file (open <file.kdbx> [<file.key>])
pwck -- Check password quality: pwck <entry|group>
pwd -- Print the current working directory
quit -- Quit this program (EOF and exit also work)
rename -- Rename a group: rename <path to group>
rm -- Remove an entry: rm <path to entry|entry number>
rmdir -- Delete a group (rmdir <group_name>)
save -- Save the database to disk
saveas -- Save to a specific filename (saveas <file.kdbx> [<file.key>])
show -- Show an entry: show [-f] [-a] <entry path|entry number>
stats -- Prints statistics about the open KeePass file
ver -- Print the version of this program
vers -- Same as "ver -v"
xp -- Copy password to clipboard: xp <entry path|number>
xu -- Copy username to clipboard: xu <entry path|number>
xw -- Copy URL (www) to clipboard: xw <entry path|number>
xx -- Clear the clipboard: xx
Type "help <command>" for more detailed help on a command.
kpcli:/> ls
=== Groups ===
eMail/
Internet/
kpcli:/> cd Internet/
kpcli:/Internet> ls
=== Entries ===
0. example.com secure.example.com
1. example.net intra.example.net
2. example.org magic.example.org
kpcli:/Internet> show 2
Path: /Internet
Title: example.org
Uname: baz
Pass:
URL: magic.example.net
Notes: Tarpin secure thing
~~~
Note : le champ "Pass" est invisible mais l'on peut le copier/coller avec la souris.
### Ajouter une entrée
~~~
$ kpcli:/Internet> new
Adding new entry to "/Internet"
Title: example
Username: root
Password: ("g" or "w" to auto-generate, "i" for interactive)
Retype to verify:
URL:
Notes/Comments (""):
Database was modified. Do you want to save it now? [y/N]:
Saved to foo.kdbx
~~~
### Modifier une entrée
TODO