Comparação de desempenho de ferramentas de bypass de bloqueio VPN

À medida que nos é cada vez mais negado o acesso a vários recursos na rede, a questão de contornar o bloqueio torna-se cada vez mais premente, o que significa que a questão “Como contornar o bloqueio mais rapidamente?” torna-se cada vez mais relevante.

Vamos deixar o tópico da eficiência em termos de contornar listas brancas de DPI para outro caso e simplesmente comparar o desempenho de ferramentas populares de desvio de bloco.

Atenção: Haverá muitas fotos com spoilers no artigo.

Isenção de responsabilidade: este artigo compara o desempenho de soluções populares de proxy VPN em condições próximas do “ideal”. Os resultados obtidos e descritos aqui não coincidem necessariamente com os seus resultados nos campos. Porque o número no teste de velocidade muitas vezes dependerá não de quão poderosa é a ferramenta de bypass, mas de como seu provedor a limita.

Metodologia

3 VPS foram adquiridos de um provedor de nuvem (DO) em diferentes países ao redor do mundo. 2 na Holanda, 1 na Alemanha. O VPS mais produtivo (por número de núcleos) foi selecionado dentre aqueles disponíveis para a conta na oferta de créditos de cupom.

Um servidor iperf3 privado é implantado no primeiro servidor holandês.

No segundo servidor holandês, vários servidores de ferramentas de bypass de bloco são implantados um por um.

Uma imagem de desktop Linux (xubuntu) com VNC e um desktop virtual são implantados no VPS alemão. Esta VPN é um cliente condicional e vários clientes proxy VPN são instalados e iniciados nele.

As medições de velocidade são realizadas três vezes, focamos na média, utilizamos 3 ferramentas: no Chromium através de um teste de velocidade web; no Chromium via fast.com; do console via iperf3 via proxychains4 (onde você precisa colocar o tráfego iperf3 no proxy).

Uma conexão direta “cliente”-servidor iperf3 dá uma velocidade de 2 Gbps no iperf3, e um pouco menos no fastspeedtest.

Um leitor curioso pode perguntar: “por que você não escolheu speedtest-cli?” e ele estará certo.

O Speedtest-cli revelou-se não confiável e uma forma inadequada de medir o rendimento, por razões que desconheço. Três medições consecutivas podem dar três resultados completamente diferentes ou, por exemplo, mostrar um rendimento muito superior à velocidade da porta do meu VPS. Talvez o problema seja minha mão torta, mas parecia impossível realizar pesquisas com tal ferramenta.

Quanto aos resultados dos três métodos de medição (speedtest fastiperf), considero os indicadores iperf os mais precisos e confiáveis, tendo o fastspeedtest como referência. Mas algumas ferramentas de bypass não permitiam completar 3 medições através do iperf3 e, nesses casos, você pode contar com o speedtestfast.

teste de velocidade dá resultados diferentesComparação de desempenho de ferramentas de bypass de bloqueio VPN

Toolkit

No total, foram testadas 24 ferramentas de bypass diferentes ou suas combinações, para cada uma delas darei pequenas explicações e minhas impressões sobre como trabalhar com elas. Mas, essencialmente, o objetivo era comparar as velocidades dos shadowocks (e vários ofuscadores diferentes para eles) do openVPN e do wireguard.

Neste material não discutirei detalhadamente a questão “qual a melhor forma de ocultar o tráfego para não ser desconectado”, porque contornar o bloqueio é uma medida reativa - nos adaptamos ao que o censor usa e agimos com base nisso.

Descobertas

Strongswanipsec

Na minha opinião, é muito fácil de configurar e funciona de forma bastante estável. Uma das vantagens é ser verdadeiramente multiplataforma, sem a necessidade de buscar clientes para cada plataforma.

baixar - 993 Mbps; upload - 770 MbpsComparação de desempenho de ferramentas de bypass de bloqueio VPN

Túnel SSH

Provavelmente apenas os preguiçosos não escreveram sobre o uso do SSH como ferramenta de túnel. Uma das desvantagens é a “muleta” da solução, ou seja, implantá-lo a partir de um cliente bonito e conveniente em todas as plataformas não funcionará. As vantagens são o bom desempenho, não há necessidade de instalar nada no servidor.

baixar - 1270 Mbps; upload - 1140 MbpsComparação de desempenho de ferramentas de bypass de bloqueio VPN

