Lista branca do Dnsmasq para clientes específicos na rede

4

Gostaria de usar o dnsmasq para configurar uma lista branca para determinados clientes na minha rede.

Por exemplo, eu gostaria de ter essas regras para clientes no intervalo 192.168.1.10 - 192.168.1.20:

no-resolv
server=/pbskids.org/192.168.0.1
server=/disney.go.com/192.168.0.1

Dessa forma, os únicos sites acessíveis por esses clientes são aqueles que estão na lista de permissões. Os clientes na rede fora desse intervalo devem ser capazes de usar qualquer servidor DNS que desejarem. Como posso fazer isso?

EDITAR:

Isso é o que eu tenho no dnsmasq.conf até agora:

bogus-priv
domain-needed
no-resolv

server=/pbskids.org/192.168.0.1
server=/disney.go.com/192.168.0.1

Isso tem o resultado pretendido de negar pesquisas de DNS upstream para todos os clientes na rede. Agora, o que preciso é uma maneira de permitir que determinados clientes usem o DNS upstream. Eu não acho que uma opção como essa existe, mas talvez ajude minha ideia:

use-resolv --source 192.168.1.150

ou seja, se o endereço IP do cliente for 192.168.1.150, use os servidores DNS upstream. Como alternativa, o que eu estava procurando originalmente era algo assim:

no-resolv --source 192.168.1.100

ou seja, se o endereço IP do cliente for 192.168.1.100, não use servidores upstream. Espero que isso ajude a esclarecer minha dúvida.

Se eu não posso fazer algo assim, então talvez eu precise de duas redes separadas.

    
por David Kennedy 07.11.2013 / 03:45

1 resposta

3

Este tutorial parece com o que você quer. Intitulado: Proteger e navegar (dnsmasq e Whitelists) .

A ideia é bastante simples. Isole as máquinas de modo que seu único servidor DNS que eles conhecem seja o servidor DNSMasq. Em seguida, adicione as seguintes linhas à configuração do DNSMasq. arquivo, /etc/dnsmasq.conf :

domain-needed
bogus-priv
log-queries
log-facility=/var/log/dnsmasq.log
no-resolv
interface=eth0

# Add other name servers here, with domain specs if they are for
# non-public domains.
#server=/localnet/192.168.0.1
server=/google.com/192.168.0.1
server=/dan-dare.org/192.168.0.1
server=/dan-dare.net/192.168.0.1
server=/pbskids.org/192.168.0.1
server=/playhousedisney.com/192.168.0.1
server=/disney.go.com/192.168.0.1
server=/starfall.com/192.168.0.1

Uma vez que você tenha isto em funcionamento, os servidores que apontam para o servidor DNSMasq simplesmente não conseguirão encontrar nenhum resultado de DNS além daqueles na configuração. arquivo.

NOTA: Isto não é de forma alguma uma prova completa e pode ser contornado facilmente. Mas se você está usando para manter as crianças fora de outros sites, então provavelmente é o suficiente para a tarefa.

DNS

Você pode configurar um sistema para que seu DNS seja configurado para enviar apenas solicitações para o servidor DNSMasq por meio do arquivo de configuração, /etc/resolv.conf .

nameserver 192.168.1.1
    
por 07.11.2013 / 04:09

Tags