summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAlex Landau <alex.landau@xorcom.com>2008-12-21 15:24:14 +0000
committerAlex Landau <alex.landau@xorcom.com>2008-12-21 15:24:14 +0000
commit01653c7ddffca3d17d6403d733ccb3005f8f2d3b (patch)
treeb343f6f4ad1e00f1956be1ac5217725612c78e8a
parent626edff649102539c65156f7191595957e711aec (diff)
rapid-tunneling:
- Removed old unused files - Minor bugfixes git-svn-id: svn+ssh://xorcom/home/svn/debs/components/rapid-tunneling@6488 283159da-0705-0410-b60c-f2062b4bb6ad
-rw-r--r--Makefile4
-rwxr-xr-xcreate-invitation24
-rwxr-xr-xfinish-ra17
-rwxr-xr-xprepare-connect34
-rwxr-xr-xrapid-tunneling4
-rw-r--r--rapid-tunneling.spec3
-rwxr-xr-xremote-access27
-rwxr-xr-xrtadm20
8 files changed, 23 insertions, 110 deletions
diff --git a/Makefile b/Makefile
index 9b41431..ddbc85c 100644
--- a/Makefile
+++ b/Makefile
@@ -30,3 +30,7 @@ install:
install -m 644 rtadm.config $(DESTDIR)/etc/default/rtadm
install -m 755 -d $(DESTDIR)/etc/ssh
install -m 644 sshd_support_config $(DESTDIR)/etc/ssh
+
+.PHONY: clean dummy
+dummy:
+clean:
diff --git a/create-invitation b/create-invitation
deleted file mode 100755
index c2a5faa..0000000
--- a/create-invitation
+++ /dev/null
@@ -1,24 +0,0 @@
-#!/bin/sh
-
-set -e
-
-if [ $# -ne 2 ]; then
- echo "Usage: $0 <tunnel-port> <comment>" 1>&2
- exit 1
-fi
-
-KEY=tmp/key
-TUNNEL_PORT=$1
-COMMENT=$2
-
-rm -rf tmp
-mkdir tmp
-ssh-keygen -q -t rsa -b 1024 -f tmp/key -N "" -C ra-$TUNNEL_PORT-$COMMENT-`date '+%Y%m%d%H%M%S'`
-sed -i 's|^|no-X11-forwarding,no-agent-forwarding,no-pty,permitopen="127.0.0.1:65534",command="~/bin/from-remote '$TUNNEL_PORT'" |' tmp/key.pub
-echo "post" > tmp/host
-echo "22" > tmp/port
-echo "alex" > tmp/user
-echo $TUNNEL_PORT > tmp/tunnelport
-tar -czf remote-access.tar.gz -C tmp host port user tunnelport key --owner root --group root
-echo "Run the following command to allow login with the newly-generated key." 1>&2
-echo "cat `realpath tmp/key.pub` >> ~/.ssh/authorized_keys"
diff --git a/finish-ra b/finish-ra
deleted file mode 100755
index 8836b9f..0000000
--- a/finish-ra
+++ /dev/null
@@ -1,17 +0,0 @@
-#!/bin/sh
-
-if [ -z "$1" ]; then
- echo "Usage: $0 <comment>" 1>&2
- exit 1
-fi
-
-comment=$1
-perl -i -e '$host="'ra-$comment'"; $/=undef; $_=<>; s/^Host\s+(${host}$).*?((?=^Host)|\s*\Z)//gsm; print' ~/.ssh/config
-sed -i "/ra-[0-8]\+-$comment-[0-9]\+$/d" ~/.ssh/authorized_keys
-count=`ls ~/ra/ra-*-$comment-*.tar.gz 2>/dev/null | wc -l`
-if [ $count -eq 0 ]; then
- echo "No files with name $comment in ~/ra." 1>&2
- ls ~/ra-*-$comment-*.tar.gz
- exit 1
-fi
-mv -f ~/ra/ra-*-$comment-*.tar.gz ~/ra/ra-*-$comment-*-key ~/ra/old 2>/dev/null
diff --git a/prepare-connect b/prepare-connect
deleted file mode 100755
index a7e8c32..0000000
--- a/prepare-connect
+++ /dev/null
@@ -1,34 +0,0 @@
-#!/bin/sh
-
-if [ -z "$1" ]; then
- echo "Usage: $0 <comment>" 1>&2
- exit 1
-fi
-
-comment=$1
-count=`ls ~/ra/ra-*-$comment-*.tar.gz 2>/dev/null | wc -l`
-if [ $count -gt 1 ]; then
- echo "More than 1 file from $comment in ~/ra. Leave only one file." 1>&2
- ls ~/ra/ra-*-$comment-*.tar.gz
- exit 1
-fi
-if [ $count -eq 0 ]; then
- echo "No files with name $comment in ~/ra." 1>&2
- ls ~/ra/ra-*-$comment-*.tar.gz
- exit 1
-fi
-file=`ls ~/ra/ra-*-$comment-*.tar.gz`
-port=`echo $file | sed 's/.*ra-\([^-]\+\)-.*/\1/'`
-keyfile=`echo $file | sed 's/.tar.gz$/-key/'`
-tar xzf $file -O key > $keyfile
-chmod 600 $keyfile
-perl -e '$host="'ra-$comment'"; $/=undef; $_=<>; s/^Host\s+(${host}$).*?((?=^Host)|\s*\Z)//gsm; print' ~/.ssh/config > ~/.ssh/config.new
-cat >> ~/.ssh/config.new <<EOF
-Host ra-$comment
- HostName localhost
- User support
- Port $port
- IdentityFile $keyfile
- ForwardX11 no
-EOF
-mv -f ~/.ssh/config.new ~/.ssh/config
diff --git a/rapid-tunneling b/rapid-tunneling
index 4949447..1528e2e 100755
--- a/rapid-tunneling
+++ b/rapid-tunneling
@@ -21,12 +21,12 @@ cp $tmpdir/recv/key $HOME/key
tar czf $HOME/ra-params.tar.gz -C $tmpdir/send key origkey
mkdir -p -m 700 $HOME/.ssh
-awk '$NF != "rapid-tunneling" {print}' $HOME/.ssh/authorized_keys > $HOME/.ssh/authorized_keys.new 2>/dev/null
+awk '$NF != "rapid-tunneling" {print}' $HOME/.ssh/authorized_keys > $HOME/.ssh/authorized_keys.new 2>/dev/null || true
cat $tmpdir/send/key.pub >> $HOME/.ssh/authorized_keys.new
mv -f $HOME/.ssh/authorized_keys.new $HOME/.ssh/authorized_keys
chmod 644 $HOME/.ssh/authorized_keys
rm -rf $tmpdir
# Remove host key of $host (in case it has changed)
-ssh-keygen -R $host
+ssh-keygen -R $host 2>/dev/null || true
# Run in background
busybox start-stop-daemon -S -b -m -p $HOME/pid -x /bin/sh -- -c "exec ssh -o 'StrictHostKeyChecking no' -o 'BatchMode yes' -o 'ServerAliveInterval 60' -T -p $port -i $HOME/key -R $tunnelport:127.0.0.1:22 -l $user $host < $HOME/ra-params.tar.gz"
diff --git a/rapid-tunneling.spec b/rapid-tunneling.spec
index fc54a40..5dbe948 100644
--- a/rapid-tunneling.spec
+++ b/rapid-tunneling.spec
@@ -48,6 +48,9 @@ fi
%post server
useradd -d /var/lib/rapid-tunneling-server -m support 2>/dev/null || :
+LINE='export PATH=$PATH:/usr/sbin'
+PROFILE=/var/lib/rapid-tunneling-server/.bash_profile
+if ! fgrep -q "$LINE" $PROFILE; then echo "$LINE" >> $PROFILE; fi
/sbin/chkconfig --add sshd_support
%preun server
diff --git a/remote-access b/remote-access
deleted file mode 100755
index 02ae4e7..0000000
--- a/remote-access
+++ /dev/null
@@ -1,27 +0,0 @@
-#!/bin/sh
-
-if [ -z "$1" ]; then
- echo "Usage: $0 <remote-access-file-name>" 1>&2
- exit 1
-fi
-
-rm -rf /tmp/ra
-mkdir -m 700 /tmp/ra
-mkdir /tmp/ra/recv /tmp/ra/send
-gunzip -cf $1 | tar xf - -C /tmp/ra/recv
-dropbearconvert openssh dropbear /tmp/ra/recv/key /tmp/ra/recv/key.db
-chmod 600 /tmp/ra/recv/key.db
-user=`cat /tmp/ra/recv/user`
-host=`cat /tmp/ra/recv/host`
-port=`cat /tmp/ra/recv/port`
-tunnelport=`cat /tmp/ra/recv/tunnelport`
-
-dropbearkey -t rsa -f /tmp/ra/send/key.db | grep '^ssh-rsa ' > /tmp/ra/send/key.pub
-dropbearconvert dropbear openssh /tmp/ra/send/key.db /tmp/ra/send/key
-cp /tmp/ra/recv/key /tmp/ra/send/origkey
-tar czf /tmp/ra/send/ra-params.tar.gz -C /tmp/ra/send key origkey
-
-mkdir -m 700 /tmp/ra/.ssh
-cat /tmp/ra/send/key.pub >> /tmp/ra/.ssh/authorized_keys
-chmod 644 /tmp/ra/.ssh/authorized_keys
-start-stop-daemon -S -b -x /bin/sh -- -c "ssh -y -K 10 -T -p $port -i /tmp/ra/recv/key.db -R $tunnelport:127.0.0.1:22 -l $user $host < /tmp/ra/send/ra-params.tar.gz"
diff --git a/rtadm b/rtadm
index e1e8746..aadb168 100755
--- a/rtadm
+++ b/rtadm
@@ -18,6 +18,14 @@ create()
TUNNEL_PORT=$1
COMMENT=$2
+ if grep -q "ra-[0-9]\+-$COMMENT-[0-9]\+" $HOME/.ssh/authorized_keys 2>/dev/null; then
+ echo "Comment '$COMMENT' already exists. Aborting." 1>&2
+ exit 1
+ fi
+ if ! [ $TUNNEL_PORT -ge 1024 -a $TUNNEL_PORT -le 65535 ] 2>/dev/null; then
+ echo "Tunnel-port should be an integer in the range 1024-65535. Aborting."
+ exit 1
+ fi
rm -rf ~/tmp
mkdir ~/tmp
key_comment=ra-$TUNNEL_PORT-$COMMENT-`date '+%Y%m%d%H%M%S'`
@@ -115,7 +123,7 @@ usage()
exit 1
}
-if [ $# = 0 -o "$1" = "-" -o "$1" = "--help" ]; then
+if [ $# = 0 -o "$1" = "-h" -o "$1" = "--help" ]; then
usage
fi
@@ -123,7 +131,7 @@ case "$1" in
create)
shift
[ "$1" = "-e" ] && do_enable=1 && shift
- [ -z "$1" -o -z "$2" ] && usage
+ [ -z "$1" -o -z "$2" -o -n "$3" ] && usage
create "$1" "$2"
[ "$do_enable" = 1 ] && enable "$2"
;;
@@ -133,22 +141,22 @@ case "$1" in
;;
enable)
shift
- [ -z "$1" ] && usage
+ [ -z "$1" -o -n "$2" ] && usage
enable "$1"
;;
disable)
shift
- [ -z "$1" ] && usage
+ [ -z "$1" -o -n "$2" ] && usage
disable "$1"
;;
disconnect)
shift
- [ -z "$1" ] && usage
+ [ -z "$1" -o -n "$2" ] && usage
disconnect "$1"
;;
delete)
shift
- [ -z "$1" ] && usage
+ [ -z "$1" -o -n "$2" ] && usage
delete "$1"
disconnect "$1"
;;