Transmissão segura de certificados

Com novos problemas de segurança surgindo todos os dias, as organizações entendem a importância de os produtos terem um mecanismo de segurança robusto. O UIM 20.3.3 teve sua segurança ainda mais aprimorada, permitindo a transferência ininterrupta dos certificados
de um hub para um robô
por meio de um canal seguro. Agora, não é mais necessário arrastar e soltar manualmente os certificados de um hub para um robô ao usar o barramento seguro. O processo completo é feito automaticamente sem nenhuma intervenção manual, o que garante que a comunicação seja segura e que os dados não sejam violados.
Revise o artigo Hub e robô seguros que contém o fluxo completo de proteção do ambiente. A transmissão segura de certificados é uma das etapas envolvidas no processo.
A ilustração a seguir demonstra o processo de transferência de certificado:
Os tópicos a seguir fornecem as informações detalhadas:
2
De maneira geral, você cria um arquivo da lista branca que contém os robôs de destino que apontam para um hub específico. Em seguida, configure o arquivo hub.cfg. De acordo com o arquivo da lista branca e com a configuração do hub, os certificados são transferidos para os robôs de destino por meio de um canal seguro. O hub lê o arquivo da lista branca a cada 1 minuto.
Considerações
Revise as seguintes considerações:
  • Os encapsulamentos devem ser configurados em seu ambiente.
  • A versão mais recente do probe distsrv ou ade (disponível com o UIM 20.3.3) deve ser implantada.
  • Essa funcionalidade é aplicável aos pacotes do robô e do hub lançados com o UIM 20.3.3.
  • Se um robô específico não estiver online, a transferência de certificado não acontecerá nesse robô.
  • A transferência de certificado não funciona no caso de robôs passivos.
  • O servidor de encapsulamento atua como uma autoridade de certificação.
  • É possível criar um arquivo da lista branca manualmente ou usar um retorno de chamada.
Criar o arquivo de configuração de lista branca
Crie o arquivo de configuração da lista branca, robots_certs_details.cfg, no local ..\Nimsoft\hub\changes.  Nesse arquivo, adicione a lista de robôs para os quais você deseja transferir os certificados. Os robôs devem apontar para o hub do qual você deseja transferir os certificados. O hub correspondente lê esse arquivo para determinar os robôs para os quais ele transferirá os certificados. Você deve adicionar esse arquivo a todos os hubs necessários. O hub lê o arquivo a cada 1 minuto.
Também é possível usar um retorno de chamada para criar o arquivo de lista branca. O retorno de chamada cria o arquivo, adiciona as informações do robô a ele e o coloca na pasta "changes". O retorno de chamada executa essas tarefas automaticamente. No entanto, se estiver usando o retorno de chamada, você só poderá adicionar uma entrada de robô por vez. Para obter mais informações, consulte Usar o retorno de chamada para criar um arquivo de lista branca.
Siga estas etapas:
  1. Vá para a pasta ..\Nimsoft\hub\.  Esse é o hub do qual você deseja transferir os certificados para os robôs de destino que estão apontando para ele.
  2. Crie uma pasta denominada "changes" no diretório ..\Nimsoft\hub\. 
  3. Vá para a pasta "changes".
  4. Crie o arquivo robots_certs_details.cfg com as seguintes informações na pasta "changes":
    <certs> <robotname> name=robot_name_ABC commonName=10.xx.xxx.xx expiry_in_days=6 location=<keep_blank> deployed=no </robotname> </certs>
    Adicione as informações de todos os robôs de destino.
  5. Revise os parâmetros:
    • name: especifica o nome do robô para o qual você deseja transferir os certificados. Esse robô aponta para o mesmo hub.
    • commonName: especifica o IP do robô de destino.
    • expiry_in_days: especifica a expiração do certificado. Se você deixá-lo em branco, a expiração padrão (um ano) será aplicada.
    • location: especifica o local em que o arquivo de certificado gerado (<nome_do_robô>.pem) é armazenado. Neste estágio, esse parâmetro está vazio porque o processo de transferência de certificado ainda não foi iniciado.
    • deployed: especifica o status da implantação do certificado no robô de destino. O valor padrão é
      no
      , o que significa que a implantação não foi feita. Assim que o certificado for implantado com êxito, o valor será automaticamente alterado para
      yes
      .
  6. Salve as alterações.
