Criando um OpenVPN Access Server no OCI

Um dos recursos que ainda não está presente no OCI é a capacidade de gerar uma VPN site-to-client o que facilitaria bastante o acesso em localidades que não possuem um appliance para fechar a VPN usando a VPNaaS (Serviço de VPN gratuito que a Oracle oferece) ou outro fornecedor no OCI, dando uma estudada em alternativas, acabei encontrando o OpenVPN AS que nada mais é que uma máquina rodando o software openvpn com uma interface Web que facilita o seu gerenciamento

A melhor parte é que ele é gratuito (até o momento que estou escrevendo esse post) para o uso de até duas conexões simultâneas, bastando a você pagar somente a infra onde ele vai rodar, ou não pagar caso use o Shape Micro, abaixo mostro os passos para o deploy dele, por favor não usem o compartimento root para fazer deploy de sua infra, estou usando aqui por se tratar de um ambiente de teste.

Você pode fazer o deploy tanto pelo marketplace (aqui) ou acessando seu dashboard e indo na opção de Marketplace, o deploy do OpenVPN é na modalidade “Stack” que cria todos os recursos (rede, regras, vms, etc) necessários para a execução do software, no background ele roda scripts terraform para isso.

Após clicar em Launch Stack, você pode dar um nome ao Stack que vai ser criado, aqui vou usar o nome OPENVPN:

Clicando em Next, você precisa colocar o nome da VM que vai ser criada(no print está errado mas depois eu corrigi) e selecionar o shape onde ele vai ser executado, também coloque um nome de usuário e uma senha, aqui um ponto de atenção pois não podemos colocar caracteres especiais na senha e ela vai ser exibida na tela do Stack depois da criação, coloque uma senha que não vai ser a definitiva.

Caso você vá usar mais de duas conexões ao mesmo tempo, você já pode colocar a sua activation key aqui.

Na parte de redes, vou usar uma VCN e subnet que já existem pois quero acessar um servidor já existente.

Nas configurações adicionais, coloque uma chave SSH para caso queira acessar a máquina depois por linha de comando:

Após isso, um resumo vai ser apresentado:

Ao aceitar a criação, um job vai ser criado para a execução dos comandos para a criação do recursos necessários:

Após a finalização do Job, você pode acessar o servidor tanto pelo endereço https://ip-publico/admin ou na tela da Stack em Application Information -> Login to administer (olha a nossa senha ali em texto puro):

Ao acessar o endereço do OpenVPN, a primeira recomendação é ir em User Permissions (do lado esquerdo) e alterar a senha do usuário que você criou:

Por se tratar de um ambiente de testes, não vou realizar nenhuma configuração mais complexa mas é possível limitar redes, acessos, quais endereços vão ser distribuídos via VPN e por ai vai.

Conectando na VPN

Após o serviço estar no ar, basta acessar o endereço https://ip-publico:943 e fazer login com seu usuário e senha para ter acesso ao instalador do OpenVPN connect ou baixar o profile (marcado de vermelho) caso você já tenha o openvpn instalado em sua máquina:

No meu caso, por já usar o openvpn e minha máquina, fiz o download do profile e coloquei dentro da pasta config no diretório de instalação do openvpn:

Ao conectar no openvpn, você deve entrar as mesmas credenciais que usou no seu usuário:

Testando a conexão

Após ter entrado com as credenciais, o status da conexão no openvpn client vai mudar e ai você já pode testar sua conexão:

No meu ambiente, além do servidor de openvpn, possuo mais dois servidores:

E da minha máquina consigo acessar todos:

E na tela Status -> Current Users você pode acompanhar quem está conectado:

Dessa forma, agora você só precisa liberar a porta do openvpn na sua subnet e realizar o acesso através do serviço.

chevron_left
chevron_right