EPP

1. Introdução

O protocolo EPP é um padrão do IETF que permite que provedores de serviço executem operações de provisionamento em objetos de um repositório central. Sua principal aplicação é a automatização do registro e manutenção de domínios.

A implementação EPP do .br está disponível desde julho/2006 para provedores de serviços que administram grandes conjuntos de domínios.

O acesso ao serviço EPP do .br é permitido apenas aos provedores aprovados num processo de homologação técnica. Este processo é composto de uma sequência de comandos minimamente suficiente para cobrir as principais operações do protocolo EPP

Veja abaixo os passos necessários para utilizar o serviço EPP do .br:

2. Informações Operacionais

  • 2.1 Procedimento de crédito para o serviço EPP

    Créditos EPP devem ser feitos através de DOC, TED ou depósito na conta corrente do NIC.br

    Dados da conta bancária
    Banco Santander: 033
    Agencia: 105
    C/C: 1303201-4 (DOC)
    C/C: 13003201-4 (depósito)
    Titular: NIC.br
    CNPJ 05.506.560/0001-36

    Após efetuado o crédito, é preciso enviar o comprovante do DOC, TED ou depósito através de uma das seguintes opções:

    • Em formato eletrônico por email para epp@registro.br.
    • Por FAX para (11) 55093501. Após o envio do comprovante por fax, é necessário confirmar o recebimento do mesmo pelo telefone (11) 5509-3500.

    Juntamente com o comprovante, informe o Provedor de Serviços e nome e telefone para contato.

    IMPORTANTE: Créditos efetuados serão efetivados no Registro.br, após a confirmação bancária.

  • 2.2 Valor do registro e manutenção de domínios

    Os valores das operações "create" e "renew" no protocolo EPP são ambas de R$ 36,00 por ano. É possível informar períodos de 1 a 10 anos de registro ou renovação.

    Domínios NOM.BR podem ser registrados ou renovados por períodos entre 3 e 10 anos. O período mínimo de 3 anos para este DPN tem custo de R$ 36,00. Para cada ano adicional, serão cobrados R$ 12,00.

  • 2.3 Solicitando um certificado TLS

    A conexão ao servidor EPP de produção exige o uso de um certificado TLS de uso exclusivo do provedor, o qual é emitido pelo NIC.br aos provedores que possuem conta EPP ativa no sistema. O certificado emitido é de um AC privada do NIC.br que não tem aceitação por browsers ou outros programas e dispositivos, e serve apenas para o ambiente EPP do .br.

    Para que possamos emitir o certificado TLS é necessário que o provedor nos envie um CSR (Certificate Signing Request), que é um arquivo contendo informações sobre o provedor que serão incluídas no certificado gerado pelo NIC.br, tais como:

    • Common Name: Para fins do serviço EPP do .br, deve ser utilizado o número atribuído ao provedor, quando de seu cadastro;
    • Organization: Razão social do provedor;
    • Organizational Unit: Departamento do provedor responsável pelo serviço EPP;
    • City: Cidade onde o provedor está localizado;
    • State: Estado onde o provedor está localizado;
    • Country: Código ISO de 2 letras do país do provedor;
    • Public Key: Chave pública a ser incluída no certificado.

    O CSR gerado pelo provedor EPP deve estar no formato PEM e codificado em Base-64. O arquivo CSR neste formato pode ser aberto num editor de texto comum e tem conteúdo parecido com o apresentado abaixo:

    -----BEGIN CERTIFICATE REQUEST-----
        MIICzDCCAbQCAQAwgYYxCzAJBgNVBAYTAkVOMQ0wCwYDVQQIDARub25lMQ0wCwYD
        VQQHDARub25lMRIwEAYDVQQKDAlXaWtpcGVkaWExDTALBgNVBAsMBG5vbmUxGDAW
        BgNVBAMMDyoud2lraXBlZGlhLm9yZzEcMBoGCSqGSIb3DQEJARYNbm9uZUBub25l
        LmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAMP/U8RlcCD6E8AL
        PT8LLUR9ygyygPCaSmIEC8zXGJung3ykElXFRz/Jc/bu0hxCxi2YDz5IjxBBOpB/
        kieG83HsSmZZtR+drZIQ6vOsr/ucvpnB9z4XzKuabNGZ5ZiTSQ9L7Mx8FzvUTq5y
        /ArIuM+FBeuno/IV8zvwAe/VRa8i0QjFXT9vBBp35aeatdnJ2ds50yKCsHHcjvtr
        9/8zPVqqmhl2XFS3Qdqlsprzbgksom67OobJGjaV+fNHNQ0o/rzP//Pl3i7vvaEG
        7Ff8tQhEwR9nJUR1T6Z7ln7S6cOr23YozgWVkEJ/dSr6LAopb+cZ88FzW5NszU6i
        57HhA7ECAwEAAaAAMA0GCSqGSIb3DQEBBAUAA4IBAQBn8OCVOIx+n0AS6WbEmYDR
        SspR9xOCoOwYfamB+2Bpmt82R01zJ/kaqzUtZUjaGvQvAaz5lUwoMdaO0X7I5Xfl
        sllMFDaYoGD4Rru4s8gz2qG/QHWA8uPXzJVAj6X0olbIdLTEqTKsnBj4Zr1AJCNy
        /YcG4ouLJr140o26MhwBpoCRpPjAgdYMH60BYfnc4/DILxMVqR9xqK1s98d6Ob/+
        3wHFK+S7BRWrJQXcM8veAexXuk9lHQ+FgGfD0eSYGz0kyP26Qa2pLTwumjt+nBPl
        rfJxaLHwTQ/1988G0H35ED0f9Md5fzoKi5evU1wG5WRxdEUPyt3QUXxdQ69i0C+7
        -----END CERTIFICATE REQUEST-----

    A criação do CSR tem como pré-requisito a criação de uma chave privada. Sugerimos a utilização de chaves RSA de ao menos 2048 bits. Supondo o uso do software OpenSSL, a geração da chave privada pode ser feita com o seguinte comando:

    openssl genrsa -aes256 -out meuprovedor.key 2048

    Com a chave privada gerada, a criação do CSR pode ser feita com o comando a seguir:

    openssl req -new -key meuprovedor.key -out meuprovedor.csr

    O arquivo contendo o CSR deve ser enviado por e-mail para epp@registro.br. O NIC.br fará as verificações necessárias no CSR recebido e, estando tudo em ordem, emitirá o novo certificado TLS para o provedor EPP.

    IMPORTANTE: O certificado TLS gerado será enviado somente para o e-mail do contato administrativo do provedor.

    Assim que receber o arquivo com o novo certificado, certifique-se de substituí-lo em seus sistemas.

    Sistemas que utilizam a biblioteca libepp-nicbr esperam os dados do certificado e respectiva chave privada num único arquivo no formato PEM. O comando abaixo pode ser utilizado para gerá-lo:

    cat meuprovedor.crt meuprovedor.key > meuprovedor.pem

    Caso seu sistema utilize certificados no formato PKCS#12, a conversão pode ser feita da seguinte forma:

    openssl pkcs12 -export -in meuprovedor.crt -inkey meuprovedor.key -out meuprovedor.p12

