$ ssh -p 3128 "Remote IP" -L 8080:"target IP":80 -g -f -N
Client→(8080)Local⇒(3128)Remote(中継)→(80)Target
※ -g 外部アクセス許可(許可しない場合は、localhostのみ)
-f バックグランドで実行
-N 接続先でコマンドを実行しない。
例) ssh -p 3128 192.168.10.10 -L 8080:192.168.10.11:80 -g
http://localhost:8080/
【リモートフォワード】
$ ssh "Remote IP" -R 8080:"target IP":80
Local ⇒(22)Remote↓
Client→(8080)Remote(中継)→(80)Terget
例) ssh 192.168.10.10 -R 8080:192.168.10.11:80
http://192.168.10.10:8080/
※ 外部アクセスを許す場合は、Remote serverで、
# vi /etc/ssh/sshd_config
GatewayPorts yes
例)
ssh -C -N -f -p 'Port No' -L port:IP address:port
-C: 圧縮
-N: コマンド実行無し
-f:バックグランド
【実例】
NOTE=’IPアドレス’
# if [ "$1" = "proxy" ]; then
# echo "ローカルポート10080は、192.168.1.100:22を経由して、192.168.11.100:80に接続"
# sshpass -p password ssh -C -N -f -p 22 192.168.1.100 -L 10080:192.168.11.100:80
elif [ "$1" = "win" ]; then
echo xfreerdp -u user -d local -p password -a 16 127.0.0.1:63389
xfreerdp -u user -d local -p password -a 16 -g 1920x1080 127.0.0.1:63389
elif [ "$1" = "note" ]; then
echo xfreerdp -f -u user -d local -p password -a 16 $NOTE:3389
xfreerdp /u:user /d:local /p:password /bpp:16 /size:3840x2040 /f /v:$NOTE:3389 /kbd:0xE0010411 /kbd-lang:0x0411 /audio-mode:1 +fonts +clipboard
※ 全画面からの戻りは、[cntl+alt+return]
elif [ "$1" = "term" ]; then
CMD="sh ~/go"
echo $CMD
gnome-terminal --geometry 100x65-0+0 -- bash -c "$CMD"
gnome-terminal --geometry 100x65-200+0 -- bash -c "$CMD"
gnome-terminal --geometry 100x65-400+0 -- bash -c "$CMD"
# xwininfo 画面位置検知
elif [ "$1" = "x11" ]; then
#----------------------------X11 Forwarding-------------------------------------------------------
echo "X11 forwarding server"
sshpass -p password ssh -X -C -p 60022 xxx.xxx.xxx.xxx
elif [ "$1" = "scp" ]; then
echo scp -P 60022 $2 user@xxxx.xxx.xxx.xxx:~/$2
sshpass -p password scp -P 60022 $2 user@xxx.xxx.xxx.xxx:~/$2
else
sshpass -p password ssh -p 60022 xxx.xxx.xxx.xxx
fi
0 件のコメント:
コメントを投稿