Como estabelecer Tuneis para a Informática da UFRGS
O que é necessário
Putty: ferramenta usada para
estabelecer um tunel seguro com o máquina portal de entrada da
Informática. Ferramenta essencial.
WinScp: ferramenta usada para
fazer a transferência de arquivos. Ferramenta a ser usada se o
objetivo for de download/upload de arquivos.
Firefox: browser usado para
navegar na internet. Ferramenta necessária se o objetivo for o
de navegar na Internet através da Informática.
Configuração do Putty

Figura 1 - Janela básica de configuração
Observar os seguintes campos:
Host Name (or IP address): nome (endereço) do gateway de entrada na rede do Instituto
Port: deve ser 22, pois é a porta padrão de conexão para o protocolo SSH
Connection type: SSH
Na Category SSH, escolher Tunnel: clicar no sinal "+" a esquerda do SSH
no item Connection e selecionar "Tunnel". O resultado aparece abaixo:

Figura 2 - Janela de configuração dos tuneis
Observar a lista em "Forward ports". Na figura, aparecem duas portas.
Em cada uma delas está descrito a porta na máquina local,
onde inicia o tunel (no caso L2222 e L3128) e o endereço de
destino do tráfego que será enviado pelo tunel (no caso
143.54.13.131:22 e power-proxy.inf.ufgrs.br:3128).
O início do tunel é a máquina local (representada
pelo nome "localhost" ou endereço "127.0.0.1") e pela porta na
máquina local. Nos exemplos "L2222" e "L3128". (a letra
"L" significa "Local"). O tráfego que deve atravessar o
túnel será enviado para a máquina "localhost" na
porta indicada.
O destino do tunel (e náo se pode dizer o final do tunel porque
a comunicação é bidirecional) é o gateway
de entrada na rede local da Informática. Esse gateway
receberá a comunicação enviada através do
tunel. Entretanto, essa máquina tem que ser informada sobre o
que fazer com o tráfego recebido através desse
túnel. Essa informação do destino do
tráfego que passa através do túnel é
informada na segunda coluna de cada linha da lista de "Forwarded
ports". No primeiro exemplo apresentado o tráfego destinado
para a porta 2222 do localhost será enviado através
do túnel. Esse tráfego será recebido pelo gateway,
que vai repassá-lo para a porta 22 da máquina
143.54.13.131. No segundo exemplo, o tráfego direcionado para a
porta 3128 do localhost será recebido pelo gateway e encaminhado
para a porta 3128 da máquina power-proxy.inf.ufrgs.br.
Na figura abaixo está um esquema em que aparece a máquina
cliente (localhost), o gateway de entrada na rede, a máquina
destino, o túnel e o tráfego de dados originado ma
máquina cliente e direcionado para o servidor. Os valores
apresentados na figura correspondem a situação
configurada na linha "L2222 143.54.13.131:22".

Figura 3 - Exemplo de configuração do tunel (sessão SSH)
O que falta fazer é configurar o Cliente (que está
rodando na Máquina Cliente) para que o tráfego originado
seja enviado através do túnel. Para isso, o
tráfego deve ser enviado para a porta local configurada. No
exemplo apresentado na figura anterior, isso significa configurar o
envio do tráfego para a porta 2222. Cada aplicação
cliente possui uma forma diferente de se fazer essa
configuração. No caso do WinScp, a
configuração é feita conforme a janela que aparece
na figura 4: basta configurar o campo "Port number" com o valor
configurado no túnel. No caso do exemplo, é a porta 2222.

Figura 4 - Configuração da porta de saída so WinSCP, para usar o tunel
No caso de se desejar usar o navagador, deve-se obter o endereço
e a porta a ser usado para essa finalidade. No caso do Instituto de
Informática, deve-se direcionar o tráfego para
"power-proxy.inf.ufgrs.br:3128". Notar que a máquina destino do
tráfego assim como a porta são específicos e
só será possível navegar se forem utilizados esses
valores. No exemplo apresentado na configuração da figura
2 está sendo configurada a porta local 3128 para formar um
túnel até a máquina que possibilida a
navegação. Essa configuração é vista
na figura 5.

Figura 5 - Exemplo de configuração do tunel (sessão HTTP)
Finalmente, é necessário configurar o browser de maneira
que utilize a porta 3128 para enviar e receber o tráfego.
Novamente, isso depende de cada browser. No caso do Firefox, deve-se
escolher o meno "Tools", "Options", o que leva a tela apresentada na
figura 6.

Figura 6 - Janela de configuração das opções do Firefox
Na janela apresentada na figura 6, escolher "Advanced" e, dentro da
nova tela apresentada, escolher a tab "Network", conforme apresentado
na figura 7.

Figura 7 - Janela de configuração Advanced, Network
Nessa tela, clicar no botão "Settings", o que levará a
janela onde será informada a porta a ser usada, conforme
apresentado na figura 8. Normalmente, a opção "No proxy"
está selecionada. Entretanto, para navegar através do
túnel, é necessário seleciona a
opção "Manual proxy configuration". Então, digitar
o endereço para onde enviar o tráfego. No caso exemplo,
deve-se usar "localhost" e a porta 3128 (que é a porta local
escolhida).
Adicionalmente, configurou-se para usar o mesmo endereço de
destino para os outros protocolos (além do HTTP): SSL, FTP,
Gopher e SOCKS

Figura 8 - Configuração da porta de saída do tráfego
Depois de configurado o Firefox, basta iniciar a navegar e todas as
solicitações de página serão enviadas
através da porta 3128 do localhost.