executa um proxy SOCKS local tunelado pelo SSH

3

Eu estava passando por esta postagem e não consegui seguir o que está sendo sugerido aqui.

A great "feature" I use every day at work: The ability to have SSH listen on port 443 so I can create a tunnel which bypasses my work firewall, allowing me to run a local SOCKS proxy tunneled through SSH to my internet facing Linux server.

I can completely ignore my corporate firewall.

Pelo que entendi, a porta 22 está bloqueada para acesso SSH na máquina do escritório. Como vou me conectar à máquina do escritório remoto da minha máquina doméstica?

Na minha máquina doméstica, vou usar o comando como algo assim,

ssh -D 1337 -f -C -q -N user@office -p 443

Em seguida, altere as configurações de proxy no firefox da minha máquina doméstica para acessar a rede do escritório a partir da minha máquina doméstica?

    
por Ramesh 07.11.2014 / 01:41

2 respostas

3

É sobre isso, mas você inverteu a casa e o escritório. O ponto é que o firewall do escritório rejeita conexões de saída diferentes do tráfego da web. Mas, como o tráfego HTTPS e o tráfego SSH são criptografados, não é possível distingui-los facilmente, portanto, o firewall apenas bloqueia conexões de saída para portas diferentes de 443 (a porta HTTPS padrão) e provavelmente tem um proxy HTTP que permite apenas o tráfego HTTP porta 80 e possivelmente outras portas.

Então a idéia é rodar um servidor SSH em casa, escutando na porta 443, e fazer com que ele transmita os dados para qualquer lugar. SOCKS é um protocolo genérico para retransmitir conexões TCP. Ele pode retransmitir tráfego da Web, conexões SSH e muitos outros protocolos.

Você configuraria seu navegador da Web para usar um proxy SOCKS, não um proxy HTTP. Principais navegadores da web suportam SOCKS. Se você quiser usar um aplicativo que não suporte o proxy SOCKS, você pode executá-lo em tsocks .

Na verdade, é possível distinguir SSH de HTTPS, porque os primeiros poucos bytes (antes que o tráfego possa ser criptografado, enquanto os dois pontos de extremidade ainda estão negociando as opções e a chave de sessão) são distinguíveis. Nem todos os firewalls corporativos fazem isso. Você pode usar o stunnel para incorporar a sessão SSH em HTTPS.

    
por 07.11.2014 / 03:45
1

Não estou totalmente claro sobre o que a postagem fala, mas tenho usado algo semelhante para redirecionar o tráfego http sobre o ssh de um servidor remoto que não suporta o encaminhamento do X. Eu faço da seguinte forma:

ssh -L23000:localhost:23000 user@remotehost
[remotehost] $ python -m SimpleHTTPServer 23000

Abra o navegador no host local e aponte para http://localhost:23000 para procurar os arquivos no host remoto no navegador. Este é um exemplo, mas temos um portal baseado na web que precisamos executar em nós remotos e fazer coisas que fazemos dessa maneira.

Suponho que a postagem fale sobre como redirecionar todo o tráfego do proxy SOCKS sobre o ssh e, assim, poder acessar uma rede com firewall.

    
por 07.11.2014 / 03:44