Skip to main content

If your data source is available only through your private network, you must register that network in Dadosfera before creating the connection.

Choosing the Right Private Network Option

The best option depends on your database topology, your company's security rules, and the budget available for the project. The table below summarizes the main approaches:

Connection TypeDescription
VPNUsually the lowest-cost and lowest-complexity option. It works well when you can provide an OpenVPN endpoint with access to your private data and can tolerate the latency introduced by the tunnel.
AWS Private LinkThe most secure option because traffic is not exposed publicly. It can be more expensive and its feasibility depends on the type of source you need to access. Learn more in the AWS documentation.
Azure Private LinkAllows VNets and Azure-hosted or on-premises services to communicate privately without exposing traffic publicly. Learn more in the Azure documentation.
SSH TunnelAdds an extra security layer, but may cost more and offer lower performance. You must provide an SSH server that can reach the database port and is accessible from Dadosfera IPs, plus a dedicated SSH user for Dadosfera.

📘

Check which connection options are included in your plan. If you need another connectivity model, contact the Sales team.

For architecture guidance, contact a Dadosfera specialist through the Sales team.

VPN: Installing It on Your Network

Dadosfera officially supports OpenVPN. It is an open-source TLS-based VPN that supports a broad range of configurations. In this guide, you install OpenVPN on an Ubuntu 20.04 server.

Prerequisites

Before starting, make sure you have:

  • Um servidor com sistema operacional Linux Ubuntu >= 20.04 com usuário root.
  • É necessário que o servidor esteja em uma rede pública com acesso a internet.
  • O Hardware Mínimo é de 1GB de memória e 1 CPU.
  • Abrir porta 1194 UDP (ou uma porta custom a sua escolha) para o mundo (0.0.0.0/0).

Instalando e configurando o OpenVPN

Disponibilizamos um script de instalação/configuração interativo do OpenVPN com todas as configurações necessárias para a Dadosfera acessar suas fontes de dados.

Segue passo a passo para execução do script.

Esse processo deve ser feito utilizando o usuário root do servidor!

Primeiramente vamos fazer o download do script e dar permissão de execução.

wget https://app.dadosfera.ai/scripts/openvpn.sh
chmod +x openvpn.sh

Em seguida, vamos executar o script de instalação/configuração.

./openvpn.sh

Ao executar o script, o mesmo vai pedir algumas informações importantes.
A primeira informação a ser passada é o IP Público do server. Implementamos um mecanismo que identifica o IP Publico automaticamente, você precisa apenas validar se o mesmo está correto e dar Enter.

Welcome to the Dadosfera OpenVPN installer!

I need to ask you a few questions before starting the setup.
You can leave the default options and just press enter if you are ok with them.
IP address: 3.223.117.161

Na próxima etapa você pode configurar a porta do servidor que o OpenVPN vai ser executado, a opção padrão configura a porta 1194, porém disponibilizamos uma opção para customização.

What port do you want OpenVPN to listen to?
1) Default: 1194
2) Custom
3) Random [49152-65535]
Port choice [1-3]: 1

Na próxima etapa você pode configurar qual protocolo a porta do OpenVPN vai utilizar, recomendamos utilizar UDP por ser mais rápido que TCP.

What protocol do you want OpenVPN to use?
UDP is faster. Unless it is not available, you shouldn't use TCP.
1) UDP
2) TCP
Protocol [1-2]: 1

Após, você pode configurar o servidor DNS do OpenVPN, por padrão recomendamos o servidor DNS do Google por ser bem estável.

What DNS resolvers do you want to use with the VPN?
1) Current system resolvers (from /etc/resolv.conf)
2) Self-hosted DNS Resolver (Unbound)
3) Cloudflare (Anycast: worldwide)
4) Quad9 (Anycast: worldwide)
5) Quad9 uncensored (Anycast: worldwide)
6) FDN (France)
7) DNS.WATCH (Germany)
8) OpenDNS (Anycast: worldwide)
9) Google (Anycast: worldwide)
10) Yandex Basic (Russia)
11) AdGuard DNS (Anycast: worldwide)
12) NextDNS (Anycast: worldwide)
13) Custom
DNS [1-12]: 9

