RPKI - Resource Public Key Infrastructure – Permite validar a origem de cada prefixo recebido, classificando cada um deles como: Válido, Inválido ou Desconhecido.
Garante uma proteção contra sequestro dos seus prefixos por uma rede ou rota não detentora do mesmo.
Distribuição utilizada neste tutorial:
Instalação do Debian 11 Bullseye limpa passo-a-passo
A base desta instalação foi com informações na documentação oficial.
Não esqueça de virar root da forma correta e atualizar os pacotes, e instalar alguns pacotes que serão necessários.
Adicionaremos ao repositório os pacotes da nlnetlabs, faça de acordo com sua distribuição:
Debian 11 (Mais recomendada)
Importe a chave do repositório.
Atualize o repositório
Instale o krill
Após a instalação será criado no sistema um usuário chamado krill que é dono do diretório /var/lib/krill/ (que até o momento não existe nada nele).
Por segurança criaremos um backp original do krill.conf o arquivo de configuração.
Por padrão o krill roda em localhost porta 3000. Mas para nós acessar posteriormente sua interface web (lagosta) será necessário ter acesso a mesma, tornado aberta para todos. (Veremos também como aplicar um firewall, para não deixar acessível à todos)
Adicione como no print:
Por padrão o mesmo não vem habilitado na inicialização, para isso vamos habilita-lo.
Agora inicie o serviço
Verifique se o mesmo está rodando sem nenhum erro.
Com o comando netstat você pode se certificar que agora o krill está aberto para qualquer IP “0.0.0.0”
Tudo certo até aqui, será necessário pegarmos o Token que ele gerou na instalação, ele se encontra no arquivo /etc/krill.conf, para pega-ló pode executar este comando:
Neste caso meu token é 38d8ffbe35eaa2391b01681662037600, salve isso com 7 chaves!
E a instalação é só isso!
Agora basta acessar em seu navegador https://IP:3000 e nos depararemos com interface web do krill “lagosta”. (User o Firefox) É necessário aceitar o certificado inválido.
Informe o seu token em senha, no meu ex.: “38d8ffbe35eaa2391b01681662037600”
Ao entrar pela primera vez será necessário informar um nome de autoridade, adotarei como nome “meu AS”
Hora de acessarmos nossa conta no Registro.br
Clique em titularidade, em seguida “1 ASN”
Role a página ate o final e clique em Configurar RPKI

Volte a tela do Krill, e clique em Parents e copie o conteúdo do Child Request
Retorne ao Registro.BR e cole o conteúdo no campo Child Request e Habilitar RPKI
Copie o conteúdo do Parent Response que o RegistroBR gerou
Cole o mesmo no Krill campo Parent Response e clique em confirmar.
Deve retornar uma mensagem de sucesso.
Vá ao registroBR e logo a baixo de parent response clique em Configurar publicação remota irá abrir um campo Publisher Request, agora cole e clique em Habilitar Publicação Remota
Role um pouco a paixa para baixo e veja que temos agora o Repository Response copie o mesmo e volte ao Krill
Cole no campo Repository Response e clique em Confirmar
Novamente deve retornar uma mensagem de sucesso.
Será direcionado para aba ROAs. Clique em Click Here to refresh/Clique aqui para atualizar.
Agora precisamos adicionar nossos ROAs, clique em Add ROA/Adicionar ROA
Adicione todos seus prefixos
ROAs adicionados com sucesso! Nosso RPKI está finalizado!
Para validar você pode acessar os Looking Glass da G8 e da Telia que fazem validação do RPKI, mas tenha paciência, aguarde pelo menos 1 hora antes de arrancar os cabelos se não validar.
Temos o site que é bem legal também: https://rpki-validator.ripe.net/
Não podemos esquecer o firewall, usarei o nftables
Instale e ative-o para iniciar com o sistema. (No Debian 11 nftables já é o subistituto do iptables, não é necessários instalar, mas é necessário dar um enable)
Edite as regras
Neste exemplo eu acessível apenas deixo apenas aberto para 200.200.200.0/22 e 192.168.0.0/24
Reinicie o serviço
Verificar as regras:
Backup
Não esqueça de colocar o diretório em suas políticas de backups: /var/lib/krill/. Uma dica é o tutorial: Criando backups de forma simples e enviando para o Telegram ou servidor via SSH
Bônus – Múltiplos CA
Se quiser hospedar as CA de outros provedores ou é responsável por mais de um AS, basta adicionar nova CA pelo cliente do terminal, e assim será possível gerenciar pela interface web (lagosta)
Ex:
Deixou meu agradecimento ao amigo @GlauberMattar por essa dica.
Monitoramento
Template Zabbix 5 e 4.4 para monitorar se a porta 3000 está respondendo. RR Krill Zabbix 5 / RR Krill Zabbix 4.4
Leitura recomendada:
Instalação do Routinator 3000, um software para validação RPKI
Curtiu o conteúdo? Quer me ajudar manter
Este artigo foi útil?
Que bom!
Obrigado pelo seu feedback
Desculpe! Não conseguimos ajudar você
Obrigado pelo seu feedback
Feedback enviado
Agradecemos seu esforço e tentaremos corrigir o artigo