使用SSH转发服务器端口到本地

注意远程地址、远程端口号、本地地址、本地端口号需要按照实际情况修改。

function forwardPort() {
    PROC_NAME="ssh -fR $1"
    ProcNumber=`ps -ef |grep -w "$PROC_NAME"|grep -v grep|wc -l`
    if [ $ProcNumber -le 0 ];then
        echo "$1 is not forward.."
        ssh -fCNR $1:localhost:$1 root@0.0.0.0 -p 1234 -o ServerAliveInterval=30
    else
        echo "$1 has forwarded.."
    fi
}
for port in 1234 4567
do
    forwardPort $port
done

注意,如果需要外网访问转发的端口,需要在远程服务器的配置文件(/etc/ssh/sshd_config)中添加:

AllowTcpForwarding yes

发表回复

您的电子邮箱地址不会被公开。