- Entrou
- Fev 10, 2012
- Mensagens
- 4,160
- Gostos Recebidos
- 2
Uma rede privada virtual (VPN – Virtual Private Network ) garante a segurança das comunicações ponto a ponto, nomeadamente a privacidade, integridade e autenticidade dos dados. Para isso esta tecnologia faz a encriptação dos pacotes, garantindo que estes não sejam lidos por terceiros.
Hoje vamos ensinar como podem criar um servidor de VPNs no Ubuntu 15.04 usando o OpenVPN.
O OpenVPN é um software multi-plataforma que permite a criação de uma VPN entre várias máquinas com sistemas operativos diferentes. Para proceder à instalação e configuração do OpenVPN e OpenSSL (obrigatório para a criação de certificados para o serviço), devem seguir os seguintes passos:
Passo 1) Instalar o Openvpn e Openssl
Passo 2) Copiar configuração de exemplo
O OpenVPN traz já uma configuração exemplo para ser usada como base. Vamos copiar essa configuração para /etc/openvpn
Passo 3) Modificação do ficheiro de configuração do OpenVPN
Como resultado do passo anterior, passamos a ter em /etc/openvpn o ficheiro server.conf. Vamos editá-lo e incluir/alterar os seguintes parâmetros:
Passo 4) Cópia da estrutura easy-rsa
Após a instalação, é necessário gerar as chaves para o servidor e client. O openvpn traz já uma estrutura de exemplo, designada de easy-rsa, na qual podemos-nos basear para configurar a nossa VPN. Para isso, vamos usar essa estrutura em /etc/openvpn, copiando-a de /usr/share/easy-rsa.
Passo 5) Modificação do ficheiro “vars”
A ferramenta easy-rsa inclui o ficheiro “vars” que podemos editar e mudar alguns parâmetros definidos por omissão e que serão depois úteis na hora de criar os certificados. Para editar o ficheiro basta usar o comando:
Nota: Adaptem os dados ao vosso cenário. Estes parâmetros podem ser posteriormente modificados, aquando da criação dos certificados.
Vamos agora copiar o ficheiro /etc/openvpn/easy-rsa/openssl-1.0.0.cnf para /etc/openvpn/easy-rsa/openssl.cnf para que não haja problemas ao nível do OpenSSL
Passo 6) Criação da Autoridade de certificação (CA)
Basicamente basta introduzir os comandos seguinte e depois, de forma interativa, ir confirmando ou alterando as informações solicitadas.
Agora que temos a CA criada vamos criar o próprio certificado para o servidor OpenVPN.
É necessário também gerar a chave Diffie Hellman para a troca inicial segura (entre cliente e servidor) das chaves.
Por fim, para autenticar os clientes com base no certificado, é preciso criar um certificado por cada cliente. Para isso basta usar executar os seguintes comandos:
Configurações de Encaminhamento
De acordo com a configuração que temos no ficheiro server.conf, o endereço 10.8.0.1 vai ser atribuído ao túnel do lado do servidor enquanto os restantes IPs da rede 10.8.0.0 passarão a estar disponíveis para os clientes.
Vamos então criar uma regra NAT no iptables para que todos os pacotes com origem na rede 10.8.0.0/24 sejam encaminhados via eth0
E por fim vamos aplicar as configurações anteriores e iniciar o servidor OpenVPN
Se tudo correr bem, podemos ver se o túnel já está criado usando o comando
Com as configurações anteriores, criamos com sucesso a parte do servidor.
Num próximo tutorial iremos ensinar a configurar um cliente, de forma a podermos estabelecer ligação VPN a partir de qualquer lugar.
Estejam atentos, será em breve.
In
plware
Hoje vamos ensinar como podem criar um servidor de VPNs no Ubuntu 15.04 usando o OpenVPN.

