You mentioned to keep the SSH-Session open to be able to tunneldata to your proxy. I personaly think that`s sub-optimal. A better solution would be to use the Multiplexing feature of OpenSSH combined with Port-Forwarding. PROXY is defined in /etc/hosts ssh -f -C -N -L 8080:PROXY:8080 PROXY ssh -f -C -N -L 10025:PROXY:25 PROXY ssh -f -C -N -L 10110:PROXY:110 PROXY ssh -f -C -N -L 6667:PROXY:6667 PROXY This would tunnel serval Ports to PROXY. You should use Localports higher then 1024 because a normal user donīt own the rights to bind anything to Ports below 1024. Well but even this solution is not optimal because you would etablish 4 different Connections to PROXY. If you apply this to the ~/.ssh/config you do create a multiplexed connection: HOST * Controlmaster auto ControlPath ~/.ssh/ssh-ControlSocket-%r@%h:%p This would create always a multiplexd connection for any Host if no Controlmaster runs. If a multiplexed connection does already exists it`s used to Login/Tunnel/Whatever. I hope you`ve found this usefull because it would be correct in my oppinion. Kind regards, Rembrandt