Na próxima etapa você pode customizar qual criptografia o OpenVPN deve utilizar.
A menos que você saiba o que está fazendo, você deve manter os parâmetros padrão fornecidos pelo script.

Observe que, independentemente da sua escolha, todas as opções apresentadas no script são seguras. (Ao contrário dos padrões do OpenVPN).

Do you want to customize encryption settings?
Unless you know what you're doing, you should stick with the default parameters provided by the script.
Note that whatever you choose, all the choices presented in the script are safe. (Unlike OpenVPN's defaults)

Customize encryption settings? [y/n]: n

Na etapa seguinte o script vai pedir uma confirmação para inicializar a instalação, pressione qualquer tecla para continuar.

Okay, that was all I needed. We are ready to setup your OpenVPN server now.
Press any key to continue...

Durante a instalação será necessário informar uma senha para a chave CA:
É importante escolher uma senha segura e mantê-la salva no seu gerenciador de senhas.

Note: using Easy-RSA configuration from: /etc/openvpn/easy-rsa/vars

init-pki complete; you may now create a CA or requests.
Your newly created PKI dir is: /etc/openvpn/easy-rsa/pki

Using SSL: openssl OpenSSL 1.1.1f 31 Mar 2020

Enter New CA Key Passphrase: YOUR_PASSWORD
Re-Enter New CA Key Passphrase: YOUR_PASSWORD

Na etapa seguinte será solicitada a senha para a chave .PEM, utilize a mesma senha escolhida para a chave CA.

Se você estiver utilizando o Ubuntu 22.04 a senha para a chave .PEM pode ser solicitada mais de 2 vezes. Isso acontece devido ao comportamento diferente do OpenSSL 3.

Note: using Easy-RSA configuration from: /etc/openvpn/easy-rsa/vars
Using SSL: openssl OpenSSL 1.1.1f 31 Mar 2020
Generating an EC private key
writing new private key to '/etc/openvpn/easy-rsa/pki/easy-rsa-518695.BfRHNn/tmp.oqtQCZ'

Enter PEM pass phrase: YOUR_PASSWORD
Verifying - Enter PEM pass phrase: YOUR_PASSWORD

A senha da chave CA será solicitada novamente 2 vezes:

Note: using Easy-RSA configuration from: /etc/openvpn/easy-rsa/vars
Using SSL: openssl OpenSSL 1.1.1f 31 Mar 2020
-----
Using configuration from /etc/openvpn/easy-rsa/pki/easy-rsa-29461.xIY2Ma/tmp.yMZTgs
Enter pass phrase for /etc/openvpn/easy-rsa/pki/private/ca.key: YOUR_PASSWORD

...
...
...

Note: using Easy-RSA configuration from: /etc/openvpn/easy-rsa/vars
Using SSL: openssl OpenSSL 1.1.1f 31 Mar 2020
Using configuration from /etc/openvpn/easy-rsa/pki/easy-rsa-30750.RW0Ldf/tmp.qZYlkq
Enter pass phrase for /etc/openvpn/easy-rsa/pki/private/ca.key: YOUR_PASSWORD

A próxima etapa é muito importante para que a Dadosfera consiga alcançar as suas fontes de dados. Nessa etapa você deve informar quais são as rotas da sua rede privada que o OpenVPN deve entregar para a Dadosfera. O padrão é informar o IP e a Máscara da rede separados por ":". Caso tenha mais de uma rota, separe as mesmas com ",".

Exemplo: 10.0.1.200:255.255.255.255, 10.0.1.201:255.255.255.255

Você pode fornecer um range de IPS ou especificar apenas um IP utilizando a máscara "255.255.255.255".

ATENÇÃO: Não utilize a rota "0.0.0.0/0"! Essa rota vai fazer com que todo o tráfego dos nossos servidores passe pela sua VPN, o que pode ocasionar possíveis problemas e conflitos durante as coletas de dados. Além de possíveis custos adicionais na sua Cloud.

Tell me which routes OpenVPN should have access to (all routes from data sources that Dadosfera will need to connect to).
Example (You can release a range of IPS 10.0.0.0:255.255.0.0 or just the servers you want 10.0.1.200:255.255.255.255)
Enter the routes separated by commas.
Example: 10.0.1.200:255.255.255.255, 10.0.1.201:255.255.255.255
Routes: YOUR_ROUTES

Após configurar as rotas, pode ser solicitada uma Password para a Private Key. Informe a mesma senha escolhida para a chave .PEM.

Enter Private Key Password: YOUR_PASSWORD

Na etapa seguinte você deve informar se o arquivo. OVPN que será gerado para a Dadosfera exigirá uma autenticação por senha. Estamos preparados para nos conectarmos em VPNs que exigem usuário e senha, sendo necessário informar o usuário "dadosfera" e senha escolhida ao configurar uma conexão OpenVPN em na plataforma da Dadosfera.

Por padrão, nós não exigimos o uso de senha, porém fica a seu critério caso queira uma segurança adicional.

Caso tenha escolhido utilizar senha, algumas informações podem ser solicitadas, tais como a senha da chave .PEM e chave CA. Se escolheu não utilizar uma senha, somente a senha da chave CA será solicitada para geração do arquivo .OVPN.

Do you want to protect the configuration file with a password?
(e.g. encrypt the private key with a password)
1) Add a passwordless dadosfera client
2) Use a password for the dadosfera client
Select an option [1-2]: 1

