summaryrefslogtreecommitdiff
path: root/doc/TODO
blob: 5cd9be9cb8784521e652237e484e53fe7376a399 (plain)
  1. Next-Steps Monkeysphere Projects:
  2. ---------------------------------
  3. Detail advantages of monkeysphere: detail the race conditions in ssh,
  4. and how the monkeysphere can help you reduce these threat vectors:
  5. threat model reduction diagrams.
  6. Determine how openssh handles multiple processes writing to
  7. known_hosts/authorized_keys files (lockfile, atomic appends?)
  8. Handle unverified monkeysphere hosts in such a way that they're not
  9. always removed from known_hosts file. Ask user to lsign the host
  10. key?
  11. Handle multiple hostnames (multiple user IDs?) when generating host
  12. keys with gen-key.
  13. Work out the details (and describe a full use case) for assigning a
  14. REVOKER during monkeysphere-server gen_key -- how is this set? How
  15. do we export it so it's available when a second-party revocation is
  16. needed?
  17. Actually enable server hostkey publication.
  18. Streamline host key generation, publication, verification. See
  19. doc/george/host-key-publication for what dkg went through on
  20. 2008-06-19
  21. Streamline authorized_user_ids setup (including question of where
  22. authorized_user_ids files should go). See
  23. doc/george/user-id-configuration for what dkg went through on
  24. 2008-06-19
  25. Ensure that authorized_user_ids are under as tight control as ssh
  26. expects from authorized_keys: we don't want monkeysphere to be a
  27. weak link in the filesystem.
  28. What happens when there are no entries in the authorized_user_ids file
  29. for a user? /var/cache/monkeysphere/authorized_keys/$USER.tmp
  30. seems like it gets created and then left there.
  31. What happens when a user account has no corresponding
  32. /etc/monkeysphere/authorized_user_ids/$USER file? What gets placed
  33. in /var/cache/monkeysphere/authorized_keys/$USER? It looks
  34. currently untouched, which could mean bad things for such a user.
  35. Consider the default permissions for
  36. /var/cache/monkeysphere/authorized_keys/* (and indeed the whole
  37. directory path leading up to that)
  38. What should happen when an admin does
  39. "monkeysphere-server update-users not_an_existent_user"?
  40. currently, it adds
  41. /etc/monkeysphere/authorized_user_ids/not_an_existent_user, which
  42. seems rather wrong.
  43. is /var/cache/monkeysphere/authorized_keys/$USER.tmp guaranteed to
  44. avoid collisions? Why not use a real mktemp file?
  45. As an administrator, how do i reverse the effect of a
  46. "monkeysphere-server trust-keys" that i later decide i should not
  47. have run?
  48. Make sure alternate ports are handled for known_hosts.
  49. Script to import private key into ssh agent.
  50. Provide a friendly interactive UI for marginal or failing client-side
  51. hostkey verifications. Handle the common cases smoothly, and
  52. provide good debugging info for the unusual cases.
  53. Make sure onak properly escapes user IDs with colons in them.
  54. Build a decent, presentable web site for documentation, evangelism,
  55. etc. Include a mention of how to report trouble or concerns.
  56. Create ssh2openpgp or convert to full-fledged keytrans.
  57. Resolve the bugs listed in openpgp2ssh(1):BUGS.
  58. Understand and document alternate trustdb models.
  59. Understand and document the output of gpg --check-trustdb:
  60. gpg: 3 marginal(s) needed, 1 complete(s) needed, PGP trust model
  61. gpg: depth: 0 valid: 2 signed: 20 trust: 0-, 0q, 0n, 0m, 0f, 2u
  62. gpg: depth: 1 valid: 20 signed: 67 trust: 15-, 0q, 1n, 3m, 1f, 0u
  63. gpg: next trustdb check due at 2008-10-09
  64. Understand and document the numeric values between sig! and the keyid
  65. in "gpg --check-sigs $KEYID" . Compare with the details found from
  66. "gpg --with-colons --check-sigs $KEYID". This has to do with trust
  67. signatures.
  68. Fix gpg's documentation to clarify the difference between validity and
  69. ownertrust. Include better documentation for trust signatures.
  70. Make it easier to do domain-relative ssh host trust signatures with
  71. gnupg. (e.g. "i trust Jamie McClelland (keyID 76CC057D) to properly
  72. identify ssh servers in the mayfirst.org domain") See:
  73. http://tools.ietf.org/html/rfc4880#section-5.2.3.21 and grep for
  74. "tsign" in gpg(1).
  75. Fix the order of questions when user does a tsign in gpg or gpg2.
  76. File bug against ssh-keygen about how "-R" option removes comments
  77. from known_hosts file.
  78. File bug against ssh-keygen to see if we can get it to write to hash a
  79. known_hosts file to/from stdout/stdin.
  80. Add environment variables sections to man pages.
  81. Environment variable scoping.
  82. Move environment variable precedence before conf file.
  83. When using ssh-proxycommand, if only host keys found are expired or
  84. revoked, then output loud warning with prompt, or fail hard.
  85. Update monkeysphere-ssh-proxycommand man page with new keyserver
  86. checking policy info.
  87. Update monkeysphere-ssh-proxycommand man page with info about
  88. no-connect option.