summaryrefslogtreecommitdiff
path: root/man/man1/monkeysphere.1
blob: 9cdf0fc3542307cfffe4ba098a0e5aa5e5ed3793 (plain)
  1. .TH MONKEYSPHERE "1" "June 2008" "monkeysphere 0.1" "User Commands"
  2. .SH NAME
  3. monkeysphere \- MonkeySphere client user interface
  4. .SH SYNOPSIS
  5. .B monkeysphere \fIcommand\fP [\fIargs\fP]
  6. .SH DESCRIPTION
  7. \fBMonkeySphere\fP is a system to leverage the OpenPGP Web of Trust
  8. for ssh authentication. OpenPGP keys are tracked via GnuPG, and added
  9. to the ssh authorized_keys and known_hosts files to be used for
  10. authentication of ssh connections.
  11. \fBmonkeysphere\fP is the MonkeySphere client utility.
  12. .SH SUBCOMMANDS
  13. \fBmonkeysphere\fP takes various subcommands:
  14. .TP
  15. .B update-known_hosts [HOST]...
  16. Update the known_hosts file. For each specified host, gpg will be
  17. queried for a key associated with the host URI (see HOST URIs),
  18. querying a keyserver if specified. If a key is found, it will be
  19. converted to an ssh key, and any matching ssh keys will be removed
  20. from the user's known_hosts file. If the found key is acceptable (see
  21. KEY ACCEPTABILITY), then the key will be updated and re-added to the
  22. known_hosts file. If no gpg key is found for the host, then nothing
  23. is done. If no hosts are specified, all hosts listed in the
  24. known_hosts file will be processed. This command will exit with a
  25. status of 0 if all host were found to be acceptable, 2 if all the
  26. hosts were found to be unacceptable (ie. with keys removed from the
  27. known_hosts file), and 1 otherwise. `k' may be used in place of
  28. `update-known_hosts'.
  29. .TP
  30. .B update-authorized_keys
  31. Update the monkeysphere authorized_keys file. For each user ID in the
  32. user's authorized_user_ids file, gpg will be queried for keys
  33. associated with that user ID, querying a keyserver if specified. If a
  34. key is found, it will be converted to an ssh key, and any matching ssh
  35. keys will be removed from the user's authorized_keys file. If the
  36. found key is acceptable (see KEY ACCEPTABILITY), then the key will be
  37. updated and re-added to the authorized_keys file. If no gpg key is
  38. found for the user ID, then nothing is done. This command will exit
  39. with a status of 0 if all user IDs were found to be acceptable, 2 if
  40. all the user IDs were found to be unacceptable (ie. with keys removed
  41. from the authorized_keys file), and 1 otherwise. `a' may be used in
  42. place of `update-authorized_keys'.
  43. .TP
  44. .B gen-subkey KEYID
  45. Generate an `a` capable subkey. For the primary key with the
  46. specified key ID, generate a subkey with "authentication" capability
  47. that can be used for MonkeySphere transactions. `g' may be used in
  48. place of `gen-subkey'.
  49. .TP
  50. .B help
  51. Output a brief usage summary. `h' or `?' may be used in place of
  52. `help'.
  53. .SH HOST URIs
  54. Host OpenPGP keys have associated user IDs that use the ssh URI
  55. specification for the host, ie. "ssh://host.full.domain[:port]".
  56. .SH KEY ACCEPTABILITY
  57. GPG keys are considered acceptable if the following criteria are met:
  58. .TP
  59. .B capability
  60. The key must have the "authentication" ("a") usage flag set.
  61. .TP
  62. .B validity
  63. The key must be "fully" valid (ie. signed by a trusted certifier), and
  64. must not be expired or revoked.
  65. .SH FILES
  66. .TP
  67. ~/.config/monkeysphere/monkeysphere.conf
  68. User monkeysphere config file.
  69. .TP
  70. /etc/monkeysphere/monkeysphere.conf
  71. System-wide monkeysphere config file.
  72. .TP
  73. ~/.config/monkeysphere/authorized_user_ids
  74. OpenPGP user IDs associated with keys that will be checked for
  75. addition to the authorized_keys file.
  76. .SH AUTHOR
  77. Written by Jameson Rollins <jrollins@fifthhorseman.net>
  78. .SH SEE ALSO
  79. .BR monkeysphere-ssh-proxycommand (1),
  80. .BR monkeysphere-server (8),
  81. .BR ssh (1),
  82. .BR gpg (1)