Ao finalizar a configuração de usuário, você verá a seguinte mensagem:

Using configuration from /etc/openvpn/easy-rsa/pki/easy-rsa-30962.Nm8aa8/tmp.lofOKq
Enter pass phrase for /etc/openvpn/easy-rsa/pki/private/ca.key:
Check that the request matches the signature
Signature ok
The Subject's Distinguished Name is as follows
commonName :ASN.1 12:'dadosfera'
Certificate is to be certified until Oct 13 23:10:18 2024 GMT (825 days)

Write out database with 1 new entries
Data Base Updated

Client dadosfera added.

The configuration file has been written to /home/ubuntu/dadosfera.ovpn.
Download the .ovpn file and import it in your OpenVPN client.

Isso significa que o OpenVPN foi configurado com sucesso, e uma chave .OVPN foi gerada no caminho "/home/$USER/dadosfera.ovpn". Agora você pode copiar o conteúdo desse arquivo para a sua máquina. Pois o mesmo será necessário durante o cadastro de uma VPN na plataforma da Dadosfera.

INFORMAÇÕES ADICIONAIS:

Lembra-se de adicionar nas regras de segurança das suas fontes de dados privadas o IP interno do OpenVPN, para que seja possível acessá-las.

Por exemplo: Caso esteja utilizando AWS, você precisa adicionar no security group da sua fonte de dados uma regra para que a máquina do OpenVPN consiga alcançar a porta da sua fonte de dados.

Cadastrando sua OpenVPN através da interface

Com sua OpenVPN em mãos, ela poderá ser cadastrada na interface do Módulo de Coleta da Dadosfera. Basta ir em: Coletar > Gestão de conexões > Redes > Nova OpenVPN.

CampoDetalhes
NomeInsira um nome que seja um identificador fácil reconhecimento
DescriçãoForneça uma descrição detalhada, para uma fácil identificação dela por outros usuários
ArquivoSão aceitos apenas arquivos no formato .ovpn

É possível cadastrar quantas OpenVPNs desejar.

Através da sua AWS Private Link, será estabelecido uma conectividade privada entre nuvens privadas virtuais (VPCs) com serviços compatíveis da AWS sem expor o tráfego publicamente.

Através da sua Azure Private Link, será estabelecido uma conectividade privada entre nuvens privadas virtuais (VPCs) da Azure com a Dadosfera sem expor o tráfego publicamente.

SSH Tunnel

Caso possua um SSH Tunel, cadastre-o para estabelecer uma sessão de conexão entre a Dadosfera e seus dados através de um túnel criptografado via protocolo SSH.