OpenVPN

OpenVPN foi testado em 4 modos de operação: tcp, tcp+sslh, tcp+stunnel, udp.

Os servidores OpenVPN foram configurados automaticamente instalando o streisand.

Pelo que se pode avaliar, no momento apenas o modo stunnel é resistente a DPIs avançados. A razão para o aumento anormal na taxa de transferência ao envolver o openVPN-tcp no stunnel não está clara para mim, as verificações foram feitas em várias execuções, em horários e dias diferentes, o resultado foi o mesmo. Talvez isso se deva às configurações da pilha de rede instaladas durante a implantação do Streisand. Escreva se você tiver alguma ideia do porquê disso.

openvpntcp: download - 760 mbit; upload - 659 MbpsComparação de desempenho de ferramentas de bypass de bloqueio VPN

openvpntcp+sslh: download - 794 mbits; upload - 693 MbpsComparação de desempenho de ferramentas de bypass de bloqueio VPN

openvpntcp+stunnel: download - 619 mbits; upload - 943 MbpsComparação de desempenho de ferramentas de bypass de bloqueio VPN

openvpnudp: download - 756 mbit; upload - 580 MbpsComparação de desempenho de ferramentas de bypass de bloqueio VPN

Conexão aberta

Não é a ferramenta mais popular para contornar bloqueios, está incluída no pacote Streisand, por isso decidimos testá-la também.

download - 895 Mbps; carregar 715 mbpsComparação de desempenho de ferramentas de bypass de bloqueio VPN

Vigia

Uma ferramenta popular entre os usuários ocidentais, os desenvolvedores do protocolo até receberam alguns subsídios para desenvolvimento de fundos de defesa. Funciona como um módulo do kernel Linux via UDP. Recentemente, surgiram clientes para windowsios.

Foi concebido pelo criador como uma forma simples e rápida de assistir Netflix fora dos Estados Unidos.

Daí os prós e os contras. Prós: protocolo muito rápido, relativa facilidade de instalação e configuração. Desvantagens - o desenvolvedor não o criou inicialmente com o objetivo de contornar bloqueios sérios e, portanto, o Wargard é facilmente detectado pelas ferramentas mais simples, incl. wirehark.

protocolo wireguard no wiresharkComparação de desempenho de ferramentas de bypass de bloqueio VPN
download - 1681 Mbps; carregar 1638 mbpsComparação de desempenho de ferramentas de bypass de bloqueio VPN

Curiosamente, o protocolo warguard é usado no cliente tunsafe de terceiros, que, quando usado com o mesmo servidor warguard, dá resultados muito piores. É provável que o cliente Wargard do Windows mostre os mesmos resultados:

tunsafeclient: download - 1007 mbit; upload - 1366 MbpsComparação de desempenho de ferramentas de bypass de bloqueio VPN

EsboçoVPN

Outline é uma implementação de um servidor e cliente shadowox com uma interface de usuário bonita e conveniente do quebra-cabeça do Google. No Windows, o cliente de estrutura de tópicos é simplesmente um conjunto de wrappers para os binários shadowsocks-local (cliente shadowsocks-libev) e badvpn (binário tun2socks que direciona todo o tráfego da máquina para um proxy de meias local).

Shadowsox já foi resistente ao Grande Firewall da China, mas com base em análises recentes, esse não é mais o caso. Ao contrário do ShadowSox, ele não oferece suporte para conexão de ofuscação por meio de plug-ins, mas isso pode ser feito manualmente, ajustando o servidor e o cliente.

baixar - 939 Mbps; upload - 930 MbpsComparação de desempenho de ferramentas de bypass de bloqueio VPN

ShadowsocksR

ShadowsocksR é um fork do Shadowsocks original, escrito em Python. Em essência, é uma caixa de sombra na qual vários métodos de ofuscação de tráfego estão firmemente fixados.

Existem garfos de ssR para libev e algo mais. O baixo rendimento provavelmente se deve à linguagem do código. O shadowsox original em python não é muito mais rápido.

shadowocksR: download de 582 mbits; carregar 541 mbits.Comparação de desempenho de ferramentas de bypass de bloqueio VPN

Shadowsocks

Uma ferramenta chinesa de desvio de bloco que randomiza o tráfego e interfere na análise automática de outras maneiras maravilhosas. Até recentemente, o GFW não era bloqueado, dizem que agora ele só é bloqueado se o relé UDP estiver ligado.