O OpenVPN é um software multi-plataforma que permite a criação de uma VPN entre várias máquinas com sistemas operativos diferentes. Para proceder à instalação e configuração do OpenVPN e OpenSSL (obrigatório para a criação de certificados para o serviço), devem seguir os seguintes passos:
Passo 1) Instalar o Openvpn e Openssl
sudo apt-get install openvpn openssl |
Passo 2) Copiar configuração de exemplo
O OpenVPN traz já uma configuração exemplo para ser usada como base. Vamos copiar essa configuração para /etc/openvpn
cp /usr/share/doc/openvpn-*/sample/sample-config-files/server.conf /etc/openvpn |
Passo 3) Modificação do ficheiro de configuração do OpenVPN
Como resultado do passo anterior, passamos a ter em /etc/openvpn o ficheiro server.conf. Vamos editá-lo e incluir/alterar os seguintes parâmetros:
#Para encaminhar todo o trafego do cliente via VPN <push "redirect-gateway def1 bypass-dhcp" #Servidores de DNS a serem usados pelo cliente push "dhcp-option DNS 8.8.8.8" push "dhcp-option DNS 8.8.4.4" #Por questões de segurança, use o user e grupo nobody que têm poucas permissões user nobody group nobody |
Passo 4) Cópia da estrutura easy-rsa
Após a instalação, é necessário gerar as chaves para o servidor e client. O openvpn traz já uma estrutura de exemplo, designada de easy-rsa, na qual podemos-nos basear para configurar a nossa VPN. Para isso, vamos usar essa estrutura em /etc/openvpn, copiando-a de /usr/share/easy-rsa.
sudo cp -R /usr/share/easy-rsa /etc/openvpn cd /etc/openvpn/easy-rsa/ |
Passo 5) Modificação do ficheiro “vars”
A ferramenta easy-rsa inclui o ficheiro “vars” que podemos editar e mudar alguns parâmetros definidos por omissão e que serão depois úteis na hora de criar os certificados. Para editar o ficheiro basta usar o comando:
nano -w /etc/openvpn/easy-rsa/vars |
Nota: Adaptem os dados ao vosso cenário. Estes parâmetros podem ser posteriormente modificados, aquando da criação dos certificados.

Vamos agora copiar o ficheiro /etc/openvpn/easy-rsa/openssl-1.0.0.cnf para /etc/openvpn/easy-rsa/openssl.cnf para que não haja problemas ao nível do OpenSSL
cp /etc/openvpn/easy-rsa/openssl-1.0.0.cnf /etc/openvpn/easy-rsa/openssl.cnf |
Passo 6) Criação da Autoridade de certificação (CA)
Basicamente basta introduzir os comandos seguinte e depois, de forma interativa, ir confirmando ou alterando as informações solicitadas.
cd /etc/openvpn/easy-rsa source ./vars ./clean-all ./build-ca |

Agora que temos a CA criada vamos criar o próprio certificado para o servidor OpenVPN.
./build-key-server server |
É necessário também gerar a chave Diffie Hellman para a troca inicial segura (entre cliente e servidor) das chaves.
./build-dh cd /etc/openvpn/easy-rsa/keys cp dh1024.pem ca.crt server.crt server.key /etc/openvpn |
Por fim, para autenticar os clientes com base no certificado, é preciso criar um certificado por cada cliente. Para isso basta usar executar os seguintes comandos:
cd /etc/openvpn/easy-rsa ./build-key client |
Configurações de Encaminhamento
De acordo com a configuração que temos no ficheiro server.conf, o endereço 10.8.0.1 vai ser atribuído ao túnel do lado do servidor enquanto os restantes IPs da rede 10.8.0.0 passarão a estar disponíveis para os clientes.

Vamos então criar uma regra NAT no iptables para que todos os pacotes com origem na rede 10.8.0.0/24 sejam encaminhados via eth0
iptables -t nat -A POSTROUTING -s 10.8.0.0/24 -o eth0 -j MASQUERADE sudo apt-get install iptables-persistent Vamos agora <strong>activar o encaminhamento IP</strong> |
nano -w /etc/sysctl.conf net.ipv4.ip_forward = 1 |
E por fim vamos aplicar as configurações anteriores e iniciar o servidor OpenVPN
sysctl -p /etc/init.d/openvpn start |
Se tudo correr bem, podemos ver se o túnel já está criado usando o comando
ifconfig tun0 |

Com as configurações anteriores, criamos com sucesso a parte do servidor.
Num próximo tutorial iremos ensinar a configurar um cliente, de forma a podermos estabelecer ligação VPN a partir de qualquer lugar.
Estejam atentos, será em breve.
In