Merge commit 'dkg/master'
authorMatt Goins <mjgoins@openflows.com>
Sat, 31 Jan 2009 23:32:12 +0000 (18:32 -0500)
committerMatt Goins <mjgoins@openflows.com>
Sat, 31 Jan 2009 23:32:12 +0000 (18:32 -0500)
Conflicts:

src/monkeysphere-host

src/monkeysphere-host
src/subcommands/mh/add-hostname
src/subcommands/mh/add-revoker
src/subcommands/mh/diagnostics
src/subcommands/mh/extend-key
src/subcommands/mh/gen-key
src/subcommands/mh/import-key
src/subcommands/mh/publish-key
src/subcommands/mh/revoke-hostname
src/subcommands/mh/revoke-key
src/subcommands/mh/show-key [deleted file]

index 19ab5fcf8e7c84c72c13cff342b0c30872b524c9..94392647c32693ce74bce898debcfd818e69170b 100755 (executable)
@@ -20,11 +20,6 @@ export SYSSHAREDIR
 SYSDATADIR=${MONKEYSPHERE_SYSDATADIR:-"/var/lib/monkeysphere/host"}
 export SYSDATADIR
 
-# monkeysphere temp directory, in sysdatadir to enable atomic moves of
-# authorized_keys files
-MSTMPDIR="${SYSDATADIR}/tmp"
-export MSTMPDIR
-
 # UTC date in ISO 8601 format if needed
 DATE=$(date -u '+%FT%T')
 
@@ -59,7 +54,6 @@ subcommands:
   gen-key (g) NAME[:PORT]            generate gpg key for the host
    --length (-l) BITS                  key length in bits (2048)
    --expire (-e) EXPIRE                date to expire
-   --revoker (-r) FINGERPRINT          add a revoker
   diagnostics (d)                    monkeysphere host status
 
  version (v)                         show version number
@@ -119,6 +113,35 @@ check_host_keyring() {
        || failure "You don't appear to have a Monkeysphere host key on this server.  Please run 'monkeysphere-server gen-key' first."
 }
 
+# show info about the host key
+show_key() {
+    local fingerprintPGP
+    local fingerprintSSH
+    local ret=0
+
+    # FIXME: you shouldn't have to be root to see the host key fingerprint
+    if is_root ; then
+       check_host_keyring
+       fingerprintPGP=$(fingerprint_server_key)
+       gpg_authentication "--fingerprint --list-key --list-options show-unusable-uids $fingerprintPGP" 2>/dev/null
+       echo "OpenPGP fingerprint: $fingerprintPGP"
+    else
+       log info "You must be root to see host OpenPGP fingerprint."
+       ret='1'
+    fi
+
+    if [ -f "${SYSDATADIR}/ssh_host_rsa_key.pub" ] ; then
+       fingerprintSSH=$(ssh-keygen -l -f "${SYSDATADIR}/ssh_host_rsa_key.pub" | \
+           awk '{ print $1, $2, $4 }')
+       echo "ssh fingerprint: $fingerprintSSH"
+    else
+       log info "SSH host key not found."
+       ret='1'
+    fi
+
+return $ret
+}
+
 ########################################################################
 # MAIN
 ########################################################################
index fc1ae9665ec76745ffed24900e72bea31e8e12fb..7726a298384d2ff6842ac0945391ef050e428bb6 100755 (executable)
@@ -12,6 +12,8 @@
 
 # add hostname user ID to server key
 
+add_hostname() {
+
 local userID
 local fingerprint
 local tmpuidMatch
@@ -61,7 +63,7 @@ if echo "$adduidCommand" | \
     # update the trustdb for the authentication keyring
     gpg_authentication "--check-trustdb"
 
-    show_server_key
+    show_key
 
     echo
     echo "NOTE: User ID added to key, but key not published."
@@ -69,3 +71,5 @@ if echo "$adduidCommand" | \
 else
     failure "Problem adding user ID."
 fi
+
+}
index 8783cd14debdd32ace171204547b7ffdef270c99..8c4651e5593b65e0ecab441c8dae708a8d4df801 100755 (executable)
@@ -12,5 +12,9 @@
 
 # add a revoker to the host key
 
+add_revoker() {
+
 # FIXME: implement!
 failure "not implemented yet!"
+
+}
index f411e06bef57beef29957ecc5c3a6dda0f580091..5b04b14d2d7f63de216b73a04316243b89fa0c7e 100755 (executable)
 # They are Copyright 2008, and are all released under the GPL, version 3
 # or later.
 
-#  * check on the status and validity of the key and public certificates
+# check on the status and validity of the key and public certificates
+
+diagnostics() {
+
 local seckey
 local keysfound
 local curdate
@@ -177,3 +180,5 @@ if [ "$problemsfound" -gt 0 ]; then
 else
     echo "Everything seems to be in order!"
 fi
+
+}
index 755fe13f19e74cb86c784213c456977ae933ca01..8f1ecc29508af0accb014490b1b162410e1e64e9 100755 (executable)
@@ -12,6 +12,8 @@
 
 # extend the lifetime of a host key:
 
+extend_key() {
+
 local fpr=$(fingerprint_server_key)
 local extendTo="$1"
 
@@ -27,3 +29,5 @@ EOF
 echo
 echo "NOTE: Host key expiration date adjusted, but not yet published."
 echo "Run '$PGRM publish-key' to publish the new expiration date."
+
+}
index 554c04c5a8a43ccc1cffe2290cff7e80448fad47..8558441a9499b00bcf9750ef56dadeb274cc841c 100755 (executable)
@@ -14,7 +14,6 @@ local keyType="RSA"
 local keyLength="2048"
 local keyUsage="auth"
 local keyExpire
