If I understand you right, you're attempting to connect to your server through your laptop via telnet?
This is a very very very bad idea. telnet is not secure.
Use ssh.
To port forward a remote port to a local port:
Code:
ssh -NR remoteip:remoteport:localip:localport hostname
The -N doesn't grab a shell or send a command (good for forwarding ports)
-R indicates a reverse port (i.e. remote to local port instead of local to remote)
You will need port 22 open on the server if connecting via external ip.
Note that the other ports will not need to be open. If you bind 9876 on the remote host to 7000 on the local ip, you still only need port 22 open.
It is a wise idea to use public key auth - especially on any external network.
You can use
Match Statements to fine tune what people can do who connect. You can configure it in /etc/ssh/sshd_config
Ensure AllowTcpForwarding is set to yes to enable port forwarding
I'm pretty sure it defaults to yes if not specified though.