wok rev 15886
dropbear/pppssh: add routes support
author | Pascal Bellard <pascal.bellard@slitaz.org> |
---|---|
date | Sat Feb 08 16:59:03 2014 +0000 (2014-02-08) |
parents | 7710488e9e49 |
children | eab35a9f8d16 |
files | dropbear/stuff/sshx ppp/receipt |
line diff
1.1 --- a/dropbear/stuff/sshx Sat Feb 08 13:29:05 2014 +0000 1.2 +++ b/dropbear/stuff/sshx Sat Feb 08 16:59:03 2014 +0000 1.3 @@ -16,7 +16,7 @@ 1.4 *) break ;; 1.5 esac 1.6 done 1.7 - [ -n "$1" ] || set -- "${TERM:-false} || xterm -ls" 1.8 + [ -n "$1" ] || set -- "${TERM:-xterm} -ls || ${TERM:-sakura} -l || xterm -ls" 1.9 exec dbclient -f -R $((6000+$n)):localhost:$((6000+${svr%.*})) $r \ 1.10 "xauth add $dpy $data; export DISPLAY=$scr; $@ ; xauth remove $dpy" \ 1.11 </dev/null >/dev/null 1.12 @@ -26,19 +26,24 @@ 1.13 { 1.14 [ -z "$DROPBEAR_PASSWORD" ] && echo -n "ssh password: " && 1.15 read -s -t 30 DROPBEAR_PASSWORD && export DROPBEAR_PASSWORD 1.16 - dbclient -y $1 true || exit 1 1.17 - ff=/tmp/pppssh$$ 1.18 + for i in $4 ; do 1.19 + echo "route add -net $i dev \$1" 1.20 + done > /etc/ppp/ip-up.d/pppssh$$ 1.21 + chmod +x /etc/ppp/ip-up.d/pppssh$$ 1.22 + ssh="dbclient -y" 1.23 + $ssh $1 true || exit 1 1.24 n=10.$(($$%256)).$(($$/256)) 1.25 - ppp="/usr/sbin/pppd local lock notty" 1.26 - mkfifo $ff 1.27 - dbclient -y $1 "$ppp ${3:-proxyarp}" <$ff | $ppp ${2:-$n.1:$n.2} >$ff 1.28 - rm -f $ff 1.29 + ppp="/usr/sbin/pppd local noauth nodetach" 1.30 + $ppp ${2:-$n.1:$n.2} passive pty "$ssh $1 $ppp ${3:-proxyarp} notty" \ 1.31 + ipparam pppssh$$ 1.32 + rm -f /etc/ppp/ip-up.d/pppssh$$ 1.33 } 1.34 1.35 case "$(basename $0)" in 1.36 -ppp*) [ -z "$1" ] && 1.37 - echo "Usage: $0 '[sshargs] user@remote' '[localip:remoteip] [localpppargs]' 'remotepppargs'" || 1.38 - pppssh "$@" ;; 1.39 +ppp*) [ -z "$1" ] && cat <<EOT || pppssh "$@" ;; 1.40 +Usage: $0 '[sshargs] user@remote' '[localip:remoteip] [localpppargs]' 'remotepppargs' 'routes' 1.41 +Example: $0 tux@slitaz.org '' '' '192.168.1.0/24 10.1.2.0/24' 1.42 +EOT 1.43 *) [ -z "$DISPLAY" ] && exec dbclient "$@" 1.44 xauth list $DISPLAY | xdbclient "$@" 1.45 esac
2.1 --- a/ppp/receipt Sat Feb 08 13:29:05 2014 +0000 2.2 +++ b/ppp/receipt Sat Feb 08 16:59:03 2014 +0000 2.3 @@ -57,6 +57,8 @@ 2.4 cp -a $src/scripts/callback $fs/etc/ppp/scripts 2.5 cp -a $src/scripts/redialer $fs/etc/ppp/scripts 2.6 cat >> $fs/etc/ppp/ip-up <<EOT 2.7 +#!/bin/sh 2.8 + 2.9 if [ -x /etc/ppp/ip-up.d/\$6 ]; then 2.10 . /etc/ppp/ip-up.d/\$6 "\$@" 2.11 elif [ -n "\$USEPEERDNS" -a -f /etc/ppp/resolv.conf ]; then 2.12 @@ -74,6 +76,8 @@ 2.13 fi 2.14 EOT 2.15 cat >> $fs/etc/ppp/ip-down <<EOT 2.16 +#!/bin/sh 2.17 + 2.18 if [ -x /etc/ppp/ip-down.d/\$6 ]; then 2.19 . /etc/ppp/ip-down.d/\$6 "\$@" 2.20 elif [ -n "\$USEPEERDNS" -a -f /etc/ppp/resolv.conf ]; then 2.21 @@ -97,4 +101,4 @@ 2.22 chmod go-rwx $fs/etc/ppp/*secrets 2.23 chmod go-rwx $fs/etc/ppp/options 2.24 chmod 711 $fs/etc/ppp/scripts/* 2.25 -} 2.26 \ No newline at end of file 2.27 +}