Compare commits
2 Commits
eb653d1196
...
9d086e6436
Author | SHA1 | Date | |
---|---|---|---|
9d086e6436 | |||
39a90c8245 |
@ -1,7 +1,7 @@
|
||||
---
|
||||
Title: Gérer vos mots de passe avec pass
|
||||
Date: 2019-04-22 19:00
|
||||
Modified: 2019-04-24 11:12
|
||||
Modified: 2024-02-24 18:00
|
||||
Lang: fr
|
||||
Author: Fabrice
|
||||
Category: programmes
|
||||
@ -14,12 +14,12 @@ Summary: Un gestionnaire de mots de passe simple qui repose sur gpg, et synchron
|
||||
Comme nous vivons dans un monde dangereux où les failles de sécurité sont découvertes tous les jours et où les fuites de données sont devenues monnaies courantes, il est recommandé d’utiliser un mot de passe différent pour chacune de nos identités numériques.
|
||||
Cependant, cela devient vite une horreur à maintenir manuellement, j’avais essayé d’utiliser un bloc note en 2003 que j’ai perdu au bout d’un mois (et les mots de passe avec).
|
||||
|
||||
Heureusement, les gestionnaires de mots de passes ont fleurit depuis, et plusieurs proposent des fonctionnalités de base similaires : multiplateforme (en particulier sur les téléphones intelligents), génération de mots de passe « sécurisés », intégration navigateur…
|
||||
Heureusement, les gestionnaires de mots de passes ont fleuri depuis, et plusieurs proposent des fonctionnalités de base similaires : mufti plateforme (en particulier sur les téléphones intelligents), génération de mots de passe « sécurisés », intégration navigateur…
|
||||
|
||||
Je ne vais pas pour faire une comparaison détaillée, mais si vous souhaitez jeter un coup d’œil, [wikipedia](https://en.wikipedia.org) propose une table de comparaison détaillée [**par ici** (en)](https://en.wikipedia.org/wiki/List_of_password_managers).
|
||||
Je ne vais pas pour faire une comparaison détaillée, mais si vous souhaitez jeter un coup d’œil, [Wikipédia](https://en.wikipedia.org) propose une table de comparaison détaillée [**par ici** (en)](https://en.wikipedia.org/wiki/List_of_password_managers).
|
||||
|
||||
Dans cette recherche, grâce à [moviuro](https://try.popho.be), mon choix s’est porté sur [pass](https://www.passwordstore.org/) avec [pass-otp](https://github.com/tadfisher/pass-otp#readme) (et [passmenu](https://git.zx2c4.com/password-store/tree/contrib/dmenu)).
|
||||
Je n’ai pas non plus la prétention de faire un guide détaillé sur pass, comme ceux-ci sont déjà faciles à trouver sur internet, par exemple [**par ici** (en)](https://medium.com/@chasinglogic/the-definitive-guide-to-password-store-c337a8f023a1).
|
||||
Je n’ai pas non plus la prétention de faire un guide détaillé sur pass, comme ceux-ci sont déjà faciles à trouver sur internet, par exemple [**par ici** (en)](https://medium.com/@chasinglogic/the-definitive-guide-to-password-store-c337a8f023a1).
|
||||
|
||||
En résumé, pass est un script bash qui fait appel à des outils de base comme [git](https://git-scm.com/), [gpg](https://www.gnupg.org/), et est écrit par [zx2c4](https://www.zx2c4.com/).
|
||||
|
||||
@ -32,6 +32,28 @@ Pour **re**générer un mot de passe, l’option `-i` ici est **importante** pui
|
||||
Cela évite donc de devoir utiliser du [git sale]({filename}/cheat-sheets/git-fr.md) pour retirer l’erreur de l’arbre des commits vu que `pass <cmd>` fait automatiquement un commit atomique à la fin de la commande.
|
||||
Je l’oublie parfois, c’est pourquoi je laisse ça ici en guise de rappel.
|
||||
|
||||
Sur certains services, il arrive que l’on ait besoin de spécifier un ensemble de caractères admissibles pour les mots de passe.
|
||||
Cela peut être fait via la variable d’environnement `PASSWORD_STORE_CHARACTER_SET`.
|
||||
Le contenu de cette variable est transmis à la [commande `tr`](https://fr.wikipedia.org/wiki/Tr_(Unix)).
|
||||
Ainsi, pour créer un code PIN, on peut spécifier la valeur suivante : `PASSWORD_STORE_CHARACTER_SET='[:digit:]'` et indiquer la longueur désirée du mot de passe en dernier argument de la commande.
|
||||
|
||||
Par exemple, pour générer un code PIN de 6 chiffres :
|
||||
|
||||
```sh
|
||||
PASSWORD_STORE_CHARACTER_SET='[:digit:]' pass generate <pass-name> 6
|
||||
```
|
||||
|
||||
Je n’ai en revanche pas trouvé comment forcer la présence de caractères spéciaux… je lance donc la commande plusieurs fois dans ces cas avec l’option `-i` pour écrire en place après la première tentative.
|
||||
Ce n’est pas la meilleure solution, qui en plus pollue l’historique git mais bon… ça fonctionne.
|
||||
|
||||
Par exemple, pour générer un mot de passe sur un service _fictif_ qui supporterait les caractères spéciaux suivants: `-_@$<>` pour des mots de passe d’au plus 20 caractères, on peut utiliser la commande suivante :
|
||||
|
||||
```sh
|
||||
PASSWORD_STORE_CHARACTER_SET='[:alnum:]-_@$<>' pass generate <pass-name> 20
|
||||
```
|
||||
|
||||
Pour finir :
|
||||
|
||||
```sh
|
||||
pass git <ce que vous voulez>
|
||||
```
|
||||
|
@ -1,7 +1,7 @@
|
||||
---
|
||||
Title: Manage your passwords with pass
|
||||
Date: 2019-04-22 19:00
|
||||
Modified: 2019-04-23 14:24
|
||||
Modified: 2024-02-24 18:00
|
||||
Author: Fabrice
|
||||
Category: software
|
||||
Tags: pass, git, cli
|
||||
@ -14,9 +14,9 @@ Lang: en
|
||||
As security breaches are discovered regularly, and so leakage happens, it is recommended to have a different password on each account.
|
||||
However, this task is obviously a pain to maintain by hand. I did use a notebook back in 2003, which I lost within a month, given that I'm a very organized person.
|
||||
|
||||
Hopefully, many password managers exist, with similar features: cross-platform (especially smartphone support), password generation,browser integration…
|
||||
Hopefully, many password managers exist, with similar features: cross-platform (especially smartphone support), password generation, browser integration…
|
||||
|
||||
I'm not here to compare them, if you want to give a look, [wikipedia](https://en.wikipedia.org) provides a nice comparison table [**there**](https://en.wikipedia.org/wiki/List_of_password_managers).
|
||||
I'm not here to compare them, if you want to give a look, [Wikipedia](https://en.wikipedia.org) provides a nice comparison table [**there**](https://en.wikipedia.org/wiki/List_of_password_managers).
|
||||
|
||||
However, thanks to [moviuro](https://try.popho.be), my choice is [pass](https://www.passwordstore.org/) along with [pass-otp](https://github.com/tadfisher/pass-otp#readme) (and [passmenu](https://git.zx2c4.com/password-store/tree/contrib/dmenu)).
|
||||
I don't intend either to make a comprehensive guide, as those already populate the internet, for example [**here**](https://medium.com/@chasinglogic/the-definitive-guide-to-password-store-c337a8f023a1).
|
||||
@ -28,7 +28,28 @@ Here are just some commands I often use.
|
||||
```sh
|
||||
pass generate -i <pass-name>
|
||||
```
|
||||
To regenerate a password, the `-i` is important to avoid overwritting the whole file and having to rely on [dirty git]({filename}/cheat-sheets/git.md) to withdraw your mistake (`pass <cmd>` will automatically commit your change)… I sometimes forget it, so let's put it here as a reminder.
|
||||
To regenerate a password, the `-i` is important to avoid overwriting the whole file and having to rely on [dirty git]({filename}/cheat-sheets/git.md) to withdraw your mistake (`pass <cmd>` will automatically commit your change)… I sometimes forget it, so let's put it here as a reminder.
|
||||
|
||||
Sometimes it can be useful to specify the accepted special chars, this can be done using the `PASSWORD_STORE_CHARACTER_SET` environment variable.
|
||||
This value is interpreted by the [`tr` command](https://en.wikipedia.org/wiki/Tr_(Unix)),
|
||||
hence to create a PIN, you can use the following value: `PASSWORD_STORE_CHARACTER_SET='[:digit:]'`, then specify the length with the last argument.
|
||||
|
||||
For instance, to generate a 6 digit PIN:
|
||||
|
||||
```sh
|
||||
PASSWORD_STORE_CHARACTER_SET='[:digit:]' pass generate <pass-name> 6
|
||||
```
|
||||
|
||||
I didn’t manage to specify how to have at least one of them, so I run the command multiple times (with the `-i` option to change the file in place after the first one)…
|
||||
It pollutes a bit the git history but, well… it works.
|
||||
|
||||
For instance, for a service supporting only the following characters: `-_@$<>` of at most 20 char long (fictive example), you can use the following command:
|
||||
|
||||
```sh
|
||||
PASSWORD_STORE_CHARACTER_SET='[:alnum:]-_@$<>' pass generate <pass-name> 20
|
||||
```
|
||||
|
||||
To finish:
|
||||
|
||||
```sh
|
||||
pass git <whatever you want>
|
||||
|
Loading…
Reference in New Issue
Block a user