re-worked documentation and raised issues in TODO about end user authentication.
[monkeysphere.git] / doc / TODO
index c17ef617d77636211ca9b7f69d2ce7d50906629a..5cd9be9cb8784521e652237e484e53fe7376a399 100644 (file)
--- a/doc/TODO
+++ b/doc/TODO
@@ -3,17 +3,64 @@ Next-Steps Monkeysphere Projects:
 
 Detail advantages of monkeysphere: detail the race conditions in ssh,
    and how the monkeysphere can help you reduce these threat vectors:
-   threat model reduction diagrams 
+   threat model reduction diagrams.
 
 Determine how openssh handles multiple processes writing to
-   known_hosts file (atomic appends?)
+   known_hosts/authorized_keys files (lockfile, atomic appends?)
 
-Handle unknown hosts in such a way that they're not always removed
-   from known_hosts file.  Ask user to lsign the host key?
+Handle unverified monkeysphere hosts in such a way that they're not
+   always removed from known_hosts file.  Ask user to lsign the host
+   key?
 
 Handle multiple hostnames (multiple user IDs?) when generating host
    keys with gen-key.
 
+Work out the details (and describe a full use case) for assigning a
+   REVOKER during monkeysphere-server gen_key -- how is this set?  How
+   do we export it so it's available when a second-party revocation is
+   needed?
+
+Actually enable server hostkey publication.
+
+Streamline host key generation, publication, verification.  See
+   doc/george/host-key-publication for what dkg went through on
+   2008-06-19
+
+Streamline authorized_user_ids setup (including question of where
+   authorized_user_ids files should go).  See
+   doc/george/user-id-configuration for what dkg went through on
+   2008-06-19
+
+Ensure that authorized_user_ids are under as tight control as ssh
+   expects from authorized_keys: we don't want monkeysphere to be a
+   weak link in the filesystem.
+
+What happens when there are no entries in the authorized_user_ids file
+   for a user?  /var/cache/monkeysphere/authorized_keys/$USER.tmp
+   seems like it gets created and then left there.
+
+What happens when a user account has no corresponding
+   /etc/monkeysphere/authorized_user_ids/$USER file?  What gets placed
+   in /var/cache/monkeysphere/authorized_keys/$USER?  It looks
+   currently untouched, which could mean bad things for such a user.
+
+Consider the default permissions for
+   /var/cache/monkeysphere/authorized_keys/* (and indeed the whole
+   directory path leading up to that)
+
+What should happen when an admin does 
+   "monkeysphere-server update-users not_an_existent_user"?
+   currently, it adds
+   /etc/monkeysphere/authorized_user_ids/not_an_existent_user, which
+   seems rather wrong.
+
+is /var/cache/monkeysphere/authorized_keys/$USER.tmp guaranteed to
+   avoid collisions?  Why not use a real mktemp file?
+
+As an administrator, how do i reverse the effect of a
+   "monkeysphere-server trust-keys" that i later decide i should not
+   have run?
+
 Make sure alternate ports are handled for known_hosts.
 
 Script to import private key into ssh agent.
@@ -61,16 +108,12 @@ File bug against ssh-keygen about how "-R" option removes comments
 File bug against ssh-keygen to see if we can get it to write to hash a
    known_hosts file to/from stdout/stdin.
 
-Note all threat model reductions (with diagrams).
-
 Add environment variables sections to man pages.
 
 Environment variable scoping.
 
 Move environment variable precedence before conf file.
 
-Handle lockfiles when modifying known_hosts or authorized_keys.
-
 When using ssh-proxycommand, if only host keys found are expired or
    revoked, then output loud warning with prompt, or fail hard.