Como criar uma conexão vpn client to site com OpenVPN

Para fazer uma conexão VPN precisamos instalar um servidor que habilite essa função.

Seguiremos os seguintes passos:

1 – Instalar um servidor centos ou redhat 8 dentro de sua área do cloud. Esse servidor já deverá estar com o IP Flutuante e com a porta de conexão do openvpn aberta no grupo de segurança.

Portas abertas no Grupo de Segurança:

Instalar pacote dnf

$ sudo yum install -y dnf

2 – Adicionar o repositório EPEL no servidor

$ sudo dnf install https://dl.fedoraproject.org/pub/epel/epel-release-latest-7.noarch.rpm

$ sudo dnf repolist epel
$ sudo dnf --disablerepo="*" --enablerepo="epel" list available

3 – Instalar o git

$ sudo dnf -y install git

4 – Clonar o repositório openvpn-install

$ cd ~
$ git clone https://github.com/Nyr/openvpn-install.git

5 -Rodar o Instalador OpenVPN

$ cd openvpn-install
$ chmod +x openvpn-install.sh
$ sudo ./openvpn-install.sh

Nesse ponto alguns dados deverão ser configurados:

        • Endereço IP interno
        • Endereço IP externo
        • Protocolo OpenVpn a ser utilizado
        • Porta OpenVpn
        • Servidor DNS
        • nome do primeiro cliente

A configuração principal é colocada em: /etc/openvpn/server.conf

Essa instalação gera uma outra interface de rede. Para ver rodar:

$ ip addr | grep tun0


6 – Após a instalação pode-se gerar as chaves para os usuários em um arquivo .ovpn

$ sudo ./openvpn-install.sh

Looks like OpenVPN is already installed.
 What do you want to do?
    1) Add a new user
    2) Revoke an existing user
    3) Remove OpenVPN
    4) Exit
 Select an option [1-4]: 1
 Tell me a name for the client certificate.
 Please, use one word only, no special characters.
 Client name: user1
 Using SSL: openssl OpenSSL 1.1.1 FIPS  11 Sep 2018
 Can't load /etc/openvpn/easy-rsa/pki/.rnd into RNG
 139966006863680:error:2406F079:random number generator:RAND_load_file:Cannot open file:crypto/rand/randfile.c:90:Filename=/etc/openvpn/easy-rsa/pki/.rnd
 Generating a RSA private key
 ……………………………………………………………………..+++++
 ……………………………………….+++++
 writing new private key to '/etc/openvpn/easy-rsa/pki/private/user1.key.SeCj8ncgaH'
 Using configuration from /etc/openvpn/easy-rsa/pki/safessl-easyrsa.cnf
 Can't load /etc/openvpn/easy-rsa/pki/.rnd into RNG
 139828629223232:error:2406F079:random number generator:RAND_load_file:Cannot open file:crypto/rand/randfile.c:90:Filename=/etc/openvpn/easy-rsa/pki/.rnd
 Check that the request matches the signature
 Signature ok
 The Subject's Distinguished Name is as follows
 commonName            :ASN.1 12:'user1'
 Certificate is to be certified until Mar 17 16:48:32 2029 GMT (3650 days)
 Write out database with 1 new entries
 Data Base Updated
 Client user1 added, configuration is available at: /root/user1.ovpn
$ sudo ls /root/ | grep ovpn
computingforgeeks.ovpn
user1.ovpn



 

Esse arquivo deve ser passado para o usuário para poder se conectar com o cliente openvpn.

O client deve ser baixado em:

https://openvpn.net/community-downloads/

Após instalar utilizar a chave para fazer a conexão remota.