Algumas pessoas dirão que nenhum registro DNS público jamais deve divulgar endereços IP privados ... com o pensamento de que você está dando aos invasores em potencial uma vantagem sobre algumas informações que podem ser necessárias para explorar sistemas privados.
Pessoalmente, acho que a ofuscação é uma forma pobre de segurança, especialmente quando estamos falando de endereços IP, porque geralmente eles são fáceis de adivinhar, então não vejo isso como um comprometimento realista da segurança.
A consideração maior aqui é garantir que seus usuários públicos não obtenham esse registro DNS como parte dos serviços públicos normais do seu aplicativo hospedado. ou seja: as pesquisas de DNS externo de alguma forma começam a ser resolvidas para um endereço que não podem ser acessadas.
Além disso, não vejo nenhuma razão fundamental para colocar um registro de endereço A privado no espaço público é um problema ... especialmente quando você não tem um servidor DNS alternativo para hospedá-lo.
Se você decidir colocar esse registro no espaço DNS público, considere criar uma zona separada no mesmo servidor para armazenar todos os registros "particulares". Isso tornará mais claro que eles pretendem ser privados ... no entanto, para apenas um registro A, eu provavelmente não me incomodaria.
Eu tive uma longa discussão sobre esse tópico na lista NANOG há um tempo atrás. Embora eu sempre tenha pensado que era uma má idéia, acontece que não é uma má idéia na prática. As dificuldades vêm principalmente das pesquisas de rDNS (que para endereços privados simplesmente não funcionam no mundo exterior) e, quando você está fornecendo acesso aos endereços por meio de uma VPN ou similar, é importante garantir que os clientes VPN estejam adequadamente protegidos contra "vazamento" de tráfego quando a VPN está inoperante.
Eu digo, vá em frente. Se um invasor conseguir algo significativo ao poder resolver nomes para endereços internos, você terá maiores problemas de segurança.
fonte
Em geral, a introdução de endereços RFC1918 no DNS público causará confusão, se não um problema real, em algum momento no futuro. Use IPs, registros de host ou uma exibição DNS privada da sua zona para usar os endereços RFC1918 atrás do firewall, mas não os inclua na exibição pública.
Para esclarecer minha resposta com base na outra resposta enviada, acho que a introdução de endereços RFC1918 no DNS público é um falso passo, não um problema de segurança. Se alguém me ligar para solucionar um problema e eu deparar com endereços RFC1918 no DNS, começo a falar bem devagar e a perguntar se eles foram reiniciados recentemente. Talvez seja esnobismo da minha parte, eu não sei. Mas, como eu disse, não é algo necessário e provavelmente causará confusão e falta de comunicação (humana, não computador) em algum momento. Por que arriscar?
fonte
Não, não coloque seus endereços IP privados no DNS público.
Em primeiro lugar, vaza informações, embora esse seja um problema relativamente menor.
O pior problema se os seus registros MX apontarem para essa entrada específica do host é que qualquer pessoa que tente enviar e-mail receberá o tempo limite de entrega.
Dependendo do software de e-mail do remetente, eles podem receber devoluções.
Pior ainda, se você estiver usando o espaço de endereço RFC1918 (o que você deveria, dentro da sua rede) e o remetente também, há todas as chances de que eles tentem entregar o correio em sua própria rede.
Por exemplo:
Sim, é uma configuração quebrada, mas já vi isso (e pior) acontecer.
Não, não é culpa do DNS, está apenas fazendo o que é solicitado.
fonte
Embora a possibilidade seja remota, acho que você pode estar se preparando para um ataque MITM.
Minha preocupação seria essa. Digamos que um de seus usuários com um cliente de correio configurado para apontar para esse servidor de correio leve o laptop para outra rede. O que acontece se essa outra rede também tiver o mesmo RFC1918 em uso. Esse laptop pode tentar efetuar login no servidor smtp e oferecer as credenciais do usuário a um servidor que não deveria tê-lo. Isso seria particularmente verdadeiro desde que você disse SMTP e não mencionou que estava exigindo SSL.
fonte
Suas duas opções são / etc / hosts e a colocação de um endereço IP privado na sua zona pública. Eu recomendo o primeiro. Se isso representa um grande número de hosts, considere executar seu próprio resolvedor internamente, não é tão difícil.
fonte
Pode haver problemas sutis com ele. Uma é que soluções comuns para ataques de religação de DNS filtram entradas DNS locais resolvidas de servidores DNS públicos. Assim, você se abre para refazer ataques, ou os endereços locais não funcionam ou exigem uma configuração mais sofisticada (se o seu software / roteador permitir).
fonte
É melhor mantê-lo no arquivo hosts. Se apenas uma máquina deve se conectar a ela de qualquer maneira, o que você ganha colocando-a no DNS público?
fonte
/etc/hosts
arquivo, porque todas as 2.000 máquinas precisam gerenciar esses pares de IP / nome ...Se por privado você quer dizer 10.0.0.0/8, 192.168.0.0/16 ou 172.16.0.0/12, então não . A maioria dos roteadores da Internet o reconhece pelo que é - um endereço privado que nunca deve ser roteado para a Internet pública de maneira direta , o que ajudou a popularidade do NAT. Qualquer pessoa que tente entrar em contato com o servidor DNS público recuperará o endereço IP privado do DNS, apenas para enviar um pacote para .... nenhum lugar. À medida que a conexão deles tenta atravessar a Internet para o seu endereço privado, algum roteador (configurado com segurança) pelo caminho simplesmente consome o pacote vivo.
Se você deseja receber e-mails de "fora" para vir "dentro", em algum momento, o pacote precisa atravessar seu firewall. Eu sugeriria a configuração de um endereço DMZ para lidar com isso - um único endereço IP público que é rigidamente controlado por qualquer roteador / firewall existente. A configuração existente que você descreve parece exatamente isso.
EDIT: esclarecimento da intenção ... (ver comentários abaixo). Se isso não fizer sentido, votarei para remover minha própria postagem.
fonte
Cheguei aqui enquanto procurava informações semelhantes e fiquei surpreso ao saber que muitos estão vazando seus endereços IP privados. Eu acho que em termos de hackers, não faz muita diferença se você estiver em uma rede segura. No entanto, o DigitalOcean teve todo o tráfego de rede local exatamente nos mesmos cabos, com todos realmente tendo acesso ao tráfego de todos os outros (provavelmente possível com um ataque do tipo Man in the Middle.) Se você tivesse um computador no mesmo data center, teria as informações certamente lhe dão um passo mais perto de invadir meu tráfego. Agora, cada cliente tem sua própria rede privada reservada, como acontece com outros serviços em nuvem, como a AWS.
Dito isto, com o seu próprio serviço BIND9, você pode definir facilmente seus IPs públicos e privados. Isso é feito usando o
view
recurso, que inclui uma condicional. Isso permite que você consulte um DNS e obtenha uma resposta sobre IPs internos apenas se você estiver solicitando seu endereço IP interno.A configuração requer duas zonas. A seleção usa o
match-clients
. Aqui está um exemplo de configuração do servidor DNS Two-in-one com BIND9 :Aqui está a zona externa e podemos ver os IPs não são privados
Quanto à zona interna, primeiro incluímos a zona externa, que é assim que funciona. ou seja, se você é um computador interno, você acessa apenas a zona interna e ainda precisa das definições de zona externa, daí o
$include
comando:Finalmente, você precisa garantir que todos os seus computadores agora usem esse DNS e seus escravos. Supondo uma rede estática, isso significaria editar seu
/etc/network/interfaces
arquivo e usar seus IPs DNS nanameserver
opção. Algo assim:Agora você deve estar pronto.
fonte