]> err.no Git - pwstore/blob - README.asciidoc
Convert readme to doctype manpage
[pwstore] / README.asciidoc
1 PWS(1)
2 ======
3 :doctype: manpage
4
5 NAME
6 ----
7 pws - password store management
8
9 SYNOPSIS
10 --------
11 *pws* 'COMMAND' ['OPTIONS']
12
13 DESCRIPTION
14 -----------
15
16 The pws tool allows you to store passwords (or anything else, really) in
17 a set of encrypted files.  Each file can be encrypted to a different set
18 of users.  pws helps you with the bookkeeping of which keys to encrypt
19 each file to and provides a convinient wrapper to edit protected files.
20
21 initialization
22 --------------
23
24 First you need a file where your users and group are defined in.  This
25 file is named .users.  Lines consist of assignments of the form
26  <username> = <keyfingerprint>
27 and
28  @<groupname> = <username>|@<groupname> [, [<username>|@<groupname> ...]
29
30 Lines starting with a # are comments and thus get ignored.
31
32 --------------------------------
33 cat .users
34
35 # This file needs to be gpg signed by a key whose fingerprint
36 # is listed in ~/.pws-trusted-users
37
38 formorer   = 6E3966C1E1D15DB973D05B491E45F8CA9DE23B16
39 weasel     = 25FC1614B8F87B52FF2F99B962AF4031C82E0039
40 @admins    = formorer, weasel
41
42 zobel    = 6B1856428E41EC893D5DBDBB53B1AC6DB11B627B
43 maxx     = 30DC1D281D7932F55E673ABB28EEB35A3E8DCCC0
44 @vienna = zobel, maxx
45
46 @all = @admins, @vienna
47
48 # gpg --clear .users && mv .users.asc .users
49 --------------------------------
50
51 The .users file is designed to live in a SCM repository, such as git,
52 alongside all the other encrypted files.  In order to prevent
53 unauthorized tampering with the .users file - for tricking somebody to
54 re-encrypt data to the wrong key - the .users file needs to be
55 PGP-clearsigned with a key from a whitelist.
56
57 This whitelist lives in ~/.pws-trusted-users, and simply takes one
58 key fingerprint per line:
59
60 ---------------------------------
61 # cat ~/.pws-trusted-users
62
63 #formorer
64 6E3966C1E1D15DB973D05B491E45F8CA9DE23B16
65 ---------------------------------
66
67 Currently this whitelist is the same for any pws repositories a user
68 might have.  A patch to remove this limitation would be nice.
69
70
71 adding a new file
72 -----------------
73
74 -----------------------------
75 # pws ed -n file
76 -----------------------------
77
78 editing files
79 -------------
80
81 Every file needs a header like:
82
83 ------------------------------
84 access: @all
85 ------------------------------
86
87 You can edit the encrypted file with the pws tool: +pwd ed file+.
88
89 updating the keyring
90 --------------------
91
92 If available as .keyring pws instructs GnuPG to use this keyring in
93 addition to the user's default keyrings.  This allows sharing of the
94 keyring in the repository.  Use +pws update-keyring+ to
95 update/initialize this keyring.
96
97
98 AUTHOR
99 ------
100 Peter Palfrader <peter@palfrader.org>
101