Um túnel simples é mais comumente feito como
ssh -L 8080: localhost: 80 [email protected]
Isso permitiria que você acessasse o servidor da web no servidor remoto, quando você tivesse acesso ssh a ele, mas não tivesse acesso à web.
ssh'ing para o seu localhost geralmente é inútil. Isso é feito apenas para verificar se o servidor ssh está funcionando corretamente ou se as chaves estão corretas.
O erro de conexão recusada que você vê é porque o servidor ssh não está sendo executado em sua máquina local. sudo apt-get install openssh-server Então você pode fazer ssh em sua máquina local a partir de localhost, ou em qualquer outro lugar você pode obter uma conexão de porta 22 para esta máquina a partir de (normalmente atrás de seu firewall de rede local)
-D (redirecionamento dinâmico de aplicativo) é um caso diferente, e seria mais aplicável se algum aplicativo complicado do client (por exemplo, mysql) em sua máquina local precisa acessar um servidor em uma máquina remota. É menos usado.
A mensagem sobre portas privilegiadas ocorre quando você tenta redirecionar uma porta local menor que 1024. Daí o uso da porta 8080 no exemplo acima, para evitar a porta privilegiada 80. Para o exemplo acima, seu navegador usaria
http://localhost:8080