Eu duvido que uma configuração tão grande tenha sido tentada antes, então você provavelmente estará forçando limites ao tentar. Eu encontrei um artigo sobre uma implantação de VPN para 400 clientes , mas julgando No texto, o autor baseava-se em estimativas aproximadas sobre quantos clientes poderiam ser executados por CPU e não entendia como sua configuração funcionaria.
Você precisa considerar principalmente esses dois pontos:
-
A largura de banda que suas transferências de dados vão usar precisaria de criptografia / descriptografia no lado do servidor VPN, consumindo recursos da CPU
-
As conexões do cliente OpenVPN consomem recursos de memória e CPU no servidor, mesmo quando nenhum dado é transferido
Qualquer hardware de PC decente disponível hoje deve facilmente saturar um link Gigabit com Blowfish ou AES-128, até mesmo dispositivos incorporados de $ 100 são capazes de taxas próximas a 100 Mbps , portanto, os gargalos da CPU devido à intensidade da largura de banda não devem ser motivo de preocupação.
Dado o intervalo de recriação padrão de 3600 segundos, um número de 1.000.000 de clientes significaria que o servidor precisaria concluir 278 trocas de chaves por segundo em média. Embora uma troca de chaves seja uma tarefa que exige bastante uso da CPU, você pode descarregá-la em hardware dedicado, se necessário - as placas aceleradoras criptográficas disponíveis atendem e excedem facilmente esse número de handshakes TLS. E as restrições de memória também não devem incomodar muito - um binário de 64 bits deve cuidar de quaisquer restrições de memória virtual que você provavelmente usaria de outra forma.
Mas a verdadeira beleza com o OpenVPN é que você pode escalá-lo facilmente - basta configurar um número arbitrário de servidores OpenVPN e certificar-se de que seus clientes os estão usando (por exemplo, através de round-robin de DNS), configurar um protocolo de roteamento dinâmico de sua escolha (normalmente seria RIP devido à sua simplicidade) e sua infra-estrutura seria capaz de suportar um número arbitrário de clientes, desde que você tenha hardware suficiente.