Como instalar e configurar o OpenVPN no Debian

O OpenVPN é, sem dúvida, a melhor maneira de se conectar com segurança a uma rede pela Internet, OpenVPN é um recurso VPN de código aberto que nos permite, como usuários, mascarar nossa navegação para evitar ser vítimas na rede.

São aspectos muito importantes ao nível da segurança que devemos ter em consideração e desta vez vamos analisar o processo de Configuração OpenVPN em um ambiente Debian 8.

ObservaçãoAntes de iniciar o processo de instalação, é importante atender a certos requisitos, estes são:

  • Usuário root.
  • Droplet Debian 8, atualmente temos o Debian 8.1

1. Como instalar o OpenVPN


O primeiro passo que daremos é atualizar todos os pacotes do ambiente usando o comando:
 apt-get update

Assim que os pacotes forem baixados e atualizados vamos instalar o OpenVPN usando easy-RSA para problemas de criptografia. Vamos executar o seguinte comando:

 apt-get install openvpn easy-rsa

A seguir devemos configurar nosso OpenVPN, os arquivos de configuração do OpenVPN são armazenados no seguinte caminho: / etc / openvpn e devemos adicioná-los à nossa configuração, usaremos o seguinte comando:

 gunzip -c /usr/share/doc/openvpn/examples/sample-config-files/server.conf.gz> /etc/openvpn/server.conf
Uma vez extraídos esses arquivos no caminho selecionado, vamos abri-los usando o editor nano, vamos executar o seguinte comando:
 nano /etc/openvpn/server.conf
Veremos a seguinte janela:

Quando estivermos lá devemos fazer algumas modificações no arquivo, essas mudanças são basicamente:

  • Protegendo o servidor com criptografia de alto nível
  • Permitir o tráfego da web para o destino
  • Impedir que solicitações de DNS sejam filtradas fora da conexão VPN
  • Permissões de instalação

Vamos a o dobro do comprimento da chave RSA que é usado quando as chaves do servidor e do cliente são geradas, para isso vamos pesquisar no arquivo os seguintes valores e vamos modificar o valor dh1024.pem pelo valor dh2048.pem:

 # Parâmetros Diffie hellman. # Gere o seu próprio com: # openssl dhparam -out dh1024.pem 1024 # Substitua 2048 por 1024 se estiver usando chaves de # 2048 bits. dh dh1024.pem

Agora vamos certifique-se de que o tráfego seja redirecionado corretamente para o destino, vamos remover o comentário de push "redirect-gateway def1 bypass-dhcp" removendo o; no início dele. no arquivo server.conf:

 # Se habilitado, esta diretiva irá configurar # todos os clientes para redirecionar seu # gateway de rede padrão através da VPN, fazendo com que # todo o tráfego IP, como navegação na web e # e pesquisas de DNS passem pelo VPN # (A máquina do servidor OpenVPN pode precisar NAT # ou conecte a interface TUN / TAP à Internet # em ***** para que funcione corretamente).; pressione "redirect-gateway def1 bypass-dhcp"

O próximo passo será diga ao servidor para usar OpenDNS para resolução de nomes DNS Desde que seja possível, evitando assim que as solicitações de DNS fiquem fora da conexão VPN, devemos localizar o seguinte texto em nosso arquivo:

 # Certas configurações de rede específicas do Windows # podem ser enviadas para clientes, como DNS # ou endereços de servidor WINS. CAVEAT: # http://openvpn.net/faq.html#dhcpcaveats # Os endereços abaixo referem-se aos # servidores DNS públicos fornecidos por opendns.com.; push "dhcp-option DNS 208.67.222.222"; push "dhcp-option DNS 208.67.220.220"
Devemos desmarcar o push "dhcp-option DNS 208.67.222.222" e empurrar os comentários "dhcp-option DNS 208.67.220.220" removendo o; do começo.

Finalmente vamos definir permissões No mesmo arquivo em que estamos trabalhando, colocamos o seguinte texto:

 # Você pode descomentar isto em # sistemas não Windows.; usuário ninguém; grupo nogroup
Prosseguimos para desmarcar remover o sinal; desde o início dos textos usuário ninguém Y grupo nogrupo.

