2005-01-03 06:40:20 +00:00
|
|
|
.TH SECSTORE 1
|
|
|
|
.SH NAME
|
2005-02-11 19:21:47 +00:00
|
|
|
aescbc, secstore \- secstore commands
|
2005-01-03 06:40:20 +00:00
|
|
|
.SH SYNOPSIS
|
|
|
|
.B secstore
|
|
|
|
[
|
|
|
|
.B -s
|
|
|
|
.I server
|
|
|
|
]
|
|
|
|
[
|
|
|
|
.B -(g|G)
|
|
|
|
.I getfile
|
|
|
|
]
|
|
|
|
[
|
|
|
|
.B -p
|
|
|
|
.I putfile
|
|
|
|
]
|
|
|
|
[
|
|
|
|
.B -r
|
|
|
|
.I rmfile
|
|
|
|
]
|
|
|
|
[
|
|
|
|
.B -c
|
|
|
|
]
|
|
|
|
[
|
|
|
|
.B -u
|
|
|
|
.I user
|
|
|
|
]
|
|
|
|
[
|
|
|
|
.B -v
|
|
|
|
]
|
|
|
|
[
|
|
|
|
.B -i
|
|
|
|
]
|
|
|
|
.PP
|
|
|
|
.B aescbc
|
|
|
|
-e
|
|
|
|
.I <cleartext
|
|
|
|
.I >ciphertext
|
|
|
|
.br
|
|
|
|
.B aescbc
|
|
|
|
-d
|
|
|
|
.I <ciphertext
|
|
|
|
.I >cleartext
|
2005-02-11 19:21:47 +00:00
|
|
|
.\" .PP
|
|
|
|
.\" .B ipso
|
|
|
|
.\" [
|
|
|
|
.\" .B -a -e -l -f -s
|
|
|
|
.\" ] [
|
|
|
|
.\" .I file
|
|
|
|
.\" \&...
|
|
|
|
.\" ]
|
2005-01-03 06:40:20 +00:00
|
|
|
.SH DESCRIPTION
|
|
|
|
.PP
|
|
|
|
.I Secstore
|
|
|
|
authenticates to the server
|
|
|
|
using a password and optionally a hardware token,
|
|
|
|
then saves or retrieves a file.
|
|
|
|
This is intended to be a credentials store (public/private keypairs,
|
|
|
|
passwords, and other secrets) for a factotum.
|
|
|
|
.PP
|
|
|
|
Option
|
|
|
|
.B -p
|
|
|
|
stores a file on the secstore.
|
|
|
|
.PP
|
|
|
|
Option
|
|
|
|
.B -g
|
|
|
|
retrieves a file to the local directory;
|
|
|
|
option
|
|
|
|
.B -G
|
|
|
|
writes it to standard output instead.
|
|
|
|
Specifying
|
|
|
|
.I getfile
|
|
|
|
of . will send to standard output
|
|
|
|
a list of remote files with dates, lengths and SHA1 hashes.
|
|
|
|
.PP
|
|
|
|
Option
|
|
|
|
.B -r
|
|
|
|
removes a file from the secstore.
|
|
|
|
.PP
|
|
|
|
Option
|
|
|
|
.B -c
|
|
|
|
prompts for a password change.
|
|
|
|
.PP
|
|
|
|
Option
|
|
|
|
.B -v
|
|
|
|
produces more verbose output, in particular providing a few
|
|
|
|
bits of feedback to help the user detect mistyping.
|
|
|
|
.PP
|
|
|
|
Option
|
|
|
|
.B -i
|
|
|
|
says that the password should be read from standard input
|
2005-02-11 19:21:47 +00:00
|
|
|
instead of from
|
|
|
|
.BR /dev/tty .
|
2005-01-03 06:40:20 +00:00
|
|
|
.PP
|
|
|
|
Option
|
|
|
|
.B -n
|
|
|
|
says that the password should be read from NVRAM
|
2005-02-11 19:21:47 +00:00
|
|
|
(see
|
2005-02-11 19:43:43 +00:00
|
|
|
.IR authsrv (3))
|
2005-01-03 06:40:20 +00:00
|
|
|
instead of from
|
2005-02-11 19:21:47 +00:00
|
|
|
.BR /dev/tty .
|
2005-01-03 06:40:20 +00:00
|
|
|
.PP
|
|
|
|
The server is
|
2005-02-11 19:21:47 +00:00
|
|
|
.BR tcp!$auth!secstore ,
|
2005-01-03 06:40:20 +00:00
|
|
|
or the server specified by option
|
|
|
|
.BR -s .
|
|
|
|
.PP
|
|
|
|
For example, to add a secret to the file read by
|
2005-02-11 19:21:47 +00:00
|
|
|
.IR factotum (4),
|
|
|
|
run
|
2005-01-03 06:40:20 +00:00
|
|
|
.sp
|
|
|
|
.EX
|
2005-02-11 19:21:47 +00:00
|
|
|
% cd somewhere-private
|
2005-01-03 06:40:20 +00:00
|
|
|
% auth/secstore -g factotum
|
|
|
|
secstore password:
|
|
|
|
% echo 'key proto=apop dom=x.com user=ehg !password=hi' >> factotum
|
|
|
|
% auth/secstore -p factotum
|
|
|
|
secstore password:
|
2005-02-11 19:21:47 +00:00
|
|
|
% cat factotum | 9p write -l factotum/ctl
|
2005-01-03 06:40:20 +00:00
|
|
|
.EE
|
|
|
|
.PP
|
|
|
|
and delete the window.
|
2005-02-11 19:21:47 +00:00
|
|
|
The middle commands fetch the persistent copy of the secrets,
|
2005-01-03 06:40:20 +00:00
|
|
|
append a new secret,
|
|
|
|
and save the updated file back to secstore.
|
|
|
|
The final command loads the new secret into the running factotum.
|
2005-01-13 04:49:19 +00:00
|
|
|
.\" .PP
|
|
|
|
.\" The
|
|
|
|
.\" .I ipso
|
|
|
|
.\" command packages this sequence into a convenient script to simplify editing of
|
|
|
|
.\" .I files
|
|
|
|
.\" stored on a secure store.
|
|
|
|
.\" It copies the named
|
|
|
|
.\" .I files
|
|
|
|
.\" into a local
|
|
|
|
.\" .IR ramfs (4)
|
|
|
|
.\" and invokes
|
|
|
|
.\" .IR acme (1)
|
|
|
|
.\" on them. When the editor exits,
|
|
|
|
.\" .I ipso
|
|
|
|
.\" prompts the user to confirm copying modifed or newly created files back to
|
|
|
|
.\" .I secstore.
|
|
|
|
.\" If no
|
|
|
|
.\" .I file
|
|
|
|
.\" is mentioned,
|
|
|
|
.\" .I ipso
|
|
|
|
.\" grabs all the user's files from
|
|
|
|
.\" .I secstore
|
|
|
|
.\" for editing.
|
|
|
|
.\" .PP
|
|
|
|
.\" By default, ipso will edit the
|
|
|
|
.\" .I secstore
|
|
|
|
.\" files and, if
|
|
|
|
.\" one of them is named
|
|
|
|
.\" .BR factotum ,
|
|
|
|
.\" flush your current keys from factotum and load
|
|
|
|
.\" the new ones from the file.
|
|
|
|
.\" If you supply any of the
|
|
|
|
.\" .BR -e ,
|
|
|
|
.\" .BR -f ,
|
|
|
|
.\" or
|
|
|
|
.\" .BR -l
|
|
|
|
.\" options,
|
|
|
|
.\" .I ipso
|
|
|
|
.\" will just perform the operations you requested, i.e.,
|
|
|
|
.\" edit, flush, and/or load.
|
|
|
|
.\" .PP
|
|
|
|
.\" The
|
|
|
|
.\" .B -s
|
|
|
|
.\" option of
|
|
|
|
.\" .I ipso
|
|
|
|
.\" invokes
|
|
|
|
.\" .IR sam (1)
|
|
|
|
.\" as the editor insted of
|
|
|
|
.\" .BR acme ;
|
|
|
|
.\" the
|
|
|
|
.\" .B -a
|
|
|
|
.\" option provides a similar service for files encrypted by
|
|
|
|
.\" .I aescbc
|
|
|
|
.\" .RI ( q.v. ).
|
|
|
|
.\" With the
|
|
|
|
.\" .B -a
|
|
|
|
.\" option, the full rooted pathname of the
|
|
|
|
.\" .I file
|
|
|
|
.\" must be specified and all
|
|
|
|
.\" .I files
|
|
|
|
.\" must be encrypted with the same key.
|
|
|
|
.\" Also with
|
|
|
|
.\" .BR -a ,
|
|
|
|
.\" newly created files are ignored.
|
2005-01-03 06:40:20 +00:00
|
|
|
.PP
|
|
|
|
.I Aescbc
|
|
|
|
encrypts and decrypts using AES (Rijndael) in cipher
|
|
|
|
block chaining (CBC) mode.
|
|
|
|
.SH SOURCE
|
2005-01-11 17:37:33 +00:00
|
|
|
.B \*9/src/cmd/secstore
|
2005-01-03 06:40:20 +00:00
|
|
|
.SH SEE ALSO
|
|
|
|
.IR factotum (4),
|
2005-02-11 19:21:47 +00:00
|
|
|
.IR secstored (1)
|
2005-01-03 06:40:20 +00:00
|
|
|
.SH BUGS
|
|
|
|
There is deliberately no backup of files on the secstore, so
|
|
|
|
.B -r
|
|
|
|
(or a disk crash) is irrevocable. You are advised to store
|
|
|
|
important secrets in a second location.
|
2005-01-13 04:49:19 +00:00
|
|
|
.\" .PP
|
|
|
|
.\" When using
|
|
|
|
.\" .IR ipso ,
|
|
|
|
.\" secrets will appear as plain text in the editor window,
|
|
|
|
.\" so use the command in private.
|