summaryrefslogtreecommitdiff
path: root/man/man8/monkeysphere-host.8
blob: 78b6b4a375afdaf680b5ab8b5e9a745e75c32d38 (plain)
  1. .TH MONKEYSPHERE-SERVER "8" "June 2008" "monkeysphere" "User Commands"
  2. .SH NAME
  3. monkeysphere-host \- Monkeysphere host admin tool.
  4. .SH SYNOPSIS
  5. .B monkeysphere-host \fIsubcommand\fP [\fIargs\fP]
  6. .br
  7. .B monkeysphere-host expert \fIexpert-subcommand\fP [\fIargs\fP]
  8. .SH DESCRIPTION
  9. \fBMonkeysphere\fP is a framework to leverage the OpenPGP web of trust
  10. for OpenSSH authentication. OpenPGP keys are tracked via GnuPG, and
  11. added to the authorized_keys and known_hosts files used by OpenSSH for
  12. connection authentication.
  13. \fBmonkeysphere-host\fP is a Monkeysphere server admin utility.
  14. .SH SUBCOMMANDS
  15. \fBmonkeysphere-host\fP takes various subcommands:
  16. .TP
  17. .B show-key
  18. Output information about host's OpenPGP and SSH keys. `s' may be used
  19. in place of `show-key'.
  20. .TP
  21. .B extend-key EXPIRE
  22. Extend the validity of the OpenPGP key for the host until EXPIRE from
  23. the present. If EXPIRE is not specified, then the user will be
  24. prompted for the extension term. Expiration is specified like GnuPG
  25. does:
  26. .nf
  27. 0 = key does not expire
  28. <n> = key expires in n days
  29. <n>w = key expires in n weeks
  30. <n>m = key expires in n months
  31. <n>y = key expires in n years
  32. .fi
  33. `e' may be used in place of `extend-key'.
  34. .TP
  35. .B add-hostname HOSTNAME
  36. Add a hostname user ID to the server host key. `n+' may be used in
  37. place of `add-hostname'.
  38. .TP
  39. .B revoke-hostname HOSTNAME
  40. Revoke a hostname user ID from the server host key. `n-' may be used
  41. in place of `revoke-hostname'.
  42. .TP
  43. .B add-revoker FINGERPRINT
  44. Add a revoker to the host's OpenPGP key. `o' may be be used in place
  45. of `add-revoker'.
  46. .TP
  47. .B revoke-key
  48. Revoke the host's OpenPGP key. `r' may be used in place of
  49. `revoke-key'.
  50. .TP
  51. .B publish-key
  52. Publish the host's OpenPGP key to the keyserver. `p' may be used in
  53. place of `publish-key'.
  54. .TP
  55. .B help
  56. Output a brief usage summary. `h' or `?' may be used in place of
  57. `help'.
  58. .TP
  59. .B version
  60. show version number
  61. .SH "EXPERT" SUBCOMMANDS
  62. Some commands are very unlikely to be needed by most administrators.
  63. These commands must prefaced by the word `expert'.
  64. .TP
  65. .B gen-key [HOSTNAME]
  66. Generate a OpenPGP key for the host. If HOSTNAME is not specified,
  67. then the system fully-qualified domain name will be user. An
  68. alternate key bit length can be specified with the `-l' or `--length'
  69. option (default 2048). An expiration length can be specified with the
  70. `-e' or `--expire' option (prompt otherwise). The expiration format
  71. is the same as that of \fBextend-key\fP, below. `g' may be used in
  72. place of `gen-key'.
  73. .TP
  74. .B import-key
  75. FIXME:
  76. import-key (i) import existing ssh key to gpg
  77. --hostname (-h) NAME[:PORT] hostname for key user ID
  78. --keyfile (-f) FILE key file to import
  79. --expire (-e) EXPIRE date to expire
  80. .TP
  81. .B diagnostics
  82. Review the state of the monkeysphere server host key and report on
  83. suggested changes. Among other checks, this includes making sure
  84. there is a valid host key, that the key is published, that the sshd
  85. configuration points to the right place, etc. `d' may be used in
  86. place of `diagnostics'.
  87. .SH SETUP HOST AUTHENTICATION
  88. To enable host verification via the monkeysphere, the host's key must
  89. be published to the Web of Trust. This is not done by default. To
  90. publish the host key to the keyservers, run the following command:
  91. $ monkeysphere-host publish-key
  92. You must also modify the sshd_config on the server to tell sshd where
  93. the new server host key is located:
  94. HostKey /var/lib/monkeysphere/host/ssh_host_rsa_key
  95. In order for users logging into the system to be able to identify the
  96. host via the monkeysphere, at least one person (e.g. a server admin)
  97. will need to sign the host's key. This is done using standard OpenPGP
  98. keysigning techniques, usually: pull the key from the keyserver,
  99. verify and sign the key, and then re-publish the signature. Once an
  100. admin's signature is published, users logging into the host can use it
  101. to validate the host's key.
  102. .SH ENVIRONMENT
  103. The following environment variables will override those specified in
  104. the config file (defaults in parentheses):
  105. .TP
  106. MONKEYSPHERE_LOG_LEVEL
  107. Set the log level (INFO). Can be SILENT, ERROR, INFO, VERBOSE, DEBUG, in
  108. increasing order of verbosity.
  109. .TP
  110. MONKEYSPHERE_KEYSERVER
  111. OpenPGP keyserver to use (pool.sks-keyservers.net).
  112. .SH FILES
  113. .TP
  114. /etc/monkeysphere/monkeysphere-host.conf
  115. System monkeysphere-host config file.
  116. .TP
  117. /var/lib/monkeysphere/host/ssh_host_rsa_key
  118. Copy of the host's private key in ssh format, suitable for use by
  119. sshd.
  120. .SH AUTHOR
  121. Written by:
  122. Jameson Rollins <jrollins@fifthhorseman.net>,
  123. Daniel Kahn Gillmor <dkg@fifthhorseman.net>,
  124. Matthew Goins <mjgoins@openflows.com>
  125. .SH SEE ALSO
  126. .BR monkeysphere (1),
  127. .BR monkeysphere-authentication (8),
  128. .BR monkeysphere (7),
  129. .BR gpg (1),
  130. .BR ssh (1)