|
Last change
on this file since 10175 was 10175, checked in by richardvm, 14 years ago |
|
rename to more logical name
|
-
Property svn:executable
set to
*
|
|
File size:
1.3 KB
|
| Line | |
|---|
| 1 | #!/bin/sh
|
|---|
| 2 |
|
|---|
| 3 | # Shell script to install your public key on a remote machine
|
|---|
| 4 | # Takes the remote machine name as an argument.
|
|---|
| 5 | # Obviously, the remote machine must accept password authentication,
|
|---|
| 6 | # or one of the other keys in your ssh-agent, for this to work.
|
|---|
| 7 |
|
|---|
| 8 | ID_FILE="${HOME}/.ssh/id_rsa.pub"
|
|---|
| 9 |
|
|---|
| 10 | if [ "-i" = "$1" ]; then
|
|---|
| 11 | shift
|
|---|
| 12 | # check if we have 2 parameters left, if so the first is the new ID file
|
|---|
| 13 | if [ -n "$2" ]; then
|
|---|
| 14 | if expr "$1" : ".*\.pub" >/dev/null; then
|
|---|
| 15 | ID_FILE="$1"
|
|---|
| 16 | else
|
|---|
| 17 | ID_FILE="$1.pub"
|
|---|
| 18 | fi
|
|---|
| 19 | shift # and this should leave $1 as the target name
|
|---|
| 20 | fi
|
|---|
| 21 | else
|
|---|
| 22 | if [ x$SSH_AUTH_SOCK != x ] && ssh-add -L >/dev/null 2>&1; then
|
|---|
| 23 | GET_ID="$GET_ID ssh-add -L"
|
|---|
| 24 | fi
|
|---|
| 25 | fi
|
|---|
| 26 |
|
|---|
| 27 | if [ -z "`eval $GET_ID`" ] && [ -r "${ID_FILE}" ] ; then
|
|---|
| 28 | GET_ID="cat ${ID_FILE}"
|
|---|
| 29 | fi
|
|---|
| 30 |
|
|---|
| 31 | if [ -z "`eval $GET_ID`" ]; then
|
|---|
| 32 | echo "$0: ERROR: No identities found" >&2
|
|---|
| 33 | exit 1
|
|---|
| 34 | fi
|
|---|
| 35 |
|
|---|
| 36 | if [ "$#" -lt 1 ] || [ "$1" = "-h" ] || [ "$1" = "--help" ]; then
|
|---|
| 37 | echo "Usage: $0 [-i [identity_file]] [user@]machine" >&2
|
|---|
| 38 | exit 1
|
|---|
| 39 | fi
|
|---|
| 40 |
|
|---|
| 41 | { eval "$GET_ID" ; } | ssh $1 "umask 077; test -d .ssh || mkdir .ssh ; cat >> .ssh/authorized_keys" || exit 1
|
|---|
| 42 |
|
|---|
| 43 | cat <<EOF
|
|---|
| 44 | Now try logging into the machine, with "ssh '$1'", and check in:
|
|---|
| 45 |
|
|---|
| 46 | .ssh/authorized_keys
|
|---|
| 47 |
|
|---|
| 48 | to make sure we haven't added extra keys that you weren't expecting.
|
|---|
| 49 |
|
|---|
| 50 | EOF
|
|---|
Note:
See
TracBrowser
for help on using the repository browser.