Como sabemos, o OpenVPN é executado por padrão como usuário root permitindo a edição de qualquer parâmetro, com a última alteração vamos limitá-lo ao usuário nobody e ao grupo nogroup por razões de segurança.
Salvamos as alterações usando a combinação de teclas:

Ctrl + O

E deixamos o editor usando:

Ctrl + X

Agora vamos habilitar o encaminhamento de pacotes para a rede externa, para isso vamos executar o seguinte comando:

 echo 1> / proc / sys / net / ipv4 / ip_forward
Devemos tornar esta mudança permanente, não que tenhamos que fazer isso toda vez que iniciarmos o Sistema, para torná-lo contínuo vamos entrar no arquivo systcl usando o editor nano, para isso vamos executar o seguinte:
 nano /etc/sysctl.conf
A seguinte janela será exibida:

Vamos localizar a seguinte linha:

 # Remova o comentário da próxima linha para habilitar o encaminhamento de pacotes para IPv4 # net.ipv4.ip_forward = 1
ObservaçãoLembre-se de que podemos usar a pesquisa do editor usando a combinação de teclas:

Ctrl + W

Lá iremos desmarcar o comentário net.ipv4.ip_forward = 1 removendo o símbolo #.

O próximo passo que devemos dar é configurar UFW. UFW é uma configuração de firewall para tabelas de ip, portanto, faremos alguns ajustes para alterar a segurança do UFW. Como primeira etapa, instalaremos os pacotes UFW usando o seguinte comando:

 apt-get install ufw

Uma vez que os pacotes UFW necessários tenham sido baixados e instalados, vamos configurar o UFW para permitir conexões SSH, para isso executaremos o seguinte:

 ufw permitir ssh

No nosso caso estamos trabalhando na porta 1194 do UDP, devemos configurar esta porta para que a comunicação seja satisfatória, entraremos no seguinte:

 ufw permitir 1194 / udp
ObservaçãoPodemos ver as portas do nosso console usando o comando lsof -iUDP

A seguir vamos editar o arquivo de configuração UFW para isso entraremos com o editor nano no seguinte caminho:

 nano / etc / default / ufw
A seguinte janela será aberta:

Lá vamos fazer algumas alterações, vamos localizar a seguinte linha, onde vamos mudar DROP para ACCEPT.

 DEFAULT_FORWARD_POLICY = "DROP"
O próximo passo é adicionar algumas regras em UFW para a tradução dos endereços de rede e o mascaramento correto dos endereços IP de usuários que se conectam. Vamos abrir o seguinte arquivo usando o editor nano:
 nano /etc/ufw/before.rules
Veremos que a seguinte janela é exibida:

Vamos adicionar o seguinte texto:

 # START OPENVPN RULES # NAT table rules * nat: POSTROUTING ACCEPT [0: 0] # Permitir tráfego do cliente OpenVPN para eth0 -A POSTROUTING -s 10.8.0.0/8 -o eth0 -j MASQUERADE COMMIT # END OPENVPN RULES

Depois de fazer essas alterações, prosseguiremos para habilitar UFW usando o seguinte comando:

 ufw enable

Para verificar as regras do firewalEu uso o seguinte comando:

 ufw status 

2. Criar certificado de autoridade OpenVPN


A próxima etapa em nosso processo é crie o certificado de autoridade para login via OpenVPNVamos lembrar que o OpenVPN usa esses certificados para criptografar o tráfego. O OpenVPN suporta certificação bidirecional, ou seja, o cliente deve autenticar o certificado do servidor e vice-versa.
Vamos copiar os scripts por RSA fácil usando o seguinte comando:
 cp -r / usr / share / easy-rsa / / etc / openvpn
Vamos a crie um diretório para armazenar as chaves, usaremos o seguinte comando:
 mkdir / etc / openvpn / easy-rsa / keys
O próximo passo é editar parâmetros de certificado, usaremos o seguinte comando:
 nano / etc / openvpn / easy-rsa / vars
A seguinte janela será exibida:

Vamos modificar os seguintes parâmetros de acordo com nossos requisitos:

 export KEY_COUNTRY = "CO" export KEY_PROVINCE = "BO" export KEY_CITY = "Bogota" export KEY_ORG = "Solvético" export KEY_EMAIL = "[email protected]" export KEY_OU = "Solvético"