O arquivo de lista branca foi criado com êxito. Siga o mesmo processo para criar os arquivos para outros hubs.
Usar o retorno de chamada para criar o arquivo de lista branca
Se não desejar criar manualmente o arquivo de lista branca, você poderá usar um retorno de chamada para criá-lo. No entanto, se estiver usando o retorno de chamada, você só poderá adicionar um robô por vez.
Siga estas etapas:
  1. Abra o utilitário do probe (pu) para o hub (cliente de encapsulamento ou servidor de encapsulamento). Certifique-se de que os robôs para os quais você deseja transferir os certificados estejam apontando para esse hub.
  2. Selecione o retorno de chamada secure_transmission_add_robot_to_certs_whitelist na lista suspensa.
  3. Insira as seguintes informações:
    1. robotName: especifique o nome do robô de destino para o qual você deseja transferir o certificado. Esse robô deverá apontar para o hub em que você estiver executando esse retorno de chamada.
    2. commonName: especifica o endereço IP do robô de destino.
    3. expiry_in_days: especifique o número de dias após o qual você deseja que o certificado expire. Se você não fornecer nenhum valor, o padrão de expiração (1 ano) será usado.
  4. Execute a solicitação de comando.
O arquivo de lista branca robots_certs_details.cfg será criado na pasta ..\Nimsoft\hub\changes. O snippet a seguir mostra um exemplo do arquivo gerado:
<certs> <robotname> name=robotname_ANC commonName=10.xx.xxx.xx expiry_in_days=10 location= deployed=no </robotname> </certs>
O arquivo de lista branca foi criado com êxito. Siga o mesmo processo para criar os arquivos de lista branca para outros hubs. Observe que o valor do parâmetro deployed ainda é no porque a transferência não foi concluída. Da mesma forma, observe que o campo location está em branco, pois o certificado ainda não foi transferido.
Configurar o arquivo hub.cfg
Depois de criar o arquivo de lista branca, configure o arquivo hub.cfg para ativar a transmissão segura dos certificados. Você deve executar essa configuração para todos os hubs do domínio que desejar usar para transferir os certificados. Somente após a conclusão dessa configuração o processo para transferir os certificados com segurança será iniciado.
Siga estas etapas:
  1. Vá para o arquivo ..\Nimsoft\hub\hub.cfg. 
  2. Abra o arquivo e adicione os seguintes parâmetros:
    • enable_secure_cert_transmission: especifica se você deseja ativar o processo de transferência de certificados de um hub para o seu robô por meio de um canal seguro. Para fazer isso, adicione o valor como
      yes
      .
    • get_all_robots_certs: especifica se você deseja transferir os certificados para todos os robôs que estão apontando para o hub ou apenas para aqueles que já estão listados no arquivo de lista branca. O valor padrão é
      no
      , o que significa que o arquivo de lista branca é usado para identificar os robôs de destino. Se você alterar o valor para
      yes
      , o certificado será transferido para todos os robôs que apontarem para o hub, substituindo o arquivo de lista branca.
  3. Salve as alterações.
Você configurou com êxito o arquivo hub.cfg.
Após a configuração do arquivo hub.cfg, o processo de transferência será iniciado e executará as seguintes tarefas:
  • Os arquivos a seguir são adicionados à pasta ..\Nimsoft\hub\robots_certs no hub:
    • <nome_do_robô>.pem
    • robots_certs_details.cfg
      Esse arquivo será criado com base no arquivo de lista branca colocado na pasta ..\Nimsoft\hub\changes\.  Após a criação desse arquivo, o arquivo de lista branca será removido da pasta ..\Nimsoft\hub\changes\.  Quaisquer modificações feitas no arquivo ..\Nimsoft\hub\changes\robots_certs_details.cfg serão anexadas ao arquivo ..\Nimsoft\hub\robots_certs\robots_certs_details.cfg já criado.
    • robots_certs_details.cfx
  • Os parâmetros a seguir serão adicionados/atualizados no arquivo ..\Nimsoft\hub\robots_certs\robots_certs_details.cfg: 
    • password: especifica uma senha gerada aleatoriamente e criptografada.
    • location: especifica o local em que o arquivo de certificado gerado (<nome_do_robô>.pem) é armazenado. Por exemplo,
      location = robots_certs/<nome_do_robô>.pem
      .
    • deployed: atualiza o valor para yes.
  • Os certificados são transferidos para os robôs listados. O arquivo certificates.pem é copiado na pasta de destino ..\Nimsoft\robot\certs: 
    • <nome_do_robô>.pem
  • O arquivo robot.cfg é atualizado com o local dos certificados:
    • proxy_private_key=robot/certs/<nome_do_robô>.pem
    • proxy_ca_location= robot/certs/<nome_do_robô>.pem
    • proxy_cert=robot/certs/<nome_do_robô>.pem
    • proxy_private_key_password=/123456ZO7/0134QVSRf4
  • O arquivo hub.cfg adiciona um parâmetro robot_certs_issuing_hub. Esse parâmetro mostra o hub que está emitindo os certificados para os robôs de destino. Por exemplo,
    robot_certs_issuing_hub=/<nome_do_domínio>/<nome_do_hub>/<nome_do_robô>
