Curtir Curtir:  0
Resultados 1 a 10 de 11

Tópico: Tibia com proxy tunneling no Ubuntu

Visão do Encadeamento

Post Anterior Post Anterior   Próximo Post Próximo Post
  1. #1
    Avatar de LordHeigler
    Registro
    24-02-2007
    Localização
    Curitiba
    Idade
    36
    Posts
    43
    Conquistas / PrêmiosAtividadeCurtidas / Tagging InfoPersonagem - TibiaPersonagem - TibiaME
    Peso da Avaliação
    0

    Post Tibia com proxy tunneling no Ubuntu

    Essa é minha primeira contribuição aqui. Depois de bater muito a cabeça, consegui fazer o jogo funcionar através de proxy tunneling, tanto no cliente C quanto no cliente flash.

    O artigo é dividido em duas partes, a primeira é basicamente a receita do bolo sem enrolação, porém, pode ser que por uma particularidade do seu sistema ou hardware ela não funcione 100%, daí entra a segunda parte do artigo, que é um pouco mais técnica, mas vai te ajudar a resolver a maioria dos problemas que possam surgir.

    Partimos da premissa que você já tenha algum serviço do proxy e saiba usá-lo, então pularei essa introdução do que é um serviço de tunneling, o foco do artigo é fazer a coisa toda funcionar no Linux.


    Parte 1 - Receita (forma rápida)

    Nota: Essa receita foi feita usando a arquitetura AMD-64 e com o Ubuntu Raring Ringtail (13.04).
    Nota 2: Tudo que estiver dentro das tags "code" são comandos do terminal e o que estiver dentro das tags "php" são arquivos de configuração.

    - Abra o terminal
    - Instale o proxychains, libproxychains3 e libproxychains3-dev
    Código:
    sudo apt-get install proxychains libproxychains3 libproxychains-dev -y
    - Como super usuário, edite o arquivo /etc/proxychains.conf
    Código:
    sudo gedit /etc/proxychains.conf
    - Mais ou menos na linha 38, comente o parâmetro "proxy_dns" adicionando uma # antes dele
    Código PHP:
    # Proxy DNS requests - no leak for DNS data                                       
    # proxy_dns 
    - No final do arquivo, encontre a linha "socks4 127.0.0.1 9050" e altere para "socks5 127.0.0.1 5000"
    Código PHP:
    [ProxyList]                                                                    
    # add proxy here ...                                                           
    # meanwile                                                                     
    # defaults set to "tor"                                                        
    socks5  127.0.0.1 5000 
    - Salve o arquivo (ctrl + s) e feche o gedit.
    - Como super usuário abra o arquivo /usr/bin/proxychains
    Código:
    sudo gedit /usr/bin/proxychains
    - Altere a linha "export LD_PRELOAD=libproxychains.so.3" para ficar desse jeito:
    Código PHP:
    export LD_PRELOAD=/usr/lib/x86_64-linux-gnu/libproxychains.so.3 
    - Salve o arquivo e feche o gedit.
    - Abra um novo terminal, mas deixe o antigo também aberto.
    - Nesse novo terminal você logará no seu servidor de proxy via ssh:
    Código:
    ssh seu_usuario@seuservidor -D 5000 -N
    Cliente flash
    - No outro terminal, elimine forçadamente todos os processos do seu navegador. Atenção, fazendo isso seu navegador fechará subitamente.
    Código:
    sudo pkill -f chrome
    ou no caso do firefox
    Código:
    sudo pkill -f firefox
    - No mesmo terminal abra o navegador com o proxychains
    Código:
    proxychains google-chrome tibia.com
    no firefox
    Código:
    proxychains firefox tibia.com

    Cliente C
    Código:
    proxychains ./Tibia.sh
    Agora é se logar e aproveitar.


    Parte 2 - Entendendo cada recurso e solucionando problemas (forma lenta)

    Proxychains

    O proxychains é um programa que te permite executar outros programas através de um proxy, muito parecido com o proxifier do windows.
    Ele se encontra nos repositórios do ubuntu, então sua instalação é bem tranquila, assim como foi mostrado anteriormente.
    Além do proxychains, instalamos explicitamente a biblioteca libproxychains3, que muitas vezes não acompanha o pacote original. Essa biblioteca é essencial para a execução de programas gráficos, sem ela o máximo que você conseguiria seria dar um "wget" em algum site através do proxy.

    Bom, o pulo do gato está justamente na biblioteca libproxychains3, se você acompanhou atentamente a parte 1, percebeu que no arquivo /usr/bin/proxychains o export aponta por padrão para um caminho relativo inexistente (libproxychains.so.3), você deve então manualmente encontrar o caminho do arquivo .so e colocá-lo no path do executável. Isso pode ser diferente para cada arquitetura ou distribuição (mesmo no universo do ubuntu).
    Você pode usar o comando "locate" para tentar localizá-la:
    Código:
    locate libproxychains.so.3
    Caso não encontre, uma dica é verificar o próprio pacote no repositório:
    http://packages.ubuntu.com/raring/am...ains3/filelist
    Veja que no meu caso eu uso o ubuntu raring em arquitetura amd64, se você por exemplo usa o saucy (13.10) em i386, ficaria assim:
    http://packages.ubuntu.com/saucy/i38...ains3/filelist
    Nesse caso o nosso arquivo estaria em "/usr/lib/i386-linux-gnu/libproxychains.so.3"

    Note que também editamos as configurações do programa em /etc/proxychains.conf
    A primeira coisa que fizemos, foi remover o tratamento de DNS (# antes do parâmetro), isso é necessário pois o programa pode se perder tentando resolver registros como "localhost" e você acaba perdendo a conexão com o túnel ou ela simplesmente não funciona.
    Depois disso, colocamos explicitamente os parâmetros do proxy, usando socks5, rodando localmente (127.0.0.1) na porta 5000.
    Isso quer dizer o seguinte:
    Toda vez que um programa for chamado através do proxychains, sua conexão será enviada através da porta 5000 para um outro lugar.
    SSH

    Esse "outro lugar" que o proxychains leva sua conexão é justamente o túnel que abrimos via ssh com aquele comandinho:
    Código:
    ssh seu_usuario@seuservidor -D 5000 -N
    O ssh loga no servidor remoto com o parâmetro -D que diz basicamente assim:
    Estou atrás de qualquer coisa que tenha a porta 5000 aberta pra fechar uma conexão
    (pegou mal essa frase hehe)
    O parâmetro -N é só para assegurar que nenhuma ação será executada no servidor remoto, mantendo a conexão ativa sem prompts.


    Por quê matar o navegador?

    Bom, quando você fecha o navegador, não quer dizer necessariamente que os processos foram encerrados, no caso do chrome isso é mais verdade ainda, pois pra diminuir o tempo de resposta, os processos ficam em modo daemon esperando uma ação sua.
    Se esses processos não forem totalmente encerrados, provavelmente quando você chamar o proxychains ele será executado em uma sessão já existente do navegador, ou seja, não terá efeito nenhum e você continuará navegando sem proxy.
    Aquele comando faz o trabalho:
    Código:
    pkill -f chrome

    Não daria pra simplesmente configurar o proxy direto no navegador?

    Se você quer só navegar, com certeza, é bem mais simples, basta iniciar a conexão ssh e configurar, sem a necessidade do proxychains, MAS, se você quer jogar Tibia, não dá.
    O jogo é executado em flash, o flash não é built-in (não veio de fábrica no navegador) e sim um plugin, ou seja, ele é um cara meio que independente com suas próprias regras, e nesse caso ele não respeita a configuração de proxy do navegador.


    Como vou saber se estou realmente usando proxy durante o jogo?

    É bem simples, basta interromper o processo do túnel e verificar se seu personagem saiu do jogo, se não saiu é porque você não estava usando o proxy.
    Para interromper o túnel basta dar um "ctrl + c" no processo do ssh.


    É isso pessoal, espero que possa ajudar alguém =D

    Publicidade:


    Jogue Tibia sem mensalidades!
    Taleon Online - Otserv apoiado pelo TibiaBR.
    https://taleon.online
    Última edição por LordHeigler; 27-12-2013 às 13:24.



Tópicos Similares

  1. O futuro de Tibia
    Por Lernem no fórum Tibia Geral
    Respostas: 37
    Último Post: 19-03-2012, 13:27
  2. [Artigo] Tibia Vs. outros MMORPGs
    Por Golden_Fox***** no fórum Matérias TibiaBR
    Respostas: 341
    Último Post: 11-10-2009, 18:23
  3. Admin TibiaBR entrevista GOD STEVE
    Por Admin LokiRJ no fórum Entrevistas TibiaBR
    Respostas: 214
    Último Post: 16-01-2007, 18:56
  4. Admin TibiaBR entrevista GM Ralgar
    Por Admin LokiRJ no fórum Entrevistas TibiaBR
    Respostas: 31
    Último Post: 03-10-2005, 13:20
  5. Regras do Tibia - CipSoft
    Por claudio no fórum Tibia Geral
    Respostas: 16
    Último Post: 16-06-2005, 12:31

Permissões de Postagem

  • Você não pode iniciar novos tópicos
  • Você não pode enviar respostas
  • Você não pode enviar anexos
  • Você não pode editar suas mensagens
  •