Failover de OpenVPN

1

Na minha empresa, temos dois escritórios em dois locais totalmente diferentes. A é o escritório principal e B é o secundário. Existe um servidor VPN no escritório A, e cada computador acessa a rede A através deste servidor OpenVPN. No ano passado tivemos algum erro com o servidor VPN e as pessoas não puderam trabalhar no escritório B por causa disso. Minha pergunta é lá um método de failover para o OpenVPN? Queremos configurar um outro servidor VPN, mas como resolvemos a parte de failover, se algo acontecer.

    
por Roberto 16.07.2015 / 14:48

3 respostas

2

Um de meus clientes depende muito do OpenVPN em uma configuração de vários sites e nós adotamos duas abordagens:

  1. O principal serviço OpenVPN é fornecido por duas máquinas, em um par de failover de HA usando heartbeat / CRM. Se um cair, o outro assumirá os endereços IP compartilhados e o serviço continuará. As sessões existentes serão descartadas, mas os clientes geralmente se autenticam automaticamente, e descobrimos que isso é indolor para os usuários na prática.

  2. O segundo site também tem um ponto de extremidade OpenVPN em funcionamento e todos os usuários têm uma segunda configuração para backup. Se a conexão da Internet ao site principal cair, eles poderão apontar seus clientes OpenVPN na segunda configuração, e alguma aparência de vida normal poderá continuar.

Se você fizer isso e usar a autenticação de nome de usuário / senha do usuário, bem como a autenticação baseada em certificado do ponto de extremidade, descobrimos que é importante federar o ambiente de autenticação (por exemplo, autenticar via LDAP). Caso contrário, os usuários esquecem seus tokens de acesso nos endpoints pouco usados ou não os atualizam em todos os lugares, e qualquer failover aciona uma enxurrada de chamadas " minha senha não funciona ".

O serviço federado deve ser fornecido com um grau de resiliência semelhante ao dos servidores OpenVPN, caso contrário, tudo o que você fez foi o upstream do seu SPOF.

    
por 16.07.2015 / 15:04
0

We want to setup an other VPN server, but how we solve the failover part, if something would happen.

Ok. Se você estiver usando o Linux, então

1) A maneira simples é usar o link

2) Script Bash no cron como meu link

3) Zabbix com gatilhos

    
por 16.07.2015 / 15:01
-1

Sugiro que você configure um cluster de alta disponibilidade (failover). Você gostaria de ter um IP virtual que será o ip usado como gateway pelo seu cliente vpn. Esse IP será migrado no servidor em espera pelo cluster, caso haja uma falha, e o cluster iniciará o openvpn no servidor em espera. Eu escrevi um gerenciador de cluster de failover no shell script, dê uma olhada nele e se você precisar de suporte, entre em contato diretamente comigo (veja o código do meu email). link

Eu acho que o código é elegante e ainda compacto para ser entendido até mesmo por um administrador de sistema especializado. É uma solução muito melhor do que agendar um script crontab, pois com o meu cluster você evitará completamente a situação do cérebro dividido. A única desvantagem é que ele precisa de 3 PCs para funcionar (outro software de cluster usa um armazenamento compartilhado para quorum ou abordagem STONITH, como o cluster RedHat, mas o IHMO é uma solução feia). Com apenas 2 nós você não pode evitar dividir o cérebro em caso de falha do servidor, é matemática:)

    
por 14.11.2015 / 18:35