Segurança e Preservação de Dados
Moodle/EaD
  • TEC.0700
  • Apresentação
    • ▶️Slides
    • 📖Programa da Disciplina
  • 1. Bimestre
    • ✔️1. Segurança da Informação: Visão Geral
      • ▶️Slides
      • 📽️Videoaulas
        • 1.1. Contextualização
        • 1.2. Princípios Básicos de Segurança da Informação
        • 1.3. As 5 dimensões da segurança URL
        • 1.4. Novos Princípios/Objetivos da Segurança da Informação
    • ✔️2. Incidentes de Segurança
      • ▶️Slides
      • 📽️Videoaulas
        • 2.1. Incidentes de Segurança: Ameaças x Vulnerabilidades x Riscos
        • 2.2. Incidentes de Segurança: Principais Tipos de Incidentes
        • 2.3. Identificação, combate e resposta a incidentes
    • ✔️3. Criptografia e Esteganografia
      • ▶️Slides
      • 📽️Videoaulas
        • 3.1. Criptografia
        • 3.2. Esteganografia
  • 2. Bimestre
    • ✔️4. Segurança em Ambiente de Rede
      • 💻Slides
        • ▶️4.1. Firewalls (Slides)
        • ▶️4.2. IDS (Slides)
        • ▶️4.3. VPNs (Slides)
      • 📔E-Books
        • 📖Firewalls no Linux
        • 📖IDS no Linux
        • 📖VPNs no Linux
      • 📽️Videoaulas
        • 4.1. Firewalls
      • 📖Roteiros (Práticas)
        • ✍️Atividade Prática 01
        • ✍️Atividade Prática 02
        • ✍️Atividade Prática 03
        • ✍️Atividade Prática 04
    • ✔️5. Análise de Vulnerabilidades de Segurança
      • 💻Slides
        • ▶️5. Análise de Vulnerabilidades de Segurança (Slides)
      • 📽️Videoaulas
        • 5.1. Análise de Vulnerabilidades - Visão Geral
        • 5.2. Análise de Vulnerabilidades x Pentests
        • 5.3. Pentests - Características
      • 📖Roteiros (Práticas)
        • ✍️Preparação do Ambiente (Docker / Docker-Compose)
        • ✍️Atividade Prática 01
      • 📖Roteiros (Avaliação)
        • ✍️Preparação do Ambiente (Docker / Docker-Compose)
        • ✍️Avaliação Prática 01
        • ✍️Avaliação Prática 02
Fornecido por GitBook

© 2025 - Ricardo Kléber

Nesta página
  • Redes Virtuais Privadas (VPNs) no Linux
  • Visão Geral
  • VPN no Linux (OpenVPN)
  • Instalação do OpenVPN no Linux
  • Geração de certificados e chaves
  • Configurando o Servidor
  • Configuração dos clientes
  1. 2. Bimestre
  2. 4. Segurança em Ambiente de Rede
  3. E-Books

VPNs no Linux

Atualizado há 3 meses

Redes Virtuais Privadas (VPNs) no Linux

Visão Geral

Uma VPN (Virtual Private Network) ou Rede Virtual Privada é uma ferramenta que cria uma conexão "tunelada" (geralmente criptografada) entre dois ou mais dispositivos em uma rede.

Ela funciona como um túnel virtual, permitindo, dentre outras opções, acesso a redes sem endereço IP público para conexão direta, proteção de dados em redes não confiáveis e navegação anônima (acesso à Internet usando um IP de um servidor VPN para evitar restrições, por exemplo).

VPN no Linux (OpenVPN)

Instalação do OpenVPN no Linux

apt install openvpn easy-rsa

Copie o Easy-RSA para um diretório adequado (/etc/openvpn por padrão)

cp -r /usr/share/easy-rsa/ /etc/openvpn/
cd /etc/openvpn/easy-rsa/

Edite o arquivo vars:

nano vars

Defina as seguintes variáveis, substituindo os valores pelos da empresa/instituição:

set_var EASY_RSA_LOCATION /etc/openvpn/easy-rsa
set_var KEY_COUNTRY "BR"
set_var KEY_PROVINCE "RN"
set_var KEY_CITY "Currais Novos"
set_var KEY_ORG "Empresa"
set_var KEY_EMAIL "email@exemplo.com"

Execute o script do Easy-RSA para iniciar a configuração:

./easyrsa init-pki

Geração de certificados e chaves

Gere a Autoridade Certificadora (CA):

./easyrsa build-ca nopass

Gere o certificado do servidor:

./easyrsa build-server-full server nopass

Gere os certificados e chaves para o(s) cliente(s):

./easyrsa build-client-full cliente1 nopass
./easyrsa build-client-full cliente2 nopass
(...)

Gere os parâmetros Diffie-Hellman:

./easyrsa gen-dh

Configurando o Servidor

Copie o arquivo de configuração de exemplo para o diretório padrão:

cp /usr/share/doc/openvpn/examples/sample-config-files/server.conf /etc/openvpn/

Edite o arquivo server.conf:

nano /etc/openvpn/server.conf

Configurações principais a serem mantidas/configuradas:

port 1194  # Porta UDP
proto udp  # Protocolo UDP
dev tun  # Interface de túnel
ca easy-rsa/pki/ca.crt  # Certificado da CA
cert easy-rsa/pki/issued/server.crt  # Certificado do servidor
key easy-rsa/pki/private/server.key  # Chave privada do servidor
dh easy-rsa/pki/dh.pem  # Parâmetros Diffie-Hellman
server 10.8.0.0 255.255.255.0  # Rede VPN
push "redirect-gateway def1 bypass-dhcp"  # Redireciona o tráfego do cliente
push "dhcp-option DNS 8.8.8.8"  # Define o servidor DNS
keepalive 10 120  # Mantém a conexão ativa
cipher AES-256-CBC  # Criptografia
user nobody  # Usuário para o OpenVPN
group nogroup  # Grupo para o OpenVPN
persist-key  # Mantém as chaves abertas
persist-tun  # Mantém a interface TUN aberta
status openvpn-status.log  # Arquivo de status
verb 3  # Nível de detalhes do log

Habilite o repasse de pacotes:

echo 1 > /proc/sys/net/ipv4/ip+forward

O ideal é fazer isso de forma definitiva alterando o valor da variável no arquivo /etc/sysctl.conf (como fizemos na configuração do firewall no Linux)

Inicie o servidor OpenVPN:

systemctl enable openvpn@server
systemctl start openvpn@server

Configuração dos clientes

Copie os arquivos necessários para o cliente:

ca.crt
client1.crt
client1.key
client.ovpn (arquivo de configuração do cliente que será criado a seguir)

Crie o arquivo client.ovpn:

Configurações principais a serem mantidas/configuradas:

client
dev tun
proto udp
remote <endereço_ip_do_servidor> 1194
resolv-retry infinite
nobind
persist-key
persist-tun
ca ca.crt
cert client1.crt
key client1.key
remote-cert-tls server
cipher AES-256-CBC
verb 3

O servidor VPN fica ativo aguardando conexões (como todo servidor) e o cliente deve ser executado todas as vezes que desejar "subir" a VPN.

✔️
📔
📖