Multiplataforma (existem clientes para qualquer plataforma), suporta trabalhar com PT semelhante aos ofuscadores do Thor, existem vários ofuscadores próprios ou adaptados a ele, rápido.

Existem várias implementações de clientes e servidores shadowox, em diferentes idiomas. Nos testes, shadowocks-libev atuou como um servidor, clientes diferentes. O cliente Linux mais rápido acabou sendo o shadowocks2 on go, distribuído como cliente padrão no streisand, não posso dizer o quanto o shadowocks-windows é mais produtivo. Na maioria dos testes posteriores, shadowocks2 foi usado como cliente. Capturas de tela testando shadowocks-libev puro não foram feitas devido ao atraso óbvio desta implementação.

shadowocks2: download - 1876 mbit; upload - 1981 Mbps.Comparação de desempenho de ferramentas de bypass de bloqueio VPN

shadowocks-rust: download - 1605 mbits; upload - 1895 Mbps.Comparação de desempenho de ferramentas de bypass de bloqueio VPN

Shadowsocks-libev: download - 1584 mbits; upload - 1265 Mbps.

Simples-obfs

O plugin para shadowsox está agora com status “depreciado”, mas ainda funciona (embora nem sempre bem). Em grande parte suplantado pelo plugin v2ray. Ofusca o tráfego em um websocket HTTP (e permite falsificar o cabeçalho de destino, fingindo que não vai assistir a um pornhub, mas, por exemplo, ao site da Constituição da Federação Russa) ou sob pseudo-tls (pseudo , por não usar nenhum certificado, o DPI mais simples, como o nDPI gratuito, é detectado como “tls no cert”. No modo tls, não é mais possível falsificar cabeçalhos).

Bastante rápido, instalado a partir do repositório com um comando, configurado de forma muito simples, possui uma função de failover integrada (quando o tráfego de um cliente não-simple-obfs chega à porta que o simple-obfs escuta, ele o encaminha para o endereço onde você especifica nas configurações - assim Desta forma, você pode evitar a verificação manual da porta 80, por exemplo, simplesmente redirecionando para um site com http, bem como bloqueando por meio de sondagens de conexão).

shadowockss-obfs-tls: download - 1618 mbits; carregar 1971 mbits.Comparação de desempenho de ferramentas de bypass de bloqueio VPN

shadowockss-obfs-http: download - 1582 mbits; upload - 1965 Mbps.Comparação de desempenho de ferramentas de bypass de bloqueio VPN

Obfs simples no modo HTTP também podem funcionar por meio de um proxy reverso CDN (por exemplo, cloudflare), portanto, para nosso provedor, o tráfego será semelhante ao tráfego de texto simples HTTP para cloudflare, isso nos permite ocultar um pouco melhor nosso túnel e, em ao mesmo tempo, separe o ponto de entrada e a saída do tráfego - o provedor vê que seu tráfego está indo para o endereço IP CDN, e curtidas extremistas nas imagens são colocadas neste momento a partir do endereço IP VPS. É preciso dizer que são os s-obfs através do CF que funcionam de forma ambígua, não abrindo periodicamente alguns recursos HTTP, por exemplo. Portanto, não foi possível testar o upload usando iperf via shadowsockss-obfs+CF, mas a julgar pelos resultados do teste de velocidade, o rendimento está no nível de shadowsocksv2ray-plugin-tls+CF. Não estou anexando capturas de tela do iperf3, porque... Você não deve confiar neles.

download (teste de velocidade) - 887; upload (teste de velocidade) - 1154.Comparação de desempenho de ferramentas de bypass de bloqueio VPN

Baixar (iperf3) - 1625; carregar (iperf3) - NA.

plugin v2ray

O plugin V2ray substituiu obfs simples como o principal ofuscador “oficial” para ss libs. Ao contrário dos obfs simples, ele ainda não está nos repositórios e você precisa baixar um binário pré-montado ou compilá-lo você mesmo.

Suporta 3 modos de operação: padrão, websocket HTTP (com suporte para falsificação de cabeçalhos do host de destino); tls-websocket (ao contrário do s-obfs, este é um tráfego tls completo, que é reconhecido por qualquer servidor web proxy reverso e, por exemplo, permite configurar a terminação tls em servidores cloudfler ou em nginx); quic - funciona via udp, mas infelizmente o desempenho do quic na v2rey é muito baixo.

