Neste tutorial, mostraremos como configurar o Obfsproxy com um servidor OpenVPN caseiro e um PC com Windows. Isso evita que censores e firewalls usem a inspeção profunda de pacotes para determinar se você está criptografando o tráfego, usando o OpenVPN.
Este tutorial pressupõe que você tenha um servidor OpenVPN e um cliente Windows já configurados em uma instância do Amazon Web Services EC2. Confira o tutorial anterior do servidor OpenVPN sobre como fazer isso.
O Obfsproxy deve impedir que sua VPN seja bloqueada por censores em países como China. Confirmamos que ele também ignora a proibição de VPN no Netflix.
Antes de começarmos
Obfsproxy, abreviação de proxy de ofuscação, foi adotado pela comunidade Tor. Nas suas palavras:
“O Obfsproxy é uma ferramenta que tenta burlar a censura, transformando o tráfego do Tor entre o cliente e a ponte. Dessa forma, os censores, que geralmente monitoram o tráfego entre o cliente e a ponte, verão o tráfego transformado de aparência inocente em vez do tráfego Tor real. ”
Obfsproxy, no entanto, é realmente independente do Tor, portanto, também pode ser usado para ofuscar o tráfego OpenVPN.
Para o Obfsproxy funcionar com o OpenVPN, precisamos configurá-lo no cliente e no servidor. Alguns provedores de VPN, incluindo NordVPN e AirVPN, oferecem servidores pré-configurados, portanto, você só precisa configurar o lado do cliente. Este tutorial irá explicar tanto.
Aqui está uma lista do que você precisa:
- Um servidor OpenVPN funcional em uma instância do Amazon Linux EC2 semelhante à de nosso tutorial anterior
- A GUI do OpenVPN Connect (aplicativo do lado do cliente)
- PuTTy
- Python 2.7
- Compilador Microsoft C ++ para Python 2.7
- OpenSSL Light para Windows
- Sharp ProxySwitchy ou um software proxy equivalente
Configuração Obfsproxy do lado do cliente no Windows
Começaremos com a configuração do lado do cliente, porque algumas pessoas não precisarão fazer a configuração do lado do servidor se o provedor de VPN já oferecer servidores pré-configurados.
Configuração preliminar
Felizmente, o NordVPN já fez a você a cortesia de agrupar a maioria das dependências necessárias em um único arquivo .zip. Faça o download aqui.
Comece instalando o Python 2.7 no diretório padrão com as configurações padrão. O Obfsproxy é um programa Python, então você precisará instalá-lo. Se você possui uma versão mais recente do Python, como 3.3 ou 3.4, recomendamos instalar o 2.7 de qualquer maneira. Você pode encontrar o arquivo de instalação na pasta Etapa 3 do arquivo zip do NordVPN (estamos pulando as pastas das etapas 1 e 2).
Em seguida, precisamos instalar o Microsoft C ++ Compiler para Python 2.7 a partir da pasta da etapa 4. Não existe esse compilador para versões posteriores do Python. Você pode encontrar uma solução alternativa usando o MS Visual Studio ou o pacote Numby, mas achamos muito menos trabalhoso instalar o Python 2.7.
Depois de instalar o compilador C ++ usando as configurações e o diretório padrão, vá para a pasta da etapa 5. Instale o OpenSSL Light, novamente, usando todas as configurações padrão. Você pode ser solicitado a fazer uma doação após a instalação. Clique em Concluir e feche a janela pop-up se você não deseja doar.
Marque esta página como favorita, reinicie o computador e abra esta página novamente.
Obfsproxy e configuração do OpenVPN
Agora você tem tudo o que precisa para executar o Obfsproxy, mas ainda precisamos configurá-lo para que possa ser usado com o OpenVPN. Começaremos modificando nossos arquivos .ovpn existentes no diretório OpenVPN. Se você ainda não configurou o OpenVPN, consulte nosso tutorial anterior. Se você instalou o OpenVPN no diretório padrão, encontrará os arquivos de configuração em C: / Arquivos de Programas / OpenVPN / config.
Encontre o Bloco de notas ou outro editor de texto, clique com o botão direito do mouse e escolha “Executar como administrador”. Abra o arquivo de configuração usado para conectar-se ao servidor OpenVPN normalmente. Clique em Arquivo > Salvar como e nomeá-lo de outra forma, para que possamos ter uma cópia para trabalhar sem se preocupar em estragar o original.
Modificaremos o arquivo de configuração para ter a seguinte aparência:
proto tcp-client
remote 8080
porta 1194
dev tun1
segredo ovpn.key
redirecionamento-gateway def1
ifconfig 10.4.0.2 10.4.0.1
meias-proxy-tente novamente
socks-proxy 127.0.0.1 10194
Observe a adição de duas linhas na parte inferior, mais um número de porta no final da linha remota. Substitua pelo endereço IP da sua instância do Amazon EC2. A menos que você configure um IP elástico na Amazon, esse endereço será alterado toda vez que você parar e iniciar sua instância, lembre-se de alterá-lo, se necessário. Na linha remota, o número da porta pode estar fora do intervalo reservado de portas. Usamos o 8080 porque é bastante compatível com quase todos os servidores Web, mas o 21194 é sugerido no wiki do OpenVPN. Lembre-se de que tudo o que você colocar aqui deve corresponder ao que configuramos no servidor mais tarde.
Se você estiver se conectando a um servidor pré-configurado de propriedade do seu provedor de VPN, os arquivos de configuração deverão ser fornecidos para você (a pasta da etapa 2 para usuários do NordVPN).
Salve seu novo arquivo de configuração, certificando-se de não substituir o antigo. Verifique também se o editor de texto não anexa automaticamente o nome do arquivo com .txt. Deve ser um arquivo .ovpn.
Agora que o OpenVPN está configurado, precisamos instalar e executar o Obfsproxy. É aqui que entra a sua nova instalação do Python. Na barra de pesquisa do Windows, digite “Prompt de Comando”. Clique com o botão direito do mouse no aplicativo Prompt de Comando e clique em “Executar como administrador”. No terminal, digite os seguintes comandos, uma linha de cada vez, pressionando Enter após cada.
cd C: \ Python27 \ Scripts
instalação do pip – upgrade pip
pip install obfsproxy
obfsproxy –log-min-severity = info obfs2 –shared-secret = socks 127.0.0.1:10194
Após o segundo comando, você poderá ver alguns erros ou avisos. Ignore-os por enquanto.
Aqui você precisa substituir por uma senha de sua escolha. Lembre-se ou anote essa senha, pois será necessária mais tarde. Se você estiver se conectando a servidores pré-configurados fornecidos pelo seu serviço VPN, este comando será fornecido a você.
Após a última linha, seu prompt de comando deve informar que está ouvindo o tráfego obfsproxy, como na captura de tela. Observe na captura de tela que esqueci de digitar minha própria senha na primeira tentativa.
Você precisará navegar para o diretório Scripts (primeiro comando), digite o comando Obfsproxy (último comando) e deixe seu prompt de comando aberto sempre que desejar usar o Obfsproxy.
Configuração de proxy (opcional)
Editar: esta etapa não é necessária para o funcionamento do Obfsproxy, mas é necessário se você deseja usar sua conexão VPN Obfsproxy + VPN para assistir à Netflix e outros sites de streaming de vídeo fora dos EUA (ou em qualquer país em que seu servidor VPN esteja). Caso contrário, o Netflix será definido para a região incorreta.
A última coisa que precisamos fazer no lado do cliente é configurar uma conexão proxy. Isso difere para cada aplicativo. Você pode configurá-lo nas configurações da Internet do Windows, mas eu prefiro fazê-lo aplicativo por aplicativo. Em aplicativos nativos que usam a Internet, geralmente você pode configurar um proxy em algum lugar nas configurações. Os campos são os seguintes:
- Host SOCKS: 127.0.0.1
- Porta: 8080 (ou o que você colocar no seu arquivo de configuração OpenVPN na linha remota)
- SOCKS versão 5 (SOCKS5)
Em um navegador, a maneira mais fácil de configurar isso é com uma extensão de proxy. Mostraremos como usar o Proxy Switchy Sharp no Chrome.
Nas configurações do ProxySwitchy, crie um novo perfil. Com a configuração manual selecionada, digite as configurações acima, como mostrado abaixo. Nomeie como quiser. Não vamos ativar isso até que tenhamos estabelecido uma conexão com o servidor, então aguarde firme.
Configuração do servidor Obfsproxy na instância do Linux EC2
Seu PC está pronto para conectar, então agora precisamos preparar o servidor.
Grupo de segurança da AWS
Antes de instalar e executar o obfsproxy no servidor, pode ser necessário adicionar uma nova regra ao grupo de segurança do servidor para garantir que o firewall da instância do EC2 não bloqueie o tráfego. Para fazer isso, faça login na sua conta da AWS e clique em EC2. Em Rede e segurança, vá para Grupos de segurança.
Aqui você pode optar por criar um novo grupo de segurança e adicioná-lo ao seu servidor ou modificar um existente. Clique com o botão direito do mouse em uma regra e selecione “Editar regras de entrada”. Em Tipo, selecione todo o tráfego TCP (nota: ignore a regra personalizada personalizada na captura de tela, como atualizamos este tutorial) e defina a origem como “Meu IP” ou o IP de qualquer dispositivo que você planeja conectar com. Em seguida, clique com o botão direito e vá para “editar regras de saída”. Em tipo, basta selecionar a opção suspensa para “todo o tráfego”.
Se você criou um novo grupo de segurança, clique em Instâncias na barra lateral esquerda, clique com o botão direito do mouse na instância da VPN, role para baixo até Rede e clique em Alterar grupos de segurança. Verifique seu novo grupo de segurança e clique em Salvar.
Configuração do servidor Obfsproxy
Use PuTTy para se conectar ao seu servidor através do SSH. Se você não se lembra de como fazer isso ou não salvou um perfil, consulte nosso tutorial anterior. Lembre-se de que, na distribuição do servidor Amazon Linux AMI, o nome de usuário é “ec2-user”. Execute o OpenVPN usando este comando:
serviço sudo openvpn start
Verifique se o arquivo de configuração do OpenVPN no servidor (etc / openvpn / openvpn.conf) possui a porta 1194 aberta, conforme nosso tutorial anterior.
O Python já deve estar instalado se você estiver usando a distribuição do servidor Linux 14.04. No terminal PuTTy, digite os seguintes comandos, uma linha de cada vez, e pressione enter após cada um:
sudo yum install gcc
instalação do sudo pip obfsproxy
obfsproxy –log-min-severity = info obfs2 –dest = 127.0.0.1: 1194 –shared-secret = server 0.0.0.0:8080
Para o primeiro comando, versões mais antigas do Linux podem usar “apt-get” em vez de “yum”.
Lembre-se de substituir no último comando a mesma senha usada no lado do cliente.
Você deve ver uma mensagem semelhante neste terminal e no prompt de comando, indicando que o servidor está escutando na porta 8080 o tráfego obfsproxy.
Conectando através do Obfsproxy
Você está definido para conectar. Com o Obfsproxy em execução na máquina local (prompt de comando) e no servidor (PuTTy), execute a GUI do OpenVPN. Clique com o botão direito do mouse e conecte-se usando sua nova configuração. O ícone OpenVPN deve ficar verde e uma notificação com o seu IP atribuído deve aparecer.
Se você quiser assistir ao Netflix ou algum outro conteúdo bloqueado geograficamente, ative as configurações de proxy nos seus aplicativos. Para o Proxy Switchy no Chrome, clique no ícone no canto superior direito e selecione o perfil que você criou na seção opcional acima. Você também pode adicionar o proxy nas configurações da Internet do Windows.
Parabéns! Seu tráfego OpenVPN agora é indistinguível do tráfego HTTP normal graças ao Obfsproxy.
Automatizando o processo
Como você deve ter concluído, executar o obfsproxy no lado do cliente toda vez que você quiser usá-lo pode ser um pouco entediante. Para automatizar o processo, um usuário criou um instalador do Windows que executa o Obfsproxy como um serviço iniciado na inicialização. Você pode baixá-lo e encontrar instruções aqui.
“Disguise-glasses.jpg” por r. Bradford Nacional licenciado sob CC BY 2.0
Obfsproxy com um servidor OpenVPN caseiro e um PC com Windows, este tutorial é uma ótima maneira de começar. Ele mostra como configurar o Obfsproxy para evitar que censores e firewalls usem a inspeção profunda de pacotes para determinar se você está criptografando o tráfego, usando o OpenVPN. O tutorial pressupõe que você já tenha um servidor OpenVPN e um cliente Windows configurados em uma instância do Amazon Web Services EC2. O Obfsproxy deve impedir que sua VPN seja bloqueada por censores em países como China e também ignora a proibição de VPN no Netflix. O tutorial é bem detalhado e fácil de seguir, e inclui uma lista de tudo o que você precisa para começar. Se você está procurando uma maneira de aumentar a segurança da sua VPN, este tutorial é definitivamente vale a pena conferir.