Blog.resende.biz

Como instalar um servidor de OpenVPN em Linux

Pedro Resende
Pedro Resende
OpenVPN Logo

Hoje, vou-vos ensinar a instalar um servidor de OpenVPN em Linux em poucos passos.

Vamos começar por actualizar a base de dados dos pacotes, através do seguinte comando:

apt-get update

Uma vez actualizada a lista, vamos então proceder a instalação propriamente dita. Vamos então digitar o seguinte comando:

apt-get install openvpn openssl

Uma vez instalado, vamos proceder à configuração do mesmo


# <em>cp -r /usr/share/doc/openvpn/examples/easy-rsa/2.0 ./easy-rsa

# vi easy-rsa/vars

Substituam o conteúdo da linha 16

export EASY_RSA="`pwd`"

por 

export EASY_RSA="/etc/openvpn/easy-rsa"

para isso, necessitam carregar na tecla "i" para poderem começar a introduzir texto.

Uma vez alterado, primam a seguinte sequência para salvar o conteúdo e sair "ESC" e depois :wq"

Vamos agora definir a origem dos conteúdos

. ./easy-rsa/vars

vamos então limpar

./easy-rsa/clean-all

Vamos agora fazer um symlink 

ln -s openssl-1.0.0.cnf openssl.cnf

Para gerarmos os certificados de segurança é então e necessário

cd ..

# ./easy-rsa/build-ca OpenVPN

# ./easy-rsa/build-key-server server

# ./easy-rsa/build-key client1

Por fim,

./easy-rsa/build-dh

Vamos então especificar as configurações dentro do openvpn.conf

vi openvpn.conf

em que o conteúdo é

proto udp
port 1194
ca /etc/openvpn/easy-rsa/keys/ca.crt
cert /etc/openvpn/easy-rsa/keys/server.crt
key /etc/openvpn/easy-rsa/keys/server.key
dh /etc/openvpn/easy-rsa/keys/dh1024.pem
user nobody
group nogroup
server 10.8.0.0 255.255.255.0
persist-key
persist-tun
status /var/log/openvpn-status.log
verb 3
client-to-client
push “redirect-gateway def1"
#set the dns servers
push “dhcp-option DNS 8.8.8.8"
push “dhcp-option DNS 8.8.4.4"
log-append /var/log/openvpn
comp-lzo

Vamos activar o redireccionamento

echo 1 > /proc/sys/net/ipv4/ip_forward

Por fim iniciamos o serviço

service openvpn start

Falta-nos apenas a configuração para o cliente ligacao.openvpn

vi ligacao.openvpn

com o conteúdo

dev tun
client
proto udp
remote <strong>IP_DO_SERVIDOR</strong> 1194
resolv-retry infinite
nobind
persist-key
persist-tun
ca ca.crt
cert client1.crt
key client1.key
comp-lzo
verb 3

Não se esqueçam de mudar o IP_DO_SERVIDOR, pelo ip ou pelo domínio do mesmo.

Copiem os certificados que estão em /etc/openvpn/easy-rsa/keys.

Para o cliente necessitam apenas de usar os seguintes ficheiros:

  • ca.crt;
  • client1.crt;
  • client1.key e 
  • ligacao.openvpn.

Para estabelecerem a ligação a partir do cliente basta correrem

openvpn ligação.openvpn

E pronto, já têm o servidor VPN, usando o OpenVPN, a funcionar.