No mesmo arquivo, vamos editar a seguinte linha:

 # X509 Assunto Field export KEY_NAME = "EasyRSA"
Vamos a mude o valor EasyRSA para o nome do servidor que você deseja, usaremos o nome Solvetic.

Agora vamos configurar parâmetros Diffie-Helman usando uma ferramenta que vem integrada com o OpenSSL, chamada dhparam. Vamos inserir e executar o seguinte comando:

 openssl dhparam -out /etc/openvpn/dh2048.pem 2048

Assim que o certificado for gerado, iremos alterar o diretório Easy-RSA usando o comando:

 cd / etc / openvpn / easy-rsa
Vamos a inicializar a PKI, usaremos o comando:
… / Vars

Vamos a limpe as outras chaves para que não interfiram na instalação usando o comando:

 ./limpar tudo
Agora vamos construir o certificado usando o seguinte comando OpenSSL:
 ./build-ca

Poderemos ver uma série de perguntas que estão relacionadas com as informações inseridas anteriormente, desta forma o certificado foi gerado. Em seguida, vamos iniciar nosso servidor OpenVPN, para este Vamos editar o arquivo localizado no caminho / etc / openvpn / easy-rsa usando o nome de chave especificado anteriormente, no nosso caso, Solvetic. Vamos executar o seguinte comando:

 ./build-key-server Solvetic

Nas linhas abaixo, podemos deixar o espaço em branco e pressionar Enter:

 Insira os seguintes atributos 'extras' a serem enviados com sua solicitação de certificado Uma senha de desafio []: Um nome de empresa opcional []:
Será exibida a seguinte janela onde devemos inserir a letra y (sim) para aceitar as seguintes duas questões: Assinar o certificado e solicitar os certificados.

Agora vamos mova os certificados e as chaves para o caminho / etc / openvpn, vamos executar o seguinte comando:

 cp /etc/openvpn/easy-rsa/keys/[Solvetic.crt,Solvetic.key,ca.crt} / etc / openvpn
Assim que este processo for concluído, iremos iniciar o serviço OpenVPN usando o comando:
 serviço openvpn start
Para veja o status vamos usar o comando:
 status do serviço oopenvpn

Nossa próxima etapa será criar os certificados e as chaves para os clientes que desejam se conectar à VPN. Idealmente, por segurança, cada cliente que se conecta ao servidor tem seu próprio certificado e chave, nunca compartilhe, por padrão o OpenVPN não permite conexões simultâneas com o mesmo certificado e chave. Vamos criar a chave para o nosso cliente, para isso digitaremos o seguinte comando:

 ./build-key Client_Name, em nosso exemplo vamos usar o seguinte comando: ./build-key Tests

Preenchemos os campos obrigatórios e então iremos copie a chave gerada para o diretório easy-RSA.

 cp /usr/share/doc/openvpn/examples/sample-config-files/client.conf /etc/openvpn/easy-rsa/keys/client.ovpn.
Agora vamos baixe a ferramenta Winscp gratuitamente no link abaixo. Esta ferramenta nos permitirá conectar via SFTP ou FTP à nossa máquina Debian para verificar se os arquivos foram criados corretamente. Depois de baixá-lo e executá-lo, esta será a janela que podemos ver:

Lá inserimos o endereço IP da máquina Debian lembre-se que o IP pode ser validado usando o comando ifconfig, inserimos as credenciais e assim que clicamos em Connect podemos ver o seguinte:

PROLONGAR

Lá podemos ver do lado direito os respectivos arquivos das chaves e chaves. Para acessar via OpenVPN vamos baixar a ferramenta no seguinte link OpenVPN versão 2.3.11. Depois de baixá-lo, devemos levar em conta que fizemos algumas alterações na referida ferramenta, a primeira coisa que vamos fazer é copiar os arquivos-chave e as chaves no caminho onde o OpenVPN é comumente instalado:

 C: \ Arquivos de programas \ OpenVPN \ config
Posteriormente iremos criar um arquivo no notepad ou no editor de texto que temos com as seguintes informações:
 client dev tun proto udp remote 192.168.0.12 1194 key client.key cert client.crt ca.crt auth-user-pass persist-key persist-tun comp-lzo verbo 3
