SSHによるポート転送

シェルスクリプトへのシンボリックリンクを下記のように作成する
これで同じスクリプトを違う名前のシェルスクリプトとして呼び出せる
$ ln -s mk_tunnel.sh tunnel_smtp.sh
$ ln -s mk_tunnel.sh tunnel_pop.sh
$ ln -s mk_tunnel.sh tunnel_imap.sh
#!/bin/sh
#mk_tunnel.sh

case $(basename "$0" .sh) in
    *smtp )
        RPORT="25"
        ;;
    *pop )
        RPORT="110"
        ;;
    *imap )
        RPORT="143"
        ;;
    * )
        exit 0
        ;;
esac

LPORT=$(expr ${RPORT} + 10000)
RHOST=foo.examle.com

ssh -N -f -L "${LPORT}:${RHOST}:${RPORT}" ${RHOST}