Verificar a transmissão segura de certificados
Quando o arquivo hub.cfg estiver configurado adequadamente, ele iniciará o processo de transferência e colocará os certificados nos locais necessários. Você poderá verificar se a transferência ocorreu com êxito.
Siga estas etapas:
  1. Abra o arquivo ..\Nimsoft\hub\robots_certs_details.cfg. 
  2. Localize o valor do parâmetro
    deployed
    .
    • Se o valor for
      yes
      , significa que os certificados foram transferidos com êxito para os robôs de destino.
    • Se o valor for
      no
      , significa que os certificados não foram implantados com êxito.
Você verificou o status com êxito.
Recuperar informações do arquivo de lista branca
Você pode recuperar informações do arquivo de lista branca. Por exemplo, é possível obter todos os robôs que fazem parte do arquivo de lista branca.
Siga estas etapas:
  1. Abra o utilitário do probe (pu) para o hub (cliente de encapsulamento ou servidor de encapsulamento).
  2. Selecione o retorno de chamada secure_transmission_get_robot_certs_whitelist na lista suspensa.
  3. Execute o comando.
    Se desejar obter as informações de um robô específico, você poderá inserir o nome do robô no campo.
    Todas as informações incluídas no arquivo de lista branca serão recuperadas.
  4. Revise as informações.
Usar as APIs do uimapi
Também é possível usar o pacote uimapi mais recente lançado com o UIM 20.3.3 para executar estas tarefas:
  • Recuperar informações sobre o certificado do robô do arquivo de lista branca.
  • Adicionar informações sobre o certificado do robô ao arquivo de lista branca.
Recuperar informações sobre o certificado do robô do arquivo de lista branca
Você pode usar esse procedimento para obter as informações do certificado do robô do arquivo de lista branca de um hub específico.
Siga estas etapas:
  1. Acesse o uimapi.
  2. Expanda a seção hubs.
  3. Localize e expanda o seguinte terminal:
    GET /hubs/{domain}/{hub}/{robot}/robotcertswhitelist
  4. Insira as seguintes informações:
    1. domain: especifica o nome do domínio.
    2. hub: especifica o hub relacionado ao arquivo de lista branca.
    3. robot: especifica o nome do robô do hub.
    4. (Opcional) robotname: especifica o nome do robô específico cujas informações de certificado você deseja obter do arquivo de lista branca.
  5. Execute a API.
    A resposta é gerada e inclui as informações sobre os certificados do robô.
Adicionar informações sobre o certificado do robô ao arquivo de lista branca
Você pode usar esse procedimento para adicionar as informações do certificado do robô ao arquivo de lista branca de um hub específico.
Siga estas etapas:
  1. Acesse o uimapi.
  2. Expanda a seção hubs.
  3. Localize e expanda o seguinte terminal:
    POST /hubs/{domain}/{hub}/{robot}/robotcertswhitelist
  4. Insira as seguintes informações:
    1. domain: especifica o nome do domínio.
    2. hub: especifica o hub relacionado ao arquivo de lista branca.
    3. robot: especifica o nome do robô do hub.
    4. robotCert: especifica a carga que contém os dados robotname e commonName e a expiração do certificado em dias.
      <RobotCert> <commonName>10.xx.xxx.xxx</commonName> <expiry_in_days>3</expiry_in_days> <robotName>ANC</robotName> </RobotCert>
  5. Execute a API.
    A resposta é gerada e o certificado do robô é adicionado ao arquivo de lista branca. Todas as demais etapas do processo são seguidas da mesma maneira.