projects
/
monkeysphere.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
adding new bug about cssh.
[monkeysphere.git]
/
src
/
monkeysphere-server
diff --git
a/src/monkeysphere-server
b/src/monkeysphere-server
index 4c8ecdcfc48f991c8fd726e40c5fa7190882b75a..8139387cca858152a2b9a2da42becbddabb04468 100755
(executable)
--- a/
src/monkeysphere-server
+++ b/
src/monkeysphere-server
@@
-4,6
+4,7
@@
#
# The monkeysphere scripts are written by:
# Jameson Rollins <jrollins@fifthhorseman.net>
#
# 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
# Daniel Kahn Gillmor <dkg@fifthhorseman.net>
#
# They are Copyright 2008, and are all released under the GPL, version 3
@@
-19,7
+20,7
@@
export SHARE
VARLIB="/var/lib/monkeysphere"
export VARLIB
VARLIB="/var/lib/monkeysphere"
export VARLIB
-#
date in UTF
format if needed
+#
UTC date in ISO 8601
format if needed
DATE=$(date -u '+%FT%T')
# unset some environment variables that could screw things up
DATE=$(date -u '+%FT%T')
# unset some environment variables that could screw things up
@@
-33,7
+34,7
@@
RETURN=0
########################################################################
usage() {
########################################################################
usage() {
- cat <<EOF
+ cat <<EOF
>&2
usage: $PGRM <subcommand> [options] [args]
MonkeySphere server admin tool.
usage: $PGRM <subcommand> [options] [args]
MonkeySphere server admin tool.
@@
-156,7
+157,7
@@
update_users() {
for uname in $unames ; do
# check all specified users exist
if ! getent passwd "$uname" >/dev/null ; then
for uname in $unames ; do
# check all specified users exist
if ! getent passwd "$uname" >/dev/null ; then
- log "----- unknown user '$uname' -----"
+ log
error
"----- unknown user '$uname' -----"
continue
fi
continue
fi
@@
-172,17
+173,17
@@
update_users() {
fi
fi
fi
fi
- log "----- user: $uname -----"
+ log
verbose
"----- user: $uname -----"
# exit if the authorized_user_ids file is empty
if ! check_key_file_permissions "$uname" "$AUTHORIZED_USER_IDS" ; then
# exit if the authorized_user_ids file is empty
if ! check_key_file_permissions "$uname" "$AUTHORIZED_USER_IDS" ; then
- log
"Improper permissions on authorized_user_ids file path
."
+ log
error "Improper permissions on path '$AUTHORIZED_USER_IDS'
."
continue
fi
# check permissions on the authorized_keys file path
if ! check_key_file_permissions "$uname" "$RAW_AUTHORIZED_KEYS" ; then
continue
fi
# check permissions on the authorized_keys file path
if ! check_key_file_permissions "$uname" "$RAW_AUTHORIZED_KEYS" ; then
- log
"Improper permissions on authorized_keys file path path
."
+ log
error "Improper permissions on path '$RAW_AUTHORIZED_KEYS'
."
continue
fi
continue
fi
@@
-226,9
+227,8
@@
update_users() {
# add user-controlled authorized_keys file path if specified
if [ "$rawAuthorizedKeys" != '-' -a -s "$rawAuthorizedKeys" ] ; then
# add user-controlled authorized_keys file path if specified
if [ "$rawAuthorizedKeys" != '-' -a -s "$rawAuthorizedKeys" ] ; then
- log
-n
"adding raw authorized_keys file... "
+ log
verbose
"adding raw authorized_keys file... "
cat "$rawAuthorizedKeys" >> "$AUTHORIZED_KEYS"
cat "$rawAuthorizedKeys" >> "$AUTHORIZED_KEYS"
- loge "done."
fi
# openssh appears to check the contents of the
fi
# openssh appears to check the contents of the
@@
-346,7
+346,7
@@
EOF
EOF
)
EOF
)
- log "generating server key..."
+ log
verbose
"generating server key..."
echo "$keyParameters" | gpg_host --batch --gen-key
# output the server fingerprint
echo "$keyParameters" | gpg_host --batch --gen-key
# output the server fingerprint
@@
-356,7
+356,7
@@
EOF
fingerprint=$(fingerprint_server_key)
# export host ownertrust to authentication keyring
fingerprint=$(fingerprint_server_key)
# export host ownertrust to authentication keyring
- log "setting ultimate owner trust for server key..."
+ log
verbose
"setting ultimate owner trust for server key..."
echo "${fingerprint}:6:" | gpg_authentication "--import-ownertrust"
# translate the private key to ssh format, and export to a file
echo "${fingerprint}:6:" | gpg_authentication "--import-ownertrust"
# translate the private key to ssh format, and export to a file
@@
-365,7
+365,7
@@
EOF
(umask 077 && \
gpg_host --export-secret-key "$fingerprint" | \
openpgp2ssh "$fingerprint" > "${VARLIB}/ssh_host_rsa_key")
(umask 077 && \
gpg_host --export-secret-key "$fingerprint" | \
openpgp2ssh "$fingerprint" > "${VARLIB}/ssh_host_rsa_key")
- log "Private SSH host key output to file: ${VARLIB}/ssh_host_rsa_key"
+ log
info
"Private SSH host key output to file: ${VARLIB}/ssh_host_rsa_key"
}
# extend the lifetime of a host key:
}
# extend the lifetime of a host key:
@@
-469,7
+469,7
@@
revoke_hostname() {
echo "WARNING: There is a known bug in this function."
echo "This function has been known to occasionally revoke the wrong user ID."
echo "Please see the following bug report for more information:"
echo "WARNING: There is a known bug in this function."
echo "This function has been known to occasionally revoke the wrong user ID."
echo "Please see the following bug report for more information:"
- echo "http://monkeysphere.info/bugs/revoke-hostname-revoking-wrong-userid/"
+ echo "http://
web.
monkeysphere.info/bugs/revoke-hostname-revoking-wrong-userid/"
read -p "Are you sure you would like to proceed? (y/N) " OK; OK=${OK:=N}
if [ ${OK/y/Y} != 'Y' ] ; then
failure "aborting."
read -p "Are you sure you would like to proceed? (y/N) " OK; OK=${OK:=N}
if [ ${OK/y/Y} != 'Y' ] ; then
failure "aborting."
@@
-568,6
+568,14
@@
diagnostics() {
warnwindow='2 months'
warndate=$(date +%s -d "$warnwindow")
warnwindow='2 months'
warndate=$(date +%s -d "$warnwindow")
+ if ! id monkeysphere >/dev/null ; then
+ echo "! No monkeysphere user found! Please create a monkeysphere system user."
+ fi
+
+ if ! [ -d "$VARLIB" ] ; then
+ echo "! no $VARLIB directory found. Please create it."
+ fi
+
echo "Checking host GPG key..."
if (( "$keysfound" < 1 )); then
echo "! No host key found."
echo "Checking host GPG key..."
if (( "$keysfound" < 1 )); then
echo "! No host key found."
@@
-856,8
+864,9
@@
unset MONKEYSPHERE_USER
# set empty config variable with ones from the environment, or with
# defaults
# set empty config variable with ones from the environment, or with
# defaults
+LOG_LEVEL=${MONKEYSPHERE_LOG_LEVEL:=${LOG_LEVEL:="INFO"}}
KEYSERVER=${MONKEYSPHERE_KEYSERVER:=${KEYSERVER:="subkeys.pgp.net"}}
KEYSERVER=${MONKEYSPHERE_KEYSERVER:=${KEYSERVER:="subkeys.pgp.net"}}
-AUTHORIZED_USER_IDS=${MONKEYSPHERE_AUTHORIZED_USER_IDS:=${AUTHORIZED_USER_IDS:="%h/.
config/
monkeysphere/authorized_user_ids"}}
+AUTHORIZED_USER_IDS=${MONKEYSPHERE_AUTHORIZED_USER_IDS:=${AUTHORIZED_USER_IDS:="%h/.monkeysphere/authorized_user_ids"}}
RAW_AUTHORIZED_KEYS=${MONKEYSPHERE_RAW_AUTHORIZED_KEYS:=${RAW_AUTHORIZED_KEYS:="%h/.ssh/authorized_keys"}}
MONKEYSPHERE_USER=${MONKEYSPHERE_MONKEYSPHERE_USER:=${MONKEYSPHERE_USER:="monkeysphere"}}
RAW_AUTHORIZED_KEYS=${MONKEYSPHERE_RAW_AUTHORIZED_KEYS:=${RAW_AUTHORIZED_KEYS:="%h/.ssh/authorized_keys"}}
MONKEYSPHERE_USER=${MONKEYSPHERE_MONKEYSPHERE_USER:=${MONKEYSPHERE_USER:="monkeysphere"}}
@@
-871,6
+880,7
@@
GNUPGHOME_AUTHENTICATION=${MONKEYSPHERE_GNUPGHOME_AUTHENTICATION:="${VARLIB}/gnu
export DATE
export MODE
export MONKEYSPHERE_USER
export DATE
export MODE
export MONKEYSPHERE_USER
+export LOG_LEVEL
export KEYSERVER
export CHECK_KEYSERVER
export REQUIRED_USER_KEY_CAPABILITY
export KEYSERVER
export CHECK_KEYSERVER
export REQUIRED_USER_KEY_CAPABILITY