BrbOS/Aplicativos/DNS/Zone/RPZ
Índice
DNS Política de zona - RPZ
O sistema possui suporte para Zona Local. Isso torna possível fornecer uma resposta personalizada para nomes de domínio especificados. Embora essas opções sejam amplamente utilizadas pelos usuários, elas são específicas do sistema. Se você opera vários resolvers de diferentes fornecedores, precisa manter suas políticas para várias configurações, que terão sua própria sintaxe. Usar a configuração específica do sistema também torna desafiador consumir políticas de fontes externas.
Para fazer com que essas fontes externas funcionem manualmente, você precisa buscar as políticas externas no formato oferecido, reformatá-las de forma que o sistema compreenda e manter essa lista atualizada através da interface ou por API.
Para automatizar esse processo de forma genérica e padronizada, as Zonas de Política de Resposta (RPZ) são um formato de política que funcionará em diferentes implementações de resolvers e que tem capacidade para ser transferido e carregado diretamente de fontes externas como listas de bloqueio ou a lista da ANATEL.
Adicionar Registro
Para criar uma nova zona RPZ basta clicar em Adicionar Registro.
Campo | Descrição | Exemplo |
---|---|---|
Nome | Nesse campo você cria um nome para a sua zona RPZ. A nomenclatura tem uma padronização, deve no final sempre colocar .rpz.(ponto, rpz, ponto). | block.ads.rpz. |
TTL | TTL – que, como já mencionamos, significa “Time to Live” – é uma configuração que determina quanto tempo seus dados (em forma de pacote) são válidos e disponíveis de dentro de uma rede antes que o roteador os limpe. | 3600 |
Tags | A tag sempre para você criar listas de filtro de ranges de IPs que irão ser aplicados essas politicas. | ACL_TAG |
Override | ||
Sobrescreve os valores de registros das zonas. Os valores são os mesmos das politicas de ações definidas no tópico abaixo. | ||
Origem | ||
URL | Insira a URL cujo a lista de domínios a serem bloqueados estão presentes. | https://api.anablock.net.br/api/domain/all |
Dia da Semana | Escolha um dia da semana que deseja que a lista dessa URL seja checada novamente para saber se foram inseridos novos domínios e serem inseridos na sua zona RPZ. | Todos os Dias. |
Tempo | Escolha o horário que o BrbOS irá consultar novamente a URL. | 00:00:00 |
Override | Essa opção está interligada com a opção acima. Caso a lista de domínios presentes na sua URL já tiver um tipo de registro, ao marcar a opção override o sistema subscreve os registros pelo que foi marcado. | |
Tipo | Se desejar formatar os domínios com o registro específico, poderá marcar um tipo de registro e o valor que ele terá.
|
CNAME |
Valor | Irá preencher esse campo com base com base no tipo de registro da zona escolhido na opção anterior. |
RPZ Politicas
As políticas RPZ são formatadas em arquivos de zona DNS. Isso possibilita consumi-las facilmente e mantê-las atualizadas por meio de transferências de zona DNS. Algo que o BrbOS já é capaz de fazer para sua funcionalidade de zona de autoridade.
Cada política de RPZ consiste em um gatilho (Trigger) e uma ação (Action). O gatilho descreve quando a política deve ser aplicada. A ação descreve qual ação deve ser tomada se a política precisar ser aplicada. Cada combinação de gatilho e ação é definida como um Registro de Recurso (RR) na zona de política. O proprietário do RR indica o gatilho, o tipo e os dados do RDATA indicam a ação.
O BrbOS suporta todas as políticas RPZ descritas no rascunho de internet RPZ [[1]]
Observe que a codificação do endereço IP para gatilhos RPZ segue a convenção de nomenclatura IN-ADDR.ARPA. Portanto, o endereço IP 192.168.10.1 será escrito como 1.10.168.192.
Trigger | Descrição e Exemplo |
---|---|
QNAME | O nome da consulta: example.com
|
Client IP Address | O endereço IP do cliente: 24.0.2.0.192.rpz-client-ip
|
Response IP Address | Endereço IP de resposta na resposta: 24.0.2.0.192.rpz-ip
|
NSDNAME | O nome do servidor DNS: ns.example.com.rpz-nsdname
|
NSIP | O endereço IP do servidor DNS: 24.0.2.0.192.rpz-nsip
|
RPZ Actions
A ação é tipo de registro que seja aplicado na sua lista de bloqueio de domínio:
- nxdomain: NXDOMAIN significa "No Such Domain" em inglês, ou seja, "Não Existe Domínio". É uma mensagem de erro que um servidor DNS (Domain Name System) retorna quando não consegue encontrar o registro DNS para o nome de domínio consultado.
term$ host 0byv9mgbn0.com Host 0byv9mgbn0.com not found: 3(NXDOMAIN)
term$ nslookup 0byv9mgbn0.com 10.100.0.25 Servidor: UnKnown Address: 10.100.0.25 *** UnKnown não encontrou 0byv9mgbn0.com: Non-existent domain
- nodata: Essa ação retorna uma resposta "NODATA", indicando que não há dados disponíveis para a consulta, independentemente do tipo de consulta.
term$ nslookup 0byv9mgbn0.com 10.100.0.25 Servidor: UnKnown Address: 10.100.0.25 *** Nenhum registro internal type for both IPv4 and IPv6 Addresses (A+AAAA) disponível para 0byv9mgbn0.com
- passthru: Esta ação é usada para isentar certas respostas DNS de uma regra de política que abrange um domínio inteiro ou um grande bloco de endereços IP.
term$ nslookup 0byv9mgbn0.com 10.100.0.25 Servidor: UnKnown Address: 10.100.0.25 Não é resposta autoritativa: Nome: 0byv9mgbn0.com Addresses: 96.126.123.244 72.14.178.174 45.33.18.44 45.33.2.79 72.14.185.43 45.33.30.197 45.33.20.235 45.56.79.23 198.58.118.167 45.33.23.183 45.79.19.196 173.255.194.134
- drop: Essa ação descarta a solicitação e a resposta, sem enviar qualquer resposta ao cliente DNS.
term$ nslookup 0byv9mgbn0.com 10.100.0.25 Servidor: UnKnown Address: 10.100.0.25 DNS request timed out. timeout was 2 seconds. DNS request timed out. timeout was 2 seconds. DNS request timed out. timeout was 2 seconds. DNS request timed out. timeout was 2 seconds. *** O tempo limite da solicitação para UnKnown expirou
- disable: Deixa desabilitado qualquer ação da zona RPZ criada.
term$ nslookup 0byv9mgbn0.com 10.100.0.25 Servidor: UnKnown Address: 10.100.0.25 Não é resposta autoritativa: Nome: 0byv9mgbn0.com Addresses: 198.58.118.167 45.56.79.23 72.14.185.43 45.33.20.235 45.33.18.44 173.255.194.134 96.126.123.244 45.33.2.79 45.33.23.183 45.33.30.197 45.79.19.196 72.14.178.174
- cname: O CNAME (Canonical Name) é um tipo de registro usado para criar aliases, ou seja, apontar um nome de domínio para outro. Ele é frequentemente utilizado quando se deseja que um determinado nome de domínio resolva para o mesmo endereço IP que outro nome de domínio já existente. No caso você pode adicionar o domínio do seu DNS no campo cname, pois agora tem uma tela que mensagem de bloqueio dentro do BrbOS.
term$ nslookup 0byv9mgbn0.com 10.100.0.25 Servidor: UnKnown Address: 10.100.0.25 Nome: dev55.brbyte.com Address: 177.52.73.55 Aliases: 0byv9mgbn0.com
Exemplos
Exemplo de registros de zona RPZ. Demonstra como os gatilhos RPZ e como as ações são definidos.
; Gatilho RPZ para bloquear um domínio ; Este gatilho instrui o resolver a bloquear consultas para example.com ; A ação é "local-data" com um registro A para 127.0.0.1, o que irá bloquear o acesso ao domínio ; Bloqueia o domínio example.com example.com IN CNAME . ; Redireciona para localhost example.com IN A 127.0.0.1
; Gatilho RPZ para redirecionar um domínio ; Este gatilho instrui o resolver a redirecionar consultas de phishing.example.org para lockpage.com ; A ação é "cname" com um CNAME para o domínio de redirecionamento phishing.example.org IN CNAME lockpage.com.
; Gatilho RPZ para bloquear um endereço IP ; Este gatilho instrui o resolver a bloquear consultas para o IP 192.0.2.1 ; A ação é "local-data" com um registro A para 127.0.0.1, o que irá bloquear o acesso ao IP ; Bloqueia o IP 192.0.2.1 1.2.0.192.rpz-ip IN CNAME . ; Redireciona para localhost 1.2.0.192.rpz-ip IN A 127.0.0.1
Importando domínios
Muitas vezes será necessário realizar a adição manual de grandes listas de domínios e então realizar alguma ação quando acessados, dessa forma a ferramenta possibilita a inserção de todos os domínios.
Copie e cole dos domínios no campo "Conteúdo", configure os demais campos caso necessário, se não será aplicado as configurações da zona RPZ criada. Após salvar a listagem de registros deverá ser atualizada.