Entre as vantagens em relação ao obfs simples: o plugin v2rey funciona sem problemas via CF no modo HTTP-websocket com qualquer tráfego, no modo TLS é tráfego TLS completo, requer certificados para operação (por exemplo, de Let's encrypt ou self -assinado).

shadowocksv2ray-plugin-http: download - 1404 mbits; carregar 1938 mbits.Comparação de desempenho de ferramentas de bypass de bloqueio VPN

shadowocksv2ray-plugin-tls: download - 1214 mbits; carregar 1898 mbits.Comparação de desempenho de ferramentas de bypass de bloqueio VPN

shadowocksv2ray-plugin-quic: download - 183 mbits; carregar 384 mbits.Comparação de desempenho de ferramentas de bypass de bloqueio VPN

Como eu já disse, o v2ray pode definir cabeçalhos, e assim você pode trabalhar com ele através de um proxy reverso CDN (cloudfler por exemplo). Por um lado, isso complica a detecção do túnel, por outro lado, pode aumentar um pouco (e às vezes reduzir) o atraso - tudo depende da sua localização e da localização dos servidores. CF está atualmente testando o funcionamento do quic, mas este modo ainda não está disponível (pelo menos para contas gratuitas).

shadowsocksv2ray-plugin-http+CF: download - 1284 mbits; carregar 1785 mbits.Comparação de desempenho de ferramentas de bypass de bloqueio VPN

shadowocksv2ray-plugin-tls+CF: download - 1261 mbits; carregar 1881 mbits.Comparação de desempenho de ferramentas de bypass de bloqueio VPN

Capa

O fragmento é o resultado do desenvolvimento do ofuscador GoQuiet. Simula o tráfego TLS e funciona via TCP. No momento, o autor lançou a segunda versão do plugin, cloak-2, que é significativamente diferente do cloak original.

Segundo o desenvolvedor, a primeira versão do plugin usava o mecanismo de retomada de sessão tls 1.2 para falsificar o endereço de destino do tls. Após o lançamento da nova versão (clock-2), todas as páginas wiki no Github que descrevem este mecanismo foram excluídas; não há menção a isso na descrição atual da criptografia de ofuscação. Segundo a descrição do autor, a primeira versão do fragmento não é utilizada devido à presença de “vulnerabilidades críticas na criptografia”. Na época dos testes existia apenas a primeira versão do cloak, seus binários ainda estão no Github e, além de tudo, vulnerabilidades críticas não são muito importantes, pois shadowsox criptografa o tráfego da mesma forma que sem camuflagem, e o cloac não tem efeito na criptografia do shadowsox.

shadowockscloak: baixar - 1533; upload - 1970 MbpsComparação de desempenho de ferramentas de bypass de bloqueio VPN

Kcptun

usa kcptun como transporte Protocolo KCP e em alguns casos especiais permite obter maior rendimento. Infelizmente (ou felizmente), isso é amplamente relevante para usuários da China, onde algumas de suas operadoras móveis limitam fortemente o TCP e não tocam no UDP.

Kcptun consome muita energia e carrega facilmente 100 núcleos zion a 4% quando testado por 1 cliente. Além disso, o plugin é “lento” e ao trabalhar no iperf3 não completa os testes até o fim. Vamos dar uma olhada no teste de velocidade do navegador.

shadowockskcptun: download (teste de velocidade) - 546 mbits; upload (teste de velocidade) 854 mbits.Comparação de desempenho de ferramentas de bypass de bloqueio VPN

Conclusão

Você precisa de uma VPN simples e rápida para interromper o tráfego de toda a sua máquina? Então sua escolha é warguard. Você deseja proxies (para tunelamento seletivo ou separação de fluxos de pessoas virtuais) ou é mais importante ofuscar o tráfego de bloqueios graves? Então olhe para shadowbox com ofuscação tlshttp. Você quer ter certeza de que sua Internet funcionará enquanto ela funcionar? Opte por fazer proxy do tráfego por meio de CDNs importantes, cujo bloqueio levará à falha de metade da Internet do país.

Tabela dinâmica, classificada por downloadComparação de desempenho de ferramentas de bypass de bloqueio VPN

Fonte: habr.com

Adicionar um comentário