more manpage cleanup.
[monkeysphere.git] / man / man8 / monkeysphere-host.8
1 .TH MONKEYSPHERE-SERVER "8" "March 2009" "monkeysphere" "User Commands"
2
3 .SH NAME
4
5 monkeysphere\-host - Monkeysphere host admin tool.
6
7 .SH SYNOPSIS
8
9 .B monkeysphere\-host \fIsubcommand\fP [\fIargs\fP]
10
11 .SH DESCRIPTION
12
13 \fBMonkeysphere\fP is a framework to leverage the OpenPGP web of trust
14 for OpenSSH authentication.  OpenPGP keys are tracked via GnuPG, and
15 added to the authorized_keys and known_hosts files used by OpenSSH for
16 connection authentication.
17
18 \fBmonkeysphere\-host\fP is a Monkeysphere server admin utility.
19
20 .SH SUBCOMMANDS
21
22 \fBmonkeysphere\-host\fP takes various subcommands:
23 .TP
24 .B import\-key FILE NAME[:PORT]
25 Import a pem-encoded ssh secret host key from file FILE.  If FILE
26 is `\-', then the key will be imported from stdin.  NAME[:PORT] is used
27 to specify the fully-qualified hostname (and port) used in the user ID
28 of the new OpenPGP key.  If PORT is not specified, the no port is
29 added to the user ID, which means port 22 is assumed.  `i' may be used
30 in place of `import\-key'.
31 .TP
32 .B show\-key
33 Output information about host's OpenPGP and SSH keys.  `s' may be used
34 in place of `show\-key'.
35 .TP
36 .B set\-expire [EXPIRE]
37 Extend the validity of the OpenPGP key for the host until EXPIRE from
38 the present.  If EXPIRE is not specified, then the user will be
39 prompted for the extension term.  Expiration is specified as with
40 GnuPG (measured from today's date):
41 .nf
42          0 = key does not expire
43       <n>  = key expires in n days
44       <n>w = key expires in n weeks
45       <n>m = key expires in n months
46       <n>y = key expires in n years
47 .fi
48 `e' may be used in place of `set\-expire'.
49 .TP
50 .B add\-hostname HOSTNAME
51 Add a hostname user ID to the server host key.  `n+' may be used in
52 place of `add\-hostname'.
53 .TP
54 .B revoke\-hostname HOSTNAME
55 Revoke a hostname user ID from the server host key.  `n\-' may be used
56 in place of `revoke\-hostname'.
57 .TP
58 .B add\-revoker KEYID|FILE
59 Add a revoker to the host's OpenPGP key.  The key ID will be loaded
60 from the keyserver.  A file may be loaded instead of pulling the key
61 from the keyserver by specifying the path to the file as the argument,
62 or by specifying `\-' to load from stdin.  `r+' may be be used in place
63 of `add-revoker'.
64 .TP
65 .B revoke\-key
66 Generate (with the option to publish) a revocation certificate for the
67 host's OpenPGP key.  If such a certificate is published, your host key
68 will be permanently revoked.  This subcommand will ask you a series of
69 questions, and then generate a key revocation certificate, sending it
70 to stdout.  If you explicitly tell it to publish the revocation
71 certificate immediately, it will send it to the public keyservers.
72 USE WITH CAUTION!
73 .TP
74 .B publish\-key
75 Publish the host's OpenPGP key to the public keyservers.  `p' may be
76 used in place of `publish-key'.  Note that there is no way to remove a
77 key from the public keyservers once it is published!
78 .TP
79 .B help
80 Output a brief usage summary.  `h' or `?' may be used in place of
81 `help'.
82 .TP
83 .B version
84 show version number
85
86
87 Other commands:
88 .TP
89 .B diagnostics
90 Review the state of the monkeysphere server host key and report on
91 suggested changes.  Among other checks, this includes making sure
92 there is a valid host key, that the key is published, that the sshd
93 configuration points to the right place, etc.  `d' may be used in
94 place of `diagnostics'.
95
96 .SH SETUP HOST AUTHENTICATION
97
98 To enable host verification via the monkeysphere, the host's key must
99 be published to the Web of Trust.  This is not done by default.  To
100 publish the host key to the keyservers, run the following command:
101
102 $ monkeysphere\-host publish\-key
103
104 In order for users logging into the system to be able to identify the
105 host via the monkeysphere, at least one person (e.g. a server admin)
106 will need to sign the host's key.  This is done using standard OpenPGP
107 keysigning techniques, usually: pull the key from the keyserver,
108 verify and sign the key, and then re-publish the signature.  Once an
109 admin's signature is published, users logging into the host can use it
110 to validate the host's key.
111
112 .SH ENVIRONMENT
113
114 The following environment variables will override those specified in
115 the config file (defaults in parentheses):
116 .TP
117 MONKEYSPHERE_LOG_LEVEL
118 Set the log level (INFO).  Can be SILENT, ERROR, INFO, VERBOSE, DEBUG, in
119 increasing order of verbosity.
120 .TP
121 MONKEYSPHERE_KEYSERVER
122 OpenPGP keyserver to use (pool.sks\-keyservers.net).
123 .TP
124 MONKEYSPHERE_PROMPT
125 If set to `false', never prompt the user for confirmation. (true)
126
127
128 .SH FILES
129
130 .TP
131 /etc/monkeysphere/monkeysphere\-host.conf
132 System monkeysphere-host config file.
133 .TP
134 /var/lib/monkeysphere/host/ssh_host_rsa_key.pub.gpg
135 A world-readable copy of the host's public key in OpenPGP format,
136 including all relevant self-signatures.
137
138 .SH AUTHOR
139
140 Written by:
141 Jameson Rollins <jrollins@fifthhorseman.net>,
142 Daniel Kahn Gillmor <dkg@fifthhorseman.net>,
143 Matthew Goins <mjgoins@openflows.com>
144
145 .SH SEE ALSO
146
147 .BR monkeysphere (1),
148 .BR monkeysphere\-authentication (8),
149 .BR monkeysphere (7),
150 .BR gpg (1),
151 .BR ssh (1),
152 .BR sshd (8),
153