3. Informações técnicas

  • 3.1 Ambiente de homologação e testes

    O sistema para testes da interface EPP do registro.br está publicamente disponível desde o dia 22/05/2006 no servidor beta.registro.br.

    Para obter uma conta no sistema de testes é preciso:

    As zonas disponíveis para o teste são COM.BR, ORG.BR, EDU.BR, NOM.BR e ENG.BR. Domínios registrados no servidor de testes serão publicados no servidor DNS em beta.registro.br.

    Os seguintes serviços estarão disponíveis:

                    http/s  - Interface WEB
                    epp     - Servidor EPP TLS/700
                    whois   - Servidor whois TCP/43
            ex.: whois -h beta.registro.br eppserv.com.br
                    isavail - Serviço de disponibilidade de domínios UDP/43
            ex.: avail_client.py -s beta.registro.br eppserv.com.br
                    dns     - Servidor DNS com dnssec
            ex.: dig @beta.registro.br eppserv.com.br ns [+dnssec]

    Suporte EPP poderá ser obtido pelo email epp-suporte@registro.br ou pela lista de discussão.

  • 3.2 Referências EPP

    Abaixo, listamos os documentos que definem o protocolo EPP, bem como as extensões criadas pelo Registro.br. Os documentos identificados com * são aqueles necessários para o correto funcionamento de um cliente do serviço EPP do .br:

4. Biblioteca libepp-nicbr

Esta é a biblioteca C++ LIBEPP-NICBR que implementa parcialmente o Extensible Provisioning Protocol (EPP), conforme descrito nos Internet Drafts RFC3730bis a RFC3734bis e RFC3735.

O mapeamento de domínio - RFC3731bis - foi implementado com hosts sendo atributos do objeto Domínio.

Para adequar o protocolo ao modelo do .BR, foram feitas extensões aos mapeamentos de domínio e contato (draft-neves-epp-brdomain e draft-neves-epp-brorg), suportadas desde a versão 0.2. A documentação destas extensões está disponível em Referências EPP.

A biblioteca foi desenvolvida sobre FreeBSD 5.4 utilizando o compilador gcc 3.4.2.

Embora a maior parte do desenvolvimento tenha sido feito em FreeBSD, não tivemos problemas compilando-a e executando os testes em Linux (testado em Debian 3.1).

  • 4.1 Downloads

    ChangeLog

    Data Versão Descrição Download
    28-Jan-2015 libepp-nicbr 1.15 Suporte a TLSv1.1 e TLSv1.2 e novos certificados. Baixar
    10-Dez-2014 libepp-nicbr 1.14 Novos comandos e extensões referentes a gTLDs e integrações com o LACNIC. Baixar
    15-Mai-2013 libepp-nicbr 1.13 Correções e melhorias no transporte de dados e na conversão dos XMLs. Baixar
    06-Set-2012 libepp-nicbr 1.12 Correções no sistema de compilação e novos certificados de teste. Baixar
    15-Ago-2011 libepp-nicbr 1.11 Novos campos e comandos, assim como suporte a DNSSEC nos comandos de gerenciamento de IPs. Baixar
    22-Jul-2010 libepp-nicbr 1.10 Pequenas correções (host status/Xerces-C 2) Baixar
    21-Jan-2010 libepp-nicbr 1.9 secDNS-1.1 (RFC5910) e correções importantes. Baixar
    18-Jun-2009 libepp-nicbr 1.8 Correção de memory leaks; suporte ao Xerces-C 3.0 e gcc-4.4. Baixar
    17-Mar-2009 libepp-nicbr 1.7 Pequenas alterações e novos certificados para beta.registro.br. Baixar
    31-Out-2008 libepp-nicbr 1.6 Implementados os drafts de IP network e ASN e também outras mudanças e correções de bug. Baixar

Tecnologia