Criptografe seu tráfego DNS com DNSCrypt Proxy no Ubuntu e navegue com mais segurança

Internet segura

DNSCrypt Proxy é um aplicativo de código aberto que visa criptografar o tráfego DNS de nossa conexão para navegar com maior segurança. O programa criptografa as solicitações de DNS localmente e essas são descriptografadas pelo provedor de DNS, para que qualquer pessoa que tente interceptá-las ao longo do caminho (por exemplo, para realizar um atacar homem no meio) terá muita dificuldade em obtê-lo.

Atualmente, há um bom número de Provedores de DNS suportados por DNSCrypt Proxy, e sendo um software livre, qualquer pessoa com conhecimento suficiente pode configurar seu próprio servidor DNS e configurá-lo com o programa. No entanto, por padrão, ele já está pré-configurado para uso com OpenDNS.

Neste post vou mostrar a instalação mais simples e básica no caso de Ubuntu e derivados. Quem quiser uma configuração mais avançada pode consultar o página do projeto y seu repositório no GitHub.

instalação

Começamos instalando o pacote DNSCrypt Proxy do Repositório PPA mantido por Sergey «Shnatsel» Davidoff:

sudo add-apt-repository ppa:shnatsel/dnscrypt
sudo apt-get update
sudo apt-get install dnscrypt-proxy

Com isso já está instalado e funcionando, agora só podemos dizer ao sistema para usá-lo. Para isso temos dois métodos, o primeiro por console e o segundo em modo gráfico, escolha o que mais gosta:

Método 1

Desativamos o DNS que está sendo usado:

sudo unlink /etc/resolv.conf

Criamos um novo arquivo /etc/resolv.conf com um editor de texto:

sudo gedit /etc/resolv.conf

E colamos esta linha para passar o tráfego DNS por DNSCrypt:

nameserver 127.0.0.1

Agora protegemos o arquivo para evitar Network Manager modifique-o:

sudo chattr +i /etc/resolv.conf

Para modificá-lo novamente mais tarde, você deve primeiro remover a proteção com este comando:

sudo chattr -i /etc/resolv.conf

Então, eles podem voltar a protegê-lo ou não, dependendo do que eles querem fazer.

Salvamos as alterações e fechamos o editor.

Método 2

Clicamos no ícone de rede em nosso painel e pressionamos Editar conexões. Agora selecionamos a conexão que temos ativa e clicamos em Editar. Na janela que se abre, vamos para a guia Configurações IPv4 e veremos algo assim:

Gerenciador de rede DNSCrypt Proxy

Configuramos as opções como vistas lá, selecionando em Método "Somente endereços automáticos (DHCP)" e em servidores DNS colocação 127.0.0.1

Ativação

Se você usou o Método 1 como Método 2, a próxima etapa é reiniciar Network Manager:

sudo service network-manager restart

Veremos que a conexão é cortada e reiniciada. Se tudo tiver corrido bem, já estará funcionando DNSCrypt Proxy. Para verificar, vamos esta página, e se o resultado for positivo, você nos receberá para OpenDNS:

Bem-vindo ao OpenDNS

Caso contrário, receberemos uma mensagem de erro dizendo "Ops" ou não carregará nenhuma página. Para resolver, simplesmente trocamos o servidor 127.0.0.1 por 127.0.0.2 (ou algum outro) e reiniciamos novamente Network Manager.

Apenas para Ubuntu 14.04

O mantenedor do PPA avisa que existe um bug no Ubuntu 14.04 que evita desligar o equipamento quando DNSCrypt Proxy está funcionando. Isso indica que você está trabalhando em um patch para resolvê-lo, mas enquanto isso, ele pode ser corrigido executando estes comandos:

sudo apt-get install apparmor-utils
sudo aa-complain /etc/apparmor.d/usr.sbin.dnscrypt-proxy

Desinstalar

Se mais tarde quisermos parar de usar DNSCrypt ProxyEm primeiro lugar, você terá que restaurar as opções de conexão para como eram no início.

Se você usou o Método 1 seria remover a proteção do arquivo e, em seguida, reativar o DNS antigo com este comando:

sudo rm /etc/resolv.conf && sudo ln -s /run/resolvconf/resolv.conf /etc/resolv.conf

Se você usou o Método 2, seria abrir o menu de configuração de rede novamente e em Método selecione "Automático (DHCP)".

Em qualquer caso, você terá que reiniciar mais tarde Network Manager com o comando mencionado e, finalmente, desinstale DNSCrypt Proxy desta forma:

sudo apt-get autoremove --purge dnscrypt-proxy

Não se esqueça de remover também o PPA acessando Centro de software> Editar> Outro software.


Deixe um comentário

Seu endereço de email não será publicado. Campos obrigatórios são marcados com *

*