ObservaçãoO IP é o da nossa máquina Debian e a porta, como vimos anteriormente, é UDP 1194.
Este arquivo deve ser salvo com a extensão .ovpn.

3. Teste de acesso do cliente OpenVPN


Vamos executar OPenVPN e este será o ambiente em que nos encontraremos:

Nós inserimos as credenciais do usuário para conectar e clicar em OK e podemos ver o seguinte

NotaEstamos fazendo essa conexão de um computador com Windows 7.

Agora podemos ver na barra de notificação que a conexão foi bem-sucedida e podemos ver o novo endereço IP.

Se clicarmos com o botão direito na ferramenta (ícone na barra de notificação), temos as seguintes opções:

A partir daqui podemos realizar as tarefas que consideramos necessárias. Por exemplo sim selecionamos Mostrar status veremos o seguinte:

4. Ferramentas de segurança OpenVPN ']


Não há dúvida de que o A navegação na Internet pode levar a problemas de segurança como vírus, roubo de informação, spyware, etc., por isso existem algumas ferramentas que podemos implementar para melhorar a segurança da nossa máquina assim que o OpenVPN.

Vamos falar sobre Clamav que é um poderoso antivírus que nos ajudará a manter o controle sobre os arquivos ou processos infectados em nosso Debian 8.1. É um software de código aberto que nos permite detectar cavalos de Tróia, malware e outras ameaças latentes em nossos computadores. O processo de instalação é muito simples, para isso executaremos o seguinte comando:

 Sudo apt-get install clamav

Mais tarde iremos executar Freshclam para que todo o banco de dados do Clamav seja atualizado.
Para executar uma verificação na máquina, inseriremos a seguinte sintaxe:

 Clamscan -infected -remove -recursive / home
Depois de um momento, veremos um resumo da tarefa de verificação:

Outra ferramenta que podemos usar para melhorar nossa segurança é Privoxy que funciona como um proxy web e inclui funções avançadas para proteger a privacidade, gerenciar cookies, controlar o acesso, remover anúncios, entre outros. Para instalá-lo em nosso sistema Debian 8.1, executaremos o seguinte comando:

 Sudo apt-get install privoxy

Lembre-se de que, se somos usuários root, o sudo não é necessário. Uma vez que todos os pacotes Privoxy tenham sido baixados e instalados, vamos modificar alguns parâmetros em seu arquivo de configuração, para isso executaremos o seguinte comando:

 Sudo nano / etc / privoxy / config
O seguinte será exibido:

Lá devemos localizar a linha endereço de escuta localhost: 8118 e devemos adicionar 2 parâmetros, primeiro adicione o símbolo # no início desta linha e insira abaixo dele o termo endereço de escuta ip_da_máquina: 8118, no nosso caso é:

 endereço de escuta 192.168.0.10:8118.
Feito isso, reiniciaremos o serviço usando:
 sudo /etc/init.d/privoxy restart

Em seguida, vamos ao navegador que temos no Debian e procedemos à modificação dos parâmetros do Proxy, devemos confirmar que o IP é o que adicionamos e a porta é 8118. Em nosso exemplo usamos IceWeasel e devemos inserir:

  • preferências
  • Avançado
  • Internet
  • Configuração de conexão
  • Configuração manual de proxy

Uma vez configurado, clique em OK. Agora podemos ver como Privoxy nos ajuda com segurança:

Existem outras ferramentas que podem nos ajudar a melhorar a navegação usando nosso OpenVPN, podemos implementar:

DnsmasqEle nos fornece serviços DNS desta forma, usamos apenas o cache DNS.

HAVPCom esta ferramenta temos um proxy com antivírus, que faz a varredura de todo o tráfego em busca de vírus ou algum comportamento estranho.

Como podemos ver, é muito importante tomar medidas que nos ajudem a manter o controle sobre nossa navegação e que fique bem claro que o correto funcionamento do Debian 8.1

Vamos continuar explorando todos os grandes benefícios que o Debian 8.1 nos oferece e melhorar nosso ambiente já que muitos de nós somos administradores, coordenadores ou responsáveis ​​pela área de TI e essas dicas nos ajudam a lidar com o dia a dia com mais facilidade e com as possibilidades não ter problemas críticos no futuro que podem ser uma grande dor de cabeça.

Instale o LAMP no Debian 8

wave wave wave wave wave