reference : http://burnz.wordpress.com/2008/05/13/reverse-ssh-tunnelling/
It is possible to create a “reverse” SSH Tunnel. The reverse tunnel will allow you to create an SSH Tunnel from your work computer to your home computer, for example, and then login to your work machine from your home machine even if your work firewall does not permit ssh traffic initiated from your home machine!
For this to work, an SSH Server must be installed on your work and home computer, and ssh (TCP port 22) must be allowed outbound from your work computer to your home computer.
Syntax: ssh -R remote_port:localhost:22 your_home_computer
At home, you would then run ssh -p 2048 localhost to log into your work computer via ssh.
Here is a script that you can run through the cron facility on your work system to make sure the reverse SSH Tunnel to your home system is up and running. It is useful in case the system is rebooted.
#!/bin/sh
# $REMOTE_HOST is the name of the remote system
REMOTE_HOST=remote.system.ip# $REMOTE_PORT is the remote port number that will be used to tunnel
# back to this system
REMOTE_PORT=5000# $COMMAND is the command used to create the reverse ssh tunnel
COMMAND=”ssh -q -N -R $REMOTE_PORT:localhost:22 $REMOTE_HOST”# Is the tunnel up? Perform two tests:
# 1. Check for relevant process ($COMMAND)
pgrep -f -x “$COMMAND” > /dev/null 2>&1 || $COMMAND# 2. Test tunnel by looking at “netstat” output on $REMOTE_HOST
ssh $REMOTE_HOST netstat -an | egrep “tcp.*:$REMOTE_PORT.*LISTEN” \
> /dev/null 2>&1
if [ $? -ne 0 ] ; then
pkill -f -x “$COMMAND”
$COMMAND
fi
'[OS] > Linux' 카테고리의 다른 글
[CentOS] LVM /home 용량을 줄이고 / 용량을 늘리기 (0) | 2020.06.04 |
---|---|
grep, egrep, fgrep, zgrep 사용법 (0) | 2008.10.23 |
깨진 mysql 테이블 복구 - 블로그(textcube) 데이터베이스 (0) | 2008.09.24 |
gnuplot을 이용한 통계데이터 분석 (0) | 2008.08.20 |
grep, egrep, fgrep 명령어 사용법 (0) | 2008.08.07 |