SSH nos ofrece la posibilidad de crear un proxy SOCKS a traves de un tunnel de una manera muy sencilla:
ssh -fN -D 9999 user@server
Con esto le estamos diciendo que haga un fork del proceso(-f) y se ejecute en segundo plano, tambien le decimos que no permita la ejecucion de comandos (-N) y por ultimo le decimos que cree el proxy socks en el puerto 9999 de localhost(-D 9999).El ultimo parametro son las credenciales para acceder al servidor ssh de la maquina remota (la que "dara la cara" por nosotros).
Las ventajas que tenemos con esto es que las comunicaciones iran siempre cifradas entre nosotros y el servidor,y las comunicaciones con el exterior se haran de la misma manera que si se hicieran desde el servidor.Obviamente, nos interesa un servidor que nos de alguna ventaja, imagina por ejemplo que donde trabajas te filtran contenidos mediante un Web Proxy, pero sin embargo, las conexiones desde el servidor no pasan por el(por politica o porque esta en otra red).En este caso, navegarias sin pasar por el proxy.Tambien te permitiria cifrar un segmento de la comunicacion.Por ultimo decir que tiene todas las desventajas de un proxy, por lo que apartir del momento de la creacion, dejas de ser reconocido como cliente y sera el servidor el que adquiera ese rol por ti.
Espero no haberlo liado demasiado.