*

  1. Responsável pelos dados: Miguel Ángel Gatón
  2. Finalidade dos dados: Controle de SPAM, gerenciamento de comentários.
  3. Legitimação: Seu consentimento
  4. Comunicação de dados: Os dados não serão comunicados a terceiros, exceto por obrigação legal.
  5. Armazenamento de dados: banco de dados hospedado pela Occentus Networks (UE)
  6. Direitos: A qualquer momento você pode limitar, recuperar e excluir suas informações.

  1.   DAVID HENRIQUE dito

    Aplica-se também para o Opensuse poderia publicar mais informações sobre esta distro

    1.    Manuel da Fonte dito

      Em termos gerais, é um método [quase] genérico que se aplica a [quase] qualquer distribuição (método 2 para aqueles que usam o Network Manager), mas obviamente os repositórios mudam e algumas coisas como iniciar e reiniciar serviços.

  2.   Ossos dito

    lembranças
    1. o primeiro comentário é invisível ou algo assim porque a contagem começa em 2
    2. Eu vi no perseos blog, mas uma compilação pura e, aliás, o artigo não é mais

    1.    Manuel da Fonte dito

      1. O primeiro comentário é um pingback.
      2. Eu também o tinha visto no blog do Perseus há muito tempo, mas agora ele parece estar fazendo manutenção e excluiu todas as suas entradas.

  3.   Jorgício dito

    Eu apenas tentei, mas sem sucesso.

    Eu fiz o que este tutorial dizia, e depois fiquei sem internet, então voltei para o DNS que tinha antes e estava tudo bem.

    Você errou um passo, por acaso? Porque eu não consigo entender como eu poderia ter ficado sem internet se seguisse este tutorial à risca.

    Obrigado.

    1.    Jorgício dito

      Eu respondi: estava usando DNSmasq e precisava fazer um pouco mais de configuração. No final eu apaguei e segui esse tutorial novamente e tudo OK. Obrigado 😀

      1.    Manuel da Fonte dito

        Estou feliz que você conseguiu consertar isso. 🙂

      2.    mausmann dito

        Olá! Você sabe que eu não consigo fazer isso andar Como isso vem do DNSmasq?

  4.   gaston dito

    Se eu estiver atrás de um proxy, isso funciona?

    1.    Jorgício dito

      Tecnicamente, deve funcionar.

      Estou usando o Privoxy e suas configurações para bloquear anúncios e, ao mesmo tempo, uso o proxy DNScrypt e não tive nenhum drama. Talvez seja porque existem 2 proxies para fins diferentes, um para DNS e outro para navegar na web.

  5.   rawBasic dito

    Ótimo! .. .. a verdade é que eu não conhecia o método .. ..super fácil de configurar no ArchLinux também .. .. obrigado ..

    1.    Manuel da Fonte dito

      Isso mesmo, o Arch também é muito fácil; Não incluí aqui porque não tenho as etapas atualizadas, mas a última vez que usei lá foi:

      # pacman -S dnscrypt-proxy
      # systemctl enable dnscrypt-proxy
      # systemctl start dnscrypt-proxy

      E o resto foi igual ao tutorial.

      EDITAR: As instruções completas estão aqui: Instale DNSCrypt Proxy no Arch Linux

      1.    Mahdzu dito

        Desculpe, mas não consigo fazer no Arch ... Eu instalo, habilito, inicio, uso o passo 2 e reinicio o Network Manager e sempre recebo a mensagem: OPPSS ... O que poderia ser?

      2.    Mahdzu dito

        Ele respondeu: Eu uso o método 1 e funciona para mim. Obrigado!

        1.    Manuel da Fonte dito

          Eu coloquei aqui as instruções para fazer isso no Arch Linux: https://blog.desdelinux.net/instalar-dnscrypt-proxy-en-arch-linux/

  6.   Luis dito

    Parece bom, embora eu não tenha experimentado ainda.

    Esse tipo de coisa afeta a velocidade da conexão? Ele fica mais lento?

    Obrigado.

    1.    Manuel da Fonte dito

      Pelo contrário, torna-se mais rápido porque você começa a usar o OpenDNS DNS, que tem uma velocidade de resposta muito maior do que a do seu ISP. Além disso, você se beneficia de outros atributos do OpenDNS, como proteção contra phishing e assim por diante. 😉

      1.    Luis dito

        Ok

        Até agora usei os servidores do Google, não sei o quão seguros são, mas são rápidos.

        1.    Manuel da Fonte dito

          Sim, também os usei, embora goste mais dos OpenDNS porque me dá a sensação de que são mais rápidos e geram menos erros; Embora sejam apenas impressões minhas, não fiz testes nem nada para verificar. 😛

      2.    Luis dito

        É verdade, testei no meu outro computador e "parece" que anda mais rápido.

        Uma coisa que não entendo:

        Por que você tem que instalar o dnscrypt-proxy? Quer dizer, não seria suficiente mudar o DNS que temos em nossa configuração de rede para OpenDNS DNS?

        Isso é o que eu faço para usar o DNS do Google: eu simplesmente altero essa informação na configuração do computador, não preciso instalar nada nem preciso executar outro daemon ...

        É a única desvantagem que vejo.

        1.    Manuel da Fonte dito

          No OpenDNS também pode ser feito assim, mas o que descrevo não é o mesmo. Ao configurar o DNS desta forma, as consultas são feitas de forma simples, sem qualquer tipo de criptografia ou segurança. Com isso, você adiciona criptografia e autenticação. Ou seja, com DNSCrypt Proxy você está usando OpenDNS DNS Y tecnologia de criptografia, ambos, não apenas o primeiro.

      3.    Luis dito

        Eu entendo, obrigado pela sua resposta.

        Na internet eles recomendam o uso de Unbound junto com dnscrypt mas eu não sei bem o que esse programa faz.

        O que você pode me contar?

        1.    Manuel da Fonte dito

          Pelo que entendi, é um servidor DNS que você instala localmente; Teoricamente, deveria aumentar sua velocidade ainda mais porque gera um cache e o DNSCrypt faz as requisições lá ao invés de enviá-las para OpenDNS, mas fora isso não investiguei muito para ver exatamente em que consiste o processo.

      4.    Luis dito

        Ok, obrigado pela informação.

  7.   elav. dito

    Hmm, eu duvido que isso funcione em uma empresa onde servidores DNS e Proxy locais são usados. De qualquer forma, tentarei ver como.

  8.   Manu lopez dito

    Ótimo, trabalhando 100%.

  9.   Fantasma dito

    Funcionou para mim! : ') Muito obrigado a muito tempo atrás estava procurando como usar um proxy ou vpn (gratuito) Ainda falta o vpn que não consegui encontrar um que pudesse instalar no meu ubuntu.

    1.    Manuel da Fonte dito

      Não sei por que você estava procurando um proxy, mas se fosse para mudar seu IP, isso não vai funcionar para você, pois ele só se encarrega de criptografar as solicitações entre sua máquina e o provedor de DNS. Seu IP permanece o mesmo e em relação aos servidores tudo permanece o mesmo.

      1.    Fantasma dito

        Se percebi depois de fazer o teste, é mudar o endereço IP, com criptografia já é um avanço na busca por segurança. Você conhece algum post em um blog onde seja explicado mais ou menos de forma simples como usar um VPN no Ubuntu? Pelo que li e pude ver que existe um erro que impede o upload do arquivo que contém a configuração já feita então as coisas ficam um pouco mais complicadas, eu não poderia usar um. Quando estava usando windows tinha um chamado hotspotshield e que não tem suporte para linux ou pelo menos não sei como usá-lo aqui. Agradeço as respostas a quem puder e quiser me ajudar.

    2.    Keiller dito

      Para usar uma VPN no Ubuntu você pode usar OpenVPN no Network Manager ou no terminal simplesmente digitando "openvpn –config file", onde file é o arquivo de configuração que seu provedor irá fornecer, ele também pedirá o usuário e senha entrar. Por exemplo, existe o serviço vpnbook gratuito. Claro, você deve instalar o openvpn primeiro, se não o tiver instalado.
      Saudações.

      1.    Fantasma dito

        Obrigado Keiller. Desinstale o DNSCrypt Proxy como diz o post, baixei o openvpn, os arquivos de configuração e entrei no terminal com o comando config, coloquei o nome de usuário e a senha e me deu este erro: ERRO: Impossível ioctl TUNSETIFF tun1: Operação não permitida (errno = 1); Saindo devido a um erro fatal
        Você sabe o que posso fazer a respeito?

  10.   f dito

    nameserver 127.0.0.1 É deixado assim, é apenas copiado e colado

    Não me diz que não posso usar: C

    1.    Manuel da Fonte dito

      Leia bem as instruções:

      Caso contrário, receberemos uma mensagem de erro dizendo "Ops" ou não carregará nenhuma página. Para resolver isso, simplesmente alteramos o servidor 127.0.0.1 para 127.0.0.2 (ou algum outro) e reinicie o Network Manager novamente.

      Provavelmente é melhor fazê-lo pelo Método 2.

  11.   pimenta dito

    Isso evita que meu e-mail seja hackeado em um wi-fi público?

    1.    Manuel da Fonte dito

      Ajuda você contra ataques man-in-the-middle, mas a melhor proteção para Wi-Fi público é uma VPN.

    2.    pimenta dito

      Muito Obrigado

    3.    Proxies Privados dito

      A solução para isso é navegar com proxies privados e anônimos, que não guardam logs de usuários e, se possível, de uso dedicado.

      São baratos e você garante a total privacidade de sua navegação.

      A Salute.

  12.   Bart dito

    Não funciona com VPN. Uma pena.

    1.    Manuel da Fonte dito

      Não, porque ao navegar em uma VPN você está usando o DNS da própria VPN em vez dos configurados localmente.

  13.   geopélia dito

    Ótimo, muito obrigado, me deixa um pouco mais seguro quando me conecto ao wifis sem senha.

  14.   Mário Zamora dito

    Olá pessoal, segui à risca o tutorial e agora não tenho internet pois reverto o problema pois da forma especificada não quer o dnsscript de proxy sem tal. Socorro por favor estou sem internet.

    1.    Manuel da Fonte dito

      Você não seguiu o tutorial ao pé da letra. Você está offline porque desinstalou o DNSCrypt sem reverter as alterações primeiro. Leia as instruções de desinstalação novamente.

      1.    Mário Zamora dito

        Segui o tutorial como deveria. Use o método 1 com sua respectiva desinstalação. Mas quando está sendo mexido, permanece no processo. Alguma ideia?

        1.    Manuel da Fonte dito

          Vamos ver, vamos repassar as etapas de desinstalação ...

          Desproteja o arquivo:

          sudo chattr -i /etc/resolv.conf

          Restaure o DNS antigo:

          sudo rm /etc/resolv.conf
          sudo ln -s /run/resolvconf/resolv.conf /etc/resolv.conf

          Reinicie o Network Manager:

          sudo service network-manager restart

          Desinstale o DNSCrypt Proxy:

          sudo apt-get autoremove --purge dnscrypt-proxy

          Em qual comando ele está preso?

  15.   Mario zamora dito

    Neste :
    sudo apt-get autoremove --purge dnscrypt-proxy

    A desinstalação começa e nunca termina.

    1.    Manuel da Fonte dito

      Há um traço restante no comando, purga deve ir apenas com dois hífens no início, assim:

      sudo apt-get autoremove --purge dnscrypt-proxy

      Teste se isso resolve o seu problema. De qualquer forma, se você seguiu as etapas acima, deverá estar online, independentemente de o último comando funcionar ou não.

  16.   Roberto González dito

    Postagem muito boa me ajudou muito. Excelente!!!

  17.   Mykeura dito

    Tutorial interessante Manuel.
    Eu coloquei em prática e minha conexão está ótima.
    Obrigado.

  18.   linuxlibre2014 dito

    Olá amigos de desdelinux Gostaria de fazer uma pergunta quando tento fazer o processo de instalação após adicionar os repositórios e atualizar coloquei sudo apt-get install dnscrypt-proxy mas me diz:
    E: O pacote dnscrypt-proxy não pôde ser localizado Tenho o ubuntu 14.04 Não sei por que isso acontece ajuda

    1.    Francisco dito

      A mesma coisa acontece comigo 🙁
      Ubuntu 14.04

  19.   Keos dito

    Eu poderia fazer isso facilmente no Arch / Antergos, mas no Debian / Jessie desde o primeiro passo falha, não sei se não é compatível com o Debian:

    keos @ kaos: ~ $ su
    password:
    root @ kaos: / home / keos # add-apt-repository ppa: shnatsel / dnscrypt
    bash: add-apt-repository: comando não encontrado
    root @ kaos: / home / keos #

  20.   Mausmann dito

    Olá! O site é muito bom e eu queria te perguntar:
    Eu sigo todas as instruções, mas não consigo usar o DNS que alteramos no resolv.conf (127.0.0.1 ou 127.0.0.2). Portanto, fico sem acesso à Internet. Eu uso o DEBIAN e o WICD em vez do Network Manager.
    Com "find / -name dnscrypt-proxy" vejo que o programa é instalado onde deveria estar (/ usr / local / sbin e / usr / local / share /).
    Com «ps aux | grep dnscrypt-proxy »me lança a seguinte saída:
    root 6346 0.0 0.0 2808 672? SLs 09:45 0:00 dnscrypt-proxy –local-address = 127.0.0.1 –daemonize –resolver-address = 176.10.127.43: 443 –provider-name = 2.dnscrypt-cert.ns3.ca.dns.opennic.glue –Provider-key = 1C19: 7933: 1BE8: 23CC: CF08: 9A79: 0693: 7E5C: 3410: 2A56: AC7F: 6270: E046: 25B2: EDDB: 04E3

    Não entendo onde estou falhando. Eu li a - ajuda, mas não consigo encontrar de volta. Desde já muito obrigado.

  21.   Raul dito

    Perfeito no Lubuntu 16.04, muito obrigado por compartilhar o conhecimento.

  22.   jhon dito

    Olá, alguém aqui que pode me ajudar com um vpn ou proxy para fazer pesquisas pagas dos estados unidos, por favor