source: hybrid/branches/releng-11/nanobsd/files/usr/local/bin/ssh-copy-id@ 13742

Last change on this file since 13742 was 13742, checked in by rick, 8 years ago

Try to beat captive portal requests for already autorized devices.

Dummy framework for tool which reads arp requests and based on the response
checks if the MAC is already whitelisted and hence adds it's IP to the
whitelist table.

This will avoid issues with captive portal checkers at phone, which assume a
captive portal, yet their request in and on itself will already activate the
known lease again.

Secondly this framework is also required to allow 'roaming' from users between
accesspoints without the need of re-authentication (or IoT devices for
example).

  • 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
8ID_FILE="${HOME}/.ssh/id_rsa.pub"
9
10if [ "-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
21else
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
25fi
26
27if [ -z "`eval $GET_ID`" ] && [ -r "${ID_FILE}" ] ; then
28 GET_ID="cat ${ID_FILE}"
29fi
30
31if [ -z "`eval $GET_ID`" ]; then
32 echo "$0: ERROR: No identities found" >&2
33 exit 1
34fi
35
36if [ "$#" -lt 1 ] || [ "$1" = "-h" ] || [ "$1" = "--help" ]; then
37 echo "Usage: $0 [-i [identity_file]] [user@]machine" >&2
38 exit 1
39fi
40
41{ eval "$GET_ID" ; } | ssh $1 "umask 077; test -d .ssh || mkdir .ssh ; cat >> .ssh/authorized_keys" || exit 1
42
43cat <<EOF
44Now try logging into the machine, with "ssh '$1'", and check in:
45
46 .ssh/authorized_keys
47
48to make sure we haven't added extra keys that you weren't expecting.
49
50EOF
Note: See TracBrowser for help on using the repository browser.