Mudanças entre as edições de "BrbOS/Aplicativos/DNS/Zone/RPZ"

De BrByte Wiki
< BrbOS‎ | Aplicativos‎ | DNS‎ | Zone
m (Softov moveu BrbOS/Aplicativos/DNS/DNS Policy Zone para /BrbOS/Aplicativos/DNS/Zone/RPZ sem deixar um redirecionamento)
 
(4 revisões intermediárias por 2 usuários não estão sendo mostradas)
Linha 1: Linha 1:
 
=DNS Política de zona - RPZ=
 
=DNS Política de zona - RPZ=
  
Agora o BrbOS conta com uma nova opção para poder realizar o bloqueio de domínios solicitados por órgãos como por exemplo a ANATEL.  
+
O sistema possui suporte para [[BrbOS/Aplicativos/DNS/Zone/Local|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.
  
 
<div class="img-responsive align-center">[[arquivo:brbos-aplicativo-dns-dns-policy-zone.png|link=]]</div>
 
<div class="img-responsive align-center">[[arquivo:brbos-aplicativo-dns-dns-policy-zone.png|link=]]</div>
  
  
A base do DNS do nosso BrbOS é o Unbound. Segue a explicação do [https://unbound.docs.nlnetlabs.nl/en/latest/topics/filtering/rpz.html Unbound RPZ]
+
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.
  
Com base na documentação, adaptamos o sistema para poder usar via interface web e facilitar a criação das zonas para bloqueio em massa dos domínios.
 
  
 
=Adicionar Registro=
 
=Adicionar Registro=
  
Para uma nova zona RPZ basta clicar em [[arquivo:add.png|link=]] Adicionar Registro.  
+
Para criar uma nova zona RPZ basta clicar em [[arquivo:add.png|link=]] Adicionar Registro.  
  
 
<div class="img-responsive align-center">[[arquivo:brbos-aplicativo-dns-dns-policy-zone-add.png|link=]]</div>  
 
<div class="img-responsive align-center">[[arquivo:brbos-aplicativo-dns-dns-policy-zone-add.png|link=]]</div>  
Linha 31: Linha 32:
 
|-
 
|-
 
| style="text-align:left; vertical-align:middle;" | Tags
 
| style="text-align:left; vertical-align:middle;" | Tags
| style="text-align:left; vertical-align:middle;" | A tag sempre para você filtrar uma lista de bloco de IPs que iram ser aplicado essa política de bloqueio.  
+
| style="text-align:left; vertical-align:middle;" | A tag sempre para você criar listas de filtro de ranges de IPs que irão ser aplicados essas politicas.  
| style="text-align:left; vertical-align:middle;" | -
+
| style="text-align:left; vertical-align:middle;" | [[BrbOS/Aplicativos/DNS/ACL_TAG|ACL_TAG]]
 
|-
 
|-
 
| style="text-align:center; vertical-align:middle;" colspan="3"| <i>Override</i>
 
| style="text-align:center; vertical-align:middle;" colspan="3"| <i>Override</i>
 
|-
 
|-
| style="text-align:left; vertical-align:middle;" | Ação
+
| style="text-align:center; vertical-align:middle;" colspan="3"| Sobrescreve os valores de registros das zonas. Os valores são os mesmos das politicas de ações definidas no tópico abaixo.
| style="text-align:left; vertical-align:middle;" | A ação é tipo de registro que seja aplicado na sua lista de bloqueio de domínio:
+
|-
<br>
+
| style="text-align:center; vertical-align:middle;" colspan="3"| <i>Origem</i>
 +
|-
 +
| style="text-align:left; vertical-align:middle;" | URL
 +
| style="text-align:left; vertical-align:middle;" | Insira a URL cujo a lista de domínios a serem bloqueados estão presentes.
 +
| style="text-align:left; vertical-align:middle;" | https://api.anablock.net.br/api/domain/all
 +
|-
 +
| style="text-align:left; vertical-align:middle;" | Dia da Semana
 +
| style="text-align:left; vertical-align:middle;" | 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.
 +
| style="text-align:left; vertical-align:middle;" | Todos os Dias.
 +
|-
 +
| style="text-align:left; vertical-align:middle;" | Tempo
 +
| style="text-align:left; vertical-align:middle;" | Escolha o horário que o BrbOS irá consultar novamente a URL.
 +
| style="text-align:left; vertical-align:middle;" | 00:00:00
 +
|-
 +
| style="text-align:left; vertical-align:middle;" | Override
 +
| style="text-align:left; vertical-align:middle;" colspan="2" | 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.
 +
|-
 +
| style="text-align:left; vertical-align:middle;" | Tipo
 +
| style="text-align:left; vertical-align:middle;" | Se desejar formatar os domínios com o registro específico, poderá marcar um tipo de registro e o valor que ele terá.
 +
<ul>
 +
<li><b>A - a host address</b>: Pode apontar a lista de domínios para um endereço de IPv4 específico.</li>
 +
<ul>
 +
<li>
 +
<code>
 +
127.0.0.1
 +
</code>
 +
</li>
 +
</ul>
 +
<li><b>AAAA - ipv6 address</b>: Pode apontar a lista de domínios para um endereço IPv6 específico.</li>
 +
<ul>
 +
<li>
 +
<code>
 +
<nowiki>::1</nowiki>
 +
</code>
 +
</li>
 +
</ul>
 +
<li><b>CNAME - the canonical name for an alias</b>: Pode apontar para um outro domínio.</li>
 
<ul>
 
<ul>
<li><b>nxdomain</b>: 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.</li>
+
<li>
 +
<code>
 +
dev55.brbyte.com.
 +
</code>
 +
</li>
 +
</ul>
 +
<li><b>TXT - text strings</b>: Pode escrever um texto para que a consulta desse domínio, traga esse valor escrito.</li>
 
<ul>
 
<ul>
 
<li>
 
<li>
 +
<code>
 +
domínio bloqueado Anatel
 +
</code>
 +
</li>
 +
</ul>
 +
</ul>
 +
| style="text-align:left; vertical-align:middle;" | CNAME
 +
|-
 +
| style="text-align:left; vertical-align:middle;" | Valor
 +
| style="text-align:left; vertical-align:middle;" colspan="2" | 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 [[https://datatracker.ietf.org/doc/html/draft-vixie-dnsop-dns-rpz-00|https://datatracker.ietf.org/doc/html/draft-vixie-dnsop-dns-rpz-00]]
 +
 +
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.
 +
 +
{| class="wikitable"
 +
! Trigger !! Descrição e Exemplo
 +
|-
 +
| QNAME || O nome da consulta: <code>example.com</code>
 +
|-
 +
| Client IP Address || O endereço IP do cliente: <code>24.0.2.0.192.rpz-client-ip</code>
 +
|-
 +
| Response IP Address || Endereço IP de resposta na resposta: <code>24.0.2.0.192.rpz-ip</code>
 +
|-
 +
| NSDNAME || O nome do servidor DNS: <code>ns.example.com.rpz-nsdname</code>
 +
|-
 +
| NSIP || O endereço IP do servidor DNS: <code>24.0.2.0.192.rpz-nsip</code>
 +
|}
 +
 +
 +
=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.
 
<blockquote><pre>
 
<blockquote><pre>
host 0byv9mgbn0.com
+
term$ host 0byv9mgbn0.com
 
Host 0byv9mgbn0.com not found: 3(NXDOMAIN)
 
Host 0byv9mgbn0.com not found: 3(NXDOMAIN)
 
</pre></blockquote>
 
</pre></blockquote>
 
<blockquote><pre>
 
<blockquote><pre>
nslookup 0byv9mgbn0.com 10.100.0.25
+
term$ nslookup 0byv9mgbn0.com 10.100.0.25
 
Servidor:  UnKnown
 
Servidor:  UnKnown
 
Address:  10.100.0.25
 
Address:  10.100.0.25
Linha 54: Linha 139:
 
*** UnKnown não encontrou 0byv9mgbn0.com: Non-existent domain
 
*** UnKnown não encontrou 0byv9mgbn0.com: Non-existent domain
 
</pre></blockquote>
 
</pre></blockquote>
</li>
+
 
</ul>
+
* '''nodata''': Essa ação retorna uma resposta "NODATA", indicando que não há dados disponíveis para a consulta, independentemente do tipo de consulta.
<li><b>nodata</b>: Essa ação retorna uma resposta "NODATA", indicando que não há dados disponíveis para a consulta, independentemente do tipo de consulta.</li>
 
<ul>
 
<li>
 
 
<blockquote><pre>
 
<blockquote><pre>
nslookup 0byv9mgbn0.com 10.100.0.25
+
term$ nslookup 0byv9mgbn0.com 10.100.0.25
 
Servidor:  UnKnown
 
Servidor:  UnKnown
 
Address:  10.100.0.25
 
Address:  10.100.0.25
Linha 66: Linha 148:
 
*** Nenhum registro internal type for both IPv4 and IPv6 Addresses (A+AAAA) disponível para 0byv9mgbn0.com
 
*** Nenhum registro internal type for both IPv4 and IPv6 Addresses (A+AAAA) disponível para 0byv9mgbn0.com
 
</pre></blockquote>
 
</pre></blockquote>
</li>
+
 
</ul>
+
* '''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.
<li><b>passthru</b>: 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.</li>
 
<ul>
 
<li>
 
 
<blockquote><pre>
 
<blockquote><pre>
nslookup 0byv9mgbn0.com 10.100.0.25
+
term$ nslookup 0byv9mgbn0.com 10.100.0.25
 
Servidor:  UnKnown
 
Servidor:  UnKnown
 
Address:  10.100.0.25
 
Address:  10.100.0.25
Linha 91: Linha 170:
 
           173.255.194.134
 
           173.255.194.134
 
</pre></blockquote>
 
</pre></blockquote>
</li>
+
 
</ul>
+
* '''drop''': Essa ação descarta a solicitação e a resposta, sem enviar qualquer resposta ao cliente DNS.
<li><b>drop</b>: Essa ação descarta a solicitação e a resposta, sem enviar qualquer resposta ao cliente DNS.</li>
 
<ul>
 
<li>
 
 
<blockquote><pre>
 
<blockquote><pre>
nslookup 0byv9mgbn0.com 10.100.0.25
+
term$ nslookup 0byv9mgbn0.com 10.100.0.25
 
Servidor:  UnKnown
 
Servidor:  UnKnown
 
Address:  10.100.0.25
 
Address:  10.100.0.25
Linha 111: Linha 187:
 
*** O tempo limite da solicitação para UnKnown expirou
 
*** O tempo limite da solicitação para UnKnown expirou
 
</pre></blockquote>
 
</pre></blockquote>
</li>
+
 
</ul>
+
* '''disable''': Deixa desabilitado qualquer ação da zona RPZ criada.
<li><b>disable</b>: Deixa desabilitado qualquer ação da zona RPZ criada.</li>
 
<ul>
 
<li>
 
 
<blockquote><pre>
 
<blockquote><pre>
nslookup 0byv9mgbn0.com 10.100.0.25
+
term$ nslookup 0byv9mgbn0.com 10.100.0.25
 
Servidor:  UnKnown
 
Servidor:  UnKnown
 
Address:  10.100.0.25
 
Address:  10.100.0.25
Linha 136: Linha 209:
 
           72.14.178.174
 
           72.14.178.174
 
</pre></blockquote>
 
</pre></blockquote>
</li>
+
 
</ul>
+
* '''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.
<li><b>cname</b>: 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.</li>
 
<ul>
 
<li>
 
 
<blockquote><pre>
 
<blockquote><pre>
nslookup 0byv9mgbn0.com 10.100.0.25
+
term$ nslookup 0byv9mgbn0.com 10.100.0.25
 
Servidor:  UnKnown
 
Servidor:  UnKnown
 
Address:  10.100.0.25
 
Address:  10.100.0.25
Linha 150: Linha 220:
 
Aliases:  0byv9mgbn0.com
 
Aliases:  0byv9mgbn0.com
 
</pre></blockquote>
 
</pre></blockquote>
</li>
 
</ul>
 
</ul>
 
| style="text-align:left; vertical-align:middle;" | CNAME
 
|-
 
| style="text-align:center; vertical-align:middle;" colspan="3"| <i>Origem</i>
 
|-
 
| style="text-align:left; vertical-align:middle;" | URL
 
| style="text-align:left; vertical-align:middle;" | Insira a URL cujo a lista de domínios a serem bloqueados estão presentes.
 
| style="text-align:left; vertical-align:middle;" | https://api.anablock.net.br/api/domain/all
 
|-
 
| style="text-align:left; vertical-align:middle;" | Dia da Semana
 
| style="text-align:left; vertical-align:middle;" | 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.
 
| style="text-align:left; vertical-align:middle;" | Todos os Dias.
 
|-
 
| style="text-align:left; vertical-align:middle;" | Tempo
 
| style="text-align:left; vertical-align:middle;" | Escolha o horário que o BrbOS irá consultar novamente a URL.
 
| style="text-align:left; vertical-align:middle;" | 00:00:00
 
|-
 
| style="text-align:left; vertical-align:middle;" | Override
 
| style="text-align:left; vertical-align:middle;" colspan="2" | 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.
 
|-
 
| style="text-align:left; vertical-align:middle;" | Tipo
 
| style="text-align:left; vertical-align:middle;" | Se desejar formatar os domínios com o registro específico, poderá marcar um tipo de registro e o valor que ele terá.
 
<ul>
 
<li><b>A - a host address</b>: Pode apontar a lista de domínios para um endereço de IPv4 específico.</li>
 
<ul>
 
<li>
 
<code>
 
127.0.0.1
 
</code>
 
</li>
 
</ul>
 
<li><b>AAAA - ipv6 address</b>: Pode apontar a lista de domínios para um endereço IPv6 específico.</li>
 
<ul>
 
<li>
 
<code>
 
<nowiki>::1</nowiki>
 
</code>
 
</li>
 
</ul>
 
<li><b>CNAME - the canonical name for an alias</b>: Pode apontar para um outro domínio.</li>
 
<ul>
 
<li>
 
<code>
 
dev55.brbyte.com.
 
</code>
 
</li>
 
</ul>
 
<li><b>TXT - text strings</b>: Pode escrever um texto para que a consulta desse domínio, traga esse valor escrito.</li>
 
<ul>
 
<li>
 
<code>
 
domínio bloqueado Anatel
 
</code>
 
</li>
 
</ul>
 
</ul>
 
| style="text-align:left; vertical-align:middle;" | CNAME
 
|-
 
| style="text-align:left; vertical-align:middle;" | Valor
 
| style="text-align:left; vertical-align:middle;" colspan="2" | Irá preencher esse campo com base com base no tipo de registro da zona escolhido na opção anterior.
 
|}
 
  
 +
=Exemplos=
 +
 +
Exemplo de registros de zona RPZ. Demonstra como os gatilhos RPZ e como as ações são definidos.
 +
 +
<blockquote><pre>
 +
; 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
 +
</pre></blockquote>
 +
 +
<blockquote><pre>
 +
; 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.
 +
</pre></blockquote>
 +
 +
<blockquote><pre>
 +
; 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
 +
 +
</pre></blockquote>
  
 +
=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 [[arquivo:BrbOS Btn Import.png]] 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.
  
 
__NOEDITSECTION__
 
__NOEDITSECTION__

Edição atual tal como às 11h11min de 26 de agosto de 2024

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.

Brbos-aplicativo-dns-dns-policy-zone.png


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 Add.png Adicionar Registro.

Brbos-aplicativo-dns-dns-policy-zone-add.png


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á.
  • A - a host address: Pode apontar a lista de domínios para um endereço de IPv4 específico.
    • 127.0.0.1
  • AAAA - ipv6 address: Pode apontar a lista de domínios para um endereço IPv6 específico.
    • ::1
  • CNAME - the canonical name for an alias: Pode apontar para um outro domínio.
    • dev55.brbyte.com.
  • TXT - text strings: Pode escrever um texto para que a consulta desse domínio, traga esse valor escrito.
    • domínio bloqueado Anatel
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 BrbOS Btn Import.png 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.