Blame


1 058b0118 2005-01-03 devnull .TH SECSTORE 1
2 058b0118 2005-01-03 devnull .SH NAME
3 8e4cf69e 2005-02-13 devnull aescbc, ipso, secstore \- secstore commands
4 058b0118 2005-01-03 devnull .SH SYNOPSIS
5 058b0118 2005-01-03 devnull .B secstore
6 058b0118 2005-01-03 devnull [
7 058b0118 2005-01-03 devnull .B -s
8 058b0118 2005-01-03 devnull .I server
9 058b0118 2005-01-03 devnull ]
10 058b0118 2005-01-03 devnull [
11 058b0118 2005-01-03 devnull .B -(g|G)
12 058b0118 2005-01-03 devnull .I getfile
13 058b0118 2005-01-03 devnull ]
14 058b0118 2005-01-03 devnull [
15 058b0118 2005-01-03 devnull .B -p
16 058b0118 2005-01-03 devnull .I putfile
17 058b0118 2005-01-03 devnull ]
18 058b0118 2005-01-03 devnull [
19 058b0118 2005-01-03 devnull .B -r
20 058b0118 2005-01-03 devnull .I rmfile
21 058b0118 2005-01-03 devnull ]
22 058b0118 2005-01-03 devnull [
23 058b0118 2005-01-03 devnull .B -c
24 058b0118 2005-01-03 devnull ]
25 058b0118 2005-01-03 devnull [
26 058b0118 2005-01-03 devnull .B -u
27 058b0118 2005-01-03 devnull .I user
28 058b0118 2005-01-03 devnull ]
29 058b0118 2005-01-03 devnull [
30 058b0118 2005-01-03 devnull .B -v
31 058b0118 2005-01-03 devnull ]
32 058b0118 2005-01-03 devnull [
33 058b0118 2005-01-03 devnull .B -i
34 058b0118 2005-01-03 devnull ]
35 058b0118 2005-01-03 devnull .PP
36 058b0118 2005-01-03 devnull .B aescbc
37 058b0118 2005-01-03 devnull -e
38 058b0118 2005-01-03 devnull .I <cleartext
39 058b0118 2005-01-03 devnull .I >ciphertext
40 058b0118 2005-01-03 devnull .br
41 058b0118 2005-01-03 devnull .B aescbc
42 058b0118 2005-01-03 devnull -d
43 058b0118 2005-01-03 devnull .I <ciphertext
44 058b0118 2005-01-03 devnull .I >cleartext
45 8e4cf69e 2005-02-13 devnull .PP
46 8e4cf69e 2005-02-13 devnull .B ipso
47 8e4cf69e 2005-02-13 devnull [
48 8e4cf69e 2005-02-13 devnull .B -a -e -l -f
49 8e4cf69e 2005-02-13 devnull ] [
50 8e4cf69e 2005-02-13 devnull .I file
51 8e4cf69e 2005-02-13 devnull \&...
52 8e4cf69e 2005-02-13 devnull ]
53 058b0118 2005-01-03 devnull .SH DESCRIPTION
54 058b0118 2005-01-03 devnull .PP
55 058b0118 2005-01-03 devnull .I Secstore
56 058b0118 2005-01-03 devnull authenticates to the server
57 058b0118 2005-01-03 devnull using a password and optionally a hardware token,
58 058b0118 2005-01-03 devnull then saves or retrieves a file.
59 058b0118 2005-01-03 devnull This is intended to be a credentials store (public/private keypairs,
60 058b0118 2005-01-03 devnull passwords, and other secrets) for a factotum.
61 058b0118 2005-01-03 devnull .PP
62 058b0118 2005-01-03 devnull Option
63 058b0118 2005-01-03 devnull .B -p
64 058b0118 2005-01-03 devnull stores a file on the secstore.
65 058b0118 2005-01-03 devnull .PP
66 058b0118 2005-01-03 devnull Option
67 058b0118 2005-01-03 devnull .B -g
68 058b0118 2005-01-03 devnull retrieves a file to the local directory;
69 058b0118 2005-01-03 devnull option
70 058b0118 2005-01-03 devnull .B -G
71 058b0118 2005-01-03 devnull writes it to standard output instead.
72 058b0118 2005-01-03 devnull Specifying
73 058b0118 2005-01-03 devnull .I getfile
74 058b0118 2005-01-03 devnull of . will send to standard output
75 058b0118 2005-01-03 devnull a list of remote files with dates, lengths and SHA1 hashes.
76 058b0118 2005-01-03 devnull .PP
77 058b0118 2005-01-03 devnull Option
78 058b0118 2005-01-03 devnull .B -r
79 058b0118 2005-01-03 devnull removes a file from the secstore.
80 058b0118 2005-01-03 devnull .PP
81 058b0118 2005-01-03 devnull Option
82 058b0118 2005-01-03 devnull .B -c
83 058b0118 2005-01-03 devnull prompts for a password change.
84 058b0118 2005-01-03 devnull .PP
85 058b0118 2005-01-03 devnull Option
86 058b0118 2005-01-03 devnull .B -v
87 058b0118 2005-01-03 devnull produces more verbose output, in particular providing a few
88 058b0118 2005-01-03 devnull bits of feedback to help the user detect mistyping.
89 058b0118 2005-01-03 devnull .PP
90 058b0118 2005-01-03 devnull Option
91 058b0118 2005-01-03 devnull .B -i
92 058b0118 2005-01-03 devnull says that the password should be read from standard input
93 d93fca6a 2005-02-11 devnull instead of from
94 d93fca6a 2005-02-11 devnull .BR /dev/tty .
95 058b0118 2005-01-03 devnull .PP
96 058b0118 2005-01-03 devnull Option
97 058b0118 2005-01-03 devnull .B -n
98 058b0118 2005-01-03 devnull says that the password should be read from NVRAM
99 d93fca6a 2005-02-11 devnull (see
100 d32deab1 2020-08-16 rsc .MR authsrv (3) )
101 058b0118 2005-01-03 devnull instead of from
102 d93fca6a 2005-02-11 devnull .BR /dev/tty .
103 058b0118 2005-01-03 devnull .PP
104 058b0118 2005-01-03 devnull The server is
105 d93fca6a 2005-02-11 devnull .BR tcp!$auth!secstore ,
106 058b0118 2005-01-03 devnull or the server specified by option
107 058b0118 2005-01-03 devnull .BR -s .
108 058b0118 2005-01-03 devnull .PP
109 058b0118 2005-01-03 devnull For example, to add a secret to the file read by
110 d32deab1 2020-08-16 rsc .MR factotum (4) ,
111 d93fca6a 2005-02-11 devnull run
112 058b0118 2005-01-03 devnull .sp
113 058b0118 2005-01-03 devnull .EX
114 d93fca6a 2005-02-11 devnull % cd somewhere-private
115 058b0118 2005-01-03 devnull % auth/secstore -g factotum
116 058b0118 2005-01-03 devnull secstore password:
117 058b0118 2005-01-03 devnull % echo 'key proto=apop dom=x.com user=ehg !password=hi' >> factotum
118 058b0118 2005-01-03 devnull % auth/secstore -p factotum
119 058b0118 2005-01-03 devnull secstore password:
120 d93fca6a 2005-02-11 devnull % cat factotum | 9p write -l factotum/ctl
121 058b0118 2005-01-03 devnull .EE
122 058b0118 2005-01-03 devnull .PP
123 058b0118 2005-01-03 devnull and delete the window.
124 d93fca6a 2005-02-11 devnull The middle commands fetch the persistent copy of the secrets,
125 058b0118 2005-01-03 devnull append a new secret,
126 058b0118 2005-01-03 devnull and save the updated file back to secstore.
127 058b0118 2005-01-03 devnull The final command loads the new secret into the running factotum.
128 058b0118 2005-01-03 devnull .PP
129 8e4cf69e 2005-02-13 devnull The
130 8e4cf69e 2005-02-13 devnull .I ipso
131 8e4cf69e 2005-02-13 devnull command packages this sequence into a convenient script to simplify editing of
132 8e4cf69e 2005-02-13 devnull .I files
133 8e4cf69e 2005-02-13 devnull stored on a secure store.
134 8e4cf69e 2005-02-13 devnull It copies the named
135 8e4cf69e 2005-02-13 devnull .I files
136 8e4cf69e 2005-02-13 devnull into a private directory,
137 8e4cf69e 2005-02-13 devnull plumbs them to the editor,
138 8e4cf69e 2005-02-13 devnull and waits for a line on the console
139 8e4cf69e 2005-02-13 devnull Once a line is typed,
140 8e4cf69e 2005-02-13 devnull signifying that editing is complete,
141 8e4cf69e 2005-02-13 devnull .I ipso
142 8e4cf69e 2005-02-13 devnull prompts the user to confirm copying modifed or newly created files back to
143 8e4cf69e 2005-02-13 devnull .I secstore.
144 8e4cf69e 2005-02-13 devnull If no
145 8e4cf69e 2005-02-13 devnull .I file
146 8e4cf69e 2005-02-13 devnull is mentioned,
147 8e4cf69e 2005-02-13 devnull .I ipso
148 8e4cf69e 2005-02-13 devnull grabs all the user's files from
149 8e4cf69e 2005-02-13 devnull .I secstore
150 8e4cf69e 2005-02-13 devnull for editing.
151 8e4cf69e 2005-02-13 devnull .PP
152 8e4cf69e 2005-02-13 devnull By default, ipso will edit the
153 8e4cf69e 2005-02-13 devnull .I secstore
154 8e4cf69e 2005-02-13 devnull files and, if
155 8e4cf69e 2005-02-13 devnull one of them is named
156 8e4cf69e 2005-02-13 devnull .BR factotum ,
157 8e4cf69e 2005-02-13 devnull flush current keys from factotum and load
158 8e4cf69e 2005-02-13 devnull the new ones from the file.
159 8e4cf69e 2005-02-13 devnull If the
160 8e4cf69e 2005-02-13 devnull .BR -e ,
161 8e4cf69e 2005-02-13 devnull .BR -f ,
162 8e4cf69e 2005-02-13 devnull or
163 8e4cf69e 2005-02-13 devnull .BR -l
164 8e4cf69e 2005-02-13 devnull options are given,
165 8e4cf69e 2005-02-13 devnull .I ipso
166 8e4cf69e 2005-02-13 devnull will just perform only the requested operations, i.e.,
167 8e4cf69e 2005-02-13 devnull edit, flush, and/or load.
168 8e4cf69e 2005-02-13 devnull .PP
169 8e4cf69e 2005-02-13 devnull The
170 8e4cf69e 2005-02-13 devnull .B -a
171 8e4cf69e 2005-02-13 devnull option of
172 8e4cf69e 2005-02-13 devnull .I ipso
173 8e4cf69e 2005-02-13 devnull provides a similar service for files encrypted by
174 8e4cf69e 2005-02-13 devnull .I aescbc
175 8e4cf69e 2005-02-13 devnull .RI ( q.v. ).
176 8e4cf69e 2005-02-13 devnull With the
177 8e4cf69e 2005-02-13 devnull .B -a
178 8e4cf69e 2005-02-13 devnull option, the full rooted pathname of the
179 8e4cf69e 2005-02-13 devnull .I file
180 8e4cf69e 2005-02-13 devnull must be specified and all
181 8e4cf69e 2005-02-13 devnull .I files
182 8e4cf69e 2005-02-13 devnull must be encrypted with the same key.
183 8e4cf69e 2005-02-13 devnull Also with
184 8e4cf69e 2005-02-13 devnull .BR -a ,
185 8e4cf69e 2005-02-13 devnull newly created files are ignored.
186 8e4cf69e 2005-02-13 devnull .PP
187 058b0118 2005-01-03 devnull .I Aescbc
188 058b0118 2005-01-03 devnull encrypts and decrypts using AES (Rijndael) in cipher
189 058b0118 2005-01-03 devnull block chaining (CBC) mode.
190 058b0118 2005-01-03 devnull .SH SOURCE
191 30f6ae14 2005-02-13 devnull .B \*9/bin/ipso
192 30f6ae14 2005-02-13 devnull .br
193 30f6ae14 2005-02-13 devnull .B \*9/src/cmd/auth/secstore
194 058b0118 2005-01-03 devnull .SH SEE ALSO
195 d32deab1 2020-08-16 rsc .MR factotum (4) ,
196 d32deab1 2020-08-16 rsc .MR secstored (1)
197 058b0118 2005-01-03 devnull .SH BUGS
198 058b0118 2005-01-03 devnull There is deliberately no backup of files on the secstore, so
199 058b0118 2005-01-03 devnull .B -r
200 058b0118 2005-01-03 devnull (or a disk crash) is irrevocable. You are advised to store
201 058b0118 2005-01-03 devnull important secrets in a second location.
202 8e4cf69e 2005-02-13 devnull .PP
203 8e4cf69e 2005-02-13 devnull When using
204 8e4cf69e 2005-02-13 devnull .IR ipso ,
205 8e4cf69e 2005-02-13 devnull secrets will appear as plain text in the editor window,
206 8e4cf69e 2005-02-13 devnull so use the command in private.
207 8e4cf69e 2005-02-13 devnull .PP
208 8e4cf69e 2005-02-13 devnull Establishing a private directory in which to store the secret
209 8e4cf69e 2005-02-13 devnull files is difficult on Unix.
210 8e4cf69e 2005-02-13 devnull On most systems,
211 8e4cf69e 2005-02-13 devnull .I ipso
212 8e4cf69e 2005-02-13 devnull creates a mode 700 directory
213 8e4cf69e 2005-02-13 devnull .BI /tmp/ipso. user
214 8e4cf69e 2005-02-13 devnull and works there.
215 8e4cf69e 2005-02-13 devnull On Linux systems,
216 8e4cf69e 2005-02-13 devnull .I ipso
217 8e4cf69e 2005-02-13 devnull looks for a
218 8e4cf69e 2005-02-13 devnull .B tmpfs
219 8e4cf69e 2005-02-13 devnull file system; if it exists,
220 8e4cf69e 2005-02-13 devnull .I ipso
221 8e4cf69e 2005-02-13 devnull creates the
222 8e4cf69e 2005-02-13 devnull .BI ipso. user
223 8e4cf69e 2005-02-13 devnull directory in its root
224 8e4cf69e 2005-02-13 devnull instead of
225 8e4cf69e 2005-02-13 devnull .BR /tmp .
226 8e4cf69e 2005-02-13 devnull .PP
227 8e4cf69e 2005-02-13 devnull .I Ipso
228 8e4cf69e 2005-02-13 devnull should zero the secret files before removing them.