O teu proxy aprobado execútase nun host de salto onde só escoita en loopback, así que nada fóra desa máquina pode alcanzalo. Non necesitas unha VPN nin un proxy novo; necesitas un porto desa máquina levado a un porto teu. Unha redirección local fai exactamente iso, e só require un comando e un axuste da aplicación. A confusión adoita vir de mesturar que enderezo de loopback pertence a que máquina.

Decide se xa existe un proxy fixo

Esta técnica redirixe un servizo que xa está en execución. Se o host remoto só ten un demo SSH e ningún proxy, ningunha cantidade de redirección creará un, e a conexión será rexeitada desde o lado remoto. Confirma que o proxy está vinculado, cal é o seu porto e se escoita en 127.0.0.1 ou nun enderezo de interface concreto, porque ese enderezo é o que debe apuntar a redirección.

Confirma-lo primeiro aforra che depurar un túnel que nunca estivo conectado a nada.

Constrúe a redirección e le o comando

A forma que queres vincula un porto de loopback no teu portátil e conéctao, desde o lado do servidor, ao enderezo do proxy tal como o ve o servidor.

ssh -NT -o ControlPath=none -o ExitOnForwardFailure=yes \
  -L 127.0.0.1:13128:127.0.0.1:3128 [email protected]

-N suprime un comando remoto e -T suprime a asignación de termios, porque queres un túnel e non un shell. O primeiro enderezo de loopback é onde escoita o portátil; o segundo resólveo o servidor SSH, así que 127.0.0.1 alí significa o proxy desa máquina. ExitOnForwardFailure fai que o comando falle ruidosamente se o porto local xa está ocupado, en lugar de iniciar unha sesión que non redirixe nada. Escribe o enderezo de destino tal como o resolve o servidor, porque un nome que só o teu portátil pode resolver fallará no outro extremo.

A política do propio servidor aplícase antes de que algo disto funcione. AllowTcpForwarding debe permitilo, e PermitOpen pode restrinxir a que destinos e portos pode chegar unha sesión, así que unha redirección que o cliente acepta aínda pode ser rexeitada polo servidor. O rexeitamento aparece como un erro de redirección ou de canle no cliente, e ler esa mensaxe é máis rápido que editar o comando.

Apunta unha aplicación á redirección

Configura a aplicación para usar un proxy HTTP en http://127.0.0.1:13128, con credenciais se o proxy remoto as esixe. Mantén a verificación de certificados propia da aplicación para destinos HTTPS, xa que o túnel do proxy non a substitúe. Esta é unha redirección fixa dun servizo, así que hai que dicirlle á aplicación que existe un proxy en lugar de deixala descubrilo.

Unha comprobación rápida antes de configurar nada permanente: curl -x http://127.0.0.1:13128 -I https://example.com, que exercita o método HTTP CONNECT que o proxy debe admitir.

Mantén a autoridade onde estaba

O proxy remoto segue decidindo que destinos e métodos permite, e un inicio de sesión SSH non debería conceder en silencio un relé web xeral a cada conta. Vincular a 127.0.0.1 no portátil evita publicar o porto na túa rede local, e non fai que o porto sexa privado fronte a outros procesos da mesma máquina. Substituír esa vinculación por un enderezo wildcard para compartir o proxy é como se crea un relé aberto non xestionado.

O transporte SSH protexe o salto ata o servidor. Máis alá dese punto o proxy abre a súa propia conexión, así que unha petición HTTP simple a un destino segue a ser simple máis alá do servidor, aínda que o primeiro tramo estivese cifrado.

Verifica ambos os extremos e logo limpa

A configuración do túnel local e o éxito do servizo remoto son resultados distintos, e o estado de saída do comando só che fala do primeiro. Comproba que o oínte existe con ss -ltn, e despois fai unha petición permitida da aplicación e unha petición que o proxy debería rexeitar. Se ambos se comportan como se espera, o camiño é real; se o túnel está activo e toda petición falla, o proxy está rexeitando ou non pode chegar ao destino.

Cando remates, detén o proceso SSH que o posúe, elimina o axuste de proxy da aplicación e confirma que o porto local desapareceu en lugar de deixar un oínte que sobreviva á tarefa.

Artigos relacionados