Ubuntu – SSH tunnel speed is very slow

iperfplinkputtyssh-tunnelUbuntu

I have remote server with Ubuntu Linux and I want to establish SSH tunnel with this server from Windows machine using PuTTY(plink). I have to use this method for getting access to some service on this server, because firewall is blocking all ports on this server except 22 ssh port. But speed of connection over SSH tunnel is VERY SLOW. I have checked speed using iperf tool.

Here is results of using iperf without SSH tunnel:

[  5] local <remote_server_ip> port 5001 connected with <my_internet_ip> port 11154
[ ID] Interval       Transfer     Bandwidth
[  5]  0.0-10.4 sec  5.12 MBytes  4.13 Mbits/sec

And it is results of using iperf over SSH tunnel:

[  4] local 127.0.0.1 port 5001 connected with 127.0.0.1 port 38231
[ ID] Interval       Transfer     Bandwidth
[  4]  0.0-15.2 sec   896 KBytes   484 Kbits/sec

Speed is really different. How is it possible? What should I do to fix it?

Best Answer

Probably it's worth a read of this "Why TCP over TCP is a bad idea", it would be better to use a VPN than to rely on SSH for anything more than throw away tunnels.

Admittedly, that's a lot slower than I would have expected, even from an SSH tunnel. Perhaps you need to tune your SSH options.