diff options
author | Alex Landau <alex.landau@xorcom.com> | 2008-12-14 14:47:43 +0000 |
---|---|---|
committer | Alex Landau <alex.landau@xorcom.com> | 2008-12-14 14:47:43 +0000 |
commit | 626edff649102539c65156f7191595957e711aec (patch) | |
tree | 3f8b86bba17c8954aae3535a760d309861172502 /rtadm | |
parent | 80ccc8a0cff45fff33c2d90f1e9118ea80658d9c (diff) |
rapid-tunneling:
- Created server part RPM.
git-svn-id: svn+ssh://xorcom/home/svn/debs/components/rapid-tunneling@6470 283159da-0705-0410-b60c-f2062b4bb6ad
Diffstat (limited to 'rtadm')
-rwxr-xr-x | rtadm | 44 |
1 files changed, 25 insertions, 19 deletions
@@ -1,35 +1,42 @@ #!/bin/sh -FROM_REMOTE_COMMAND=/usr/local/bin/from-remote -HOSTNAME=tunnel.vserver -PORT=2222 USERNAME=support +FROM_REMOTE_COMMAND=/usr/sbin/rt-from-remote + +[ -r /etc/default/rtadm ] && . /etc/default/rtadm +[ -r /etc/sysconfig/rtadm ] && . /etc/sysconfig/rtadm + +if [ -z "$HOSTNAME" -o -z "$PORT" ]; then + echo "ERROR: Hostname or port not set in configuration file." 1>&2 + exit 1 +fi create() { set -e - KEY=tmp/key TUNNEL_PORT=$1 COMMENT=$2 - rm -rf tmp - mkdir tmp + rm -rf ~/tmp + mkdir ~/tmp key_comment=ra-$TUNNEL_PORT-$COMMENT-`date '+%Y%m%d%H%M%S'` - ssh-keygen -q -t rsa -f tmp/key -N "" -C $key_comment - sed -i 's|^|#DISABLED#no-X11-forwarding,no-agent-forwarding,no-pty,permitopen="127.0.0.1:65534",command="'"$FROM_REMOTE_COMMAND $TUNNEL_PORT"' |' tmp/key.pub - echo $HOSTNAME > tmp/host - echo $PORT > tmp/port - echo $USERNAME > tmp/user - echo $TUNNEL_PORT > tmp/tunnelport - tar -czf remote-access.tar.gz -C tmp host port user tunnelport key --owner root --group root - cat tmp/key.pub >> ~/.ssh/authorized_keys + ssh-keygen -q -t rsa -f ~/tmp/key -N "" -C $key_comment + sed -i 's|^|#DISABLED#no-X11-forwarding,no-agent-forwarding,no-pty,permitopen="127.0.0.1:65534",command="'"$FROM_REMOTE_COMMAND $TUNNEL_PORT"'" |' ~/tmp/key.pub + echo $HOSTNAME > ~/tmp/host + echo $PORT > ~/tmp/port + echo $USERNAME > ~/tmp/user + echo $TUNNEL_PORT > ~/tmp/tunnelport + tar -czf remote-access.tar.gz -C ~/tmp host port user tunnelport key --owner root --group root + mkdir -m 700 -p ~/.ssh + umask 022 + cat ~/tmp/key.pub >> ~/.ssh/authorized_keys perl -e '$host="'ra-$COMMENT'"; $/=undef; $_=<>; s/^Host\s+(${host}$).*?((?=^Host)|\s*\Z)//gsm; print' ~/.ssh/config > ~/.ssh/config.new 2>/dev/null cat >> ~/.ssh/config.new <<EOF Host ra-$COMMENT HostName localhost - User support + User rapid-tunneling Port $TUNNEL_PORT IdentityFile ~/ra/$key_comment-key ForwardX11 no @@ -103,8 +110,8 @@ usage() echo " # enable/disable future connections" echo " disconnect <comment>" echo " # disconnect connection" - echo " delete [-d] <comment>" - echo " # delete any trace of the connection, if -d specified, disconnect too" + echo " delete <comment>" + echo " # disconnect and delete any trace of the connection" exit 1 } @@ -141,10 +148,9 @@ case "$1" in ;; delete) shift - [ "$1" = "-d" ] && do_disconnect=1 && shift [ -z "$1" ] && usage delete "$1" - [ "$do_disconnect" = 1 ] && disconnect "$1" + disconnect "$1" ;; *) usage |