Corrijam-me se estiver errado em alguma coisa no meu post, pois não estou tão familiarizado com os recursos do ExpressVPN, mas decidi experimentar no Linux e Android, já que a proposta deles de que você pode assistir a serviços de streaming enquanto estiver conectado, além de oferecer algum tipo de privacidade contra o ISPs, parecia justa.
No entanto, percebi que eles incentivam a instalação do cliente próprio em todas as plataformas para usar o serviço. Não há problema nisso, muitos provedores que testei anteriormente têm seus próprios clientes e, em muitos casos, eles geralmente oferecem mais recursos do que uma configuração openvpn simples, por exemplo. Mas fiquei realmente surpreso ao descobrir que seus clientes não são de código aberto e que eles até DMCAd muitos projetos redistribuídos ou de engenharia reversa de seus clientes. Além disso, não consegui encontrar uma documentação para sua API, para poder obter minhas chaves openvpn programaticamente, sem usar seus binários proprietários pré-compilados.
E o que me surpreendeu ainda mais foi que, ao verificar o APK deles com um antivírus, descobri que o aplicativo móvel nem mesmo possui bindings Java visíveis nos resultados para sua API, mas aparentemente usa uma biblioteca de código fechado libxvclient.so e seus bindings, o que me faz pensar que eles querem fazer de tudo para impedir que alguém faça engenharia reversa no código do cliente. Não fui mais longe na engenharia reversa do software, pois isso violaria a lei.
Além disso, ao procurar no Google por projetos no Github, percebi que eles aplicam muitas estratégias de SEO para exibir artigos totalmente irrelevantes, que não têm relação com minhas consultas, escondendo resultados realmente úteis. Muito irritante.
Me pergunto por que isso é necessário para eles? Se eu já pago tanto pelo serviço, por que não podem fornecer uma API que já existe para quem quer mexer/ajustar o software do jeito que desejar?
Pessoalmente, não gosto de software proprietário, não só porque você não sabe exatamente o que ele faz por baixo dos panos e quão seguro ele é, mas porque não oferece nenhuma maneira de montar sua própria configuração de rede. Deve ser fácil para quem só quer usar o Express para tunelizar todo o tráfego de internet, mas para o usuário avançado que deseja configurar suas próprias interfaces, rotas, etc., é um pesadelo.
E qual seria o propósito de o cliente ser de código fechado? Muitos outros provedores conseguem usar clientes OSS com sucesso. Só posso imaginar que eles não querem que as pessoas automatizem a conexão VPN, porque assim os provedores de conteúdo poderiam pegar rapidamente todos os IPs do ExpressVPN e bloqueá-los do serviço. Mas isso é muito improvável.