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