-local revoker
 local hostName=$(hostname -f)
 local userID
 local keyParameters
@@ -36,10 +35,6 @@ while true ; do
                keyExpire="$2"
                shift 2
                ;;
-           -r|--revoker)
-               revoker="$2"
-               shift 2
-               ;;
            *)
                if [ "$(echo "$1" | cut -c 1)" = '-' ] ; then
                    failure "Unknown option '$1'.
@@ -65,15 +60,6 @@ Key-Usage: $keyUsage
 Name-Real: $userID
 Expire-Date: $keyExpire"
 
-# add the revoker field if specified
-# FIXME: the "1:" below assumes that $REVOKER's key is an RSA key.
-# FIXME: key is marked "sensitive"?  is this appropriate?
-if [ "$revoker" ] ; then
-       keyParameters=\
-"${keyParameters}
-Revoker: 1:${revoker} sensitive"
-fi
-
 echo "The following key parameters will be used for the host private key:"
 echo "$keyParameters"
 
@@ -113,4 +99,4 @@ gpg_authentication "--export-options export-minimal --armor --export 0x${fingerp
 log info "SSH host public key in OpenPGP form: ${SYSDATADIR}/ssh_host_rsa_key.pub.gpg"
 
 # show info about new key
-show_server_key
+show_key
index bbeb37fb2dbf8a370ed005b6b73ba61fe9a89752..ac67711742859ad20e898fc2c45248d9fafd35f9 100755 (executable)
@@ -81,4 +81,4 @@ gpg_authentication "--export-options export-minimal --armor --export 0x${fingerp
 log info "SSH host public key in OpenPGP form: ${SYSDATADIR}/ssh_host_rsa_key.pub.gpg"
 
 # show info about new key
-show_server_key
+show_key
index 792d858796795d1103327262368ab561e3e1e53b..8b36a18a39f21964dac7c87a58dfecd8f679756a 100755 (executable)
@@ -12,6 +12,8 @@
 
 # publish server key to keyserver
 
+publish_key() {
+
 read -p "Really publish host key to $KEYSERVER? (y/N) " OK; OK=${OK:=N}
 if [ ${OK/y/Y} != 'Y' ] ; then
     failure "key not published."
@@ -22,3 +24,5 @@ fingerprint=$(fingerprint_server_key)
 
 # publish host key
 gpg_authentication "--keyserver $KEYSERVER --send-keys '0x${fingerprint}!'"
+
+}
index decac8692f5bb7cd92a67d970e6b3bdda2ba3d27..0a773a31a6de9b1f41562a6b4493b56c419e9ad4 100755 (executable)
@@ -12,6 +12,8 @@
 
 # revoke hostname user ID from host key
 
+revoke_hostname() {
+
 local userID
 local fingerprint
 local tmpuidMatch
@@ -79,7 +81,7 @@ if echo "$revuidCommand" | \
     # update the trustdb for the authentication keyring
     gpg_authentication "--check-trustdb"
 
-    show_server_key
+    show_key
 
     echo
     echo "NOTE: User ID revoked, but revocation not published."
@@ -87,3 +89,5 @@ if echo "$revuidCommand" | \
 else
     failure "Problem revoking user ID."
 fi
+
+}
index b4ce40115388536b6eb65f4f2e2776f2a1d3fce2..3810a0b89b97ec4b2468510ca4d5c6ad54a701a1 100755 (executable)
@@ -12,5 +12,9 @@
 
 # revoke host key
 
+revoke_key() {
+
 # FIXME: implement!
 failure "not implemented yet!"
+
+}
diff --git a/src/subcommands/mh/show-key b/src/subcommands/mh/show-key
deleted file mode 100755 (executable)
index c62ec16..0000000
+++ /dev/null
@@ -1,37 +0,0 @@
-#!/usr/bin/env bash
-
-# Monkeysphere host show-key subcommand
-#
-# The monkeysphere scripts are written by:
-# Jameson Rollins <jrollins@fifthhorseman.net>
-# Jamie McClelland <jm@mayfirst.org>
-# Daniel Kahn Gillmor <dkg@fifthhorseman.net>
-#
-# They are Copyright 2008, and are all released under the GPL, version 3
-# or later.
-
-local fingerprintPGP
-local fingerprintSSH
-local ret=0
-
-# FIXME: you shouldn't have to be root to see the host key fingerprint
-if is_root ; then
-    check_host_keyring
-    fingerprintPGP=$(fingerprint_server_key)
-    gpg_authentication "--fingerprint --list-key --list-options show-unusable-uids $fingerprintPGP" 2>/dev/null
-    echo "OpenPGP fingerprint: $fingerprintPGP"
-else
-    log info "You must be root to see host OpenPGP fingerprint."
-    ret='1'
-fi
-
-if [ -f "${SYSDATADIR}/ssh_host_rsa_key.pub" ] ; then
-    fingerprintSSH=$(ssh-keygen -l -f "${SYSDATADIR}/ssh_host_rsa_key.pub" | \
-       awk '{ print $1, $2, $4 }')
-    echo "ssh fingerprint: $fingerprintSSH"
-else
-    log info "SSH host key not found."
-    ret='1'
-fi
-
-return $ret