Ir para o conteúdo

Instalação do agente de gravação para Windows

O agente de gravação Windows é utilizado pelo CyberElements Bastion para adicionar novas funcionalidades às sessões RDP:

  • Possibilidade de filtrar os fluxos TCP e UDP acessíveis ao utilizador
  • Possibilidade de desencadear a gravação da sessão de qualquer utilizador que se ligue ao servidor sem passar pelo portal de utilizador nem pelo cliente Desktop (funcionalidade direct access)

Além disso, durante as sessões dos utilizadores são capturados eventos adicionais:

  • Abertura de janelas
  • Fecho de janelas
  • Início de programas
  • Fecho de programas
  • Conteúdo da área de transferência
  • Atividade do utilizador

Pré-requisitos

Compatibilidade do cliente

Para saber se o agente é compatível com os diferentes sistemas operativos Microsoft Windows, consulte a matriz de compatibilidade.

O agente de gravação exige alguns pré-requisitos para funcionar corretamente. Alguns dizem apenas respeito à funcionalidade de gravação com agente das aplicações RDP e HTML5 RDP, outros ao acesso direto com agente.

Pré-requisitos gerais

O agente de gravação envia a gravação da sessão do utilizador para o CyberElements Bastion, ligando-se ao Edge Gateway na porta TCP 8443. Para isso, é necessário que o fluxo de rede entre as duas máquinas esteja aberto.

Para devolver a gravação ao Edge Gateway de forma segura, o agente de gravação estabelece com ele uma ligação segura através de TLS. O TLS baseia-se na utilização de certificados e devem ser cumpridas as restrições seguintes para que a ligação seja considerada fiável e segura:

  • O certificado do servidor, neste caso o Edge Gateway, não deve estar expirado (data máxima de validade).
  • O certificado do servidor, neste caso o Edge Gateway, deve ser emitido por uma autoridade de certificação reconhecida como de confiança pela máquina onde o agente de gravação está instalado.

    Informação adicional

    O servidor onde o agente de gravação está instalado deve ter, no mínimo, a autoridade de certificação (CA) raiz do certificado do servidor de gravação no seu armazém local de autoridades de certificação de confiança.

    Por conseguinte, é necessário:

    1. Recuperar a CA raiz do certificado do serviço de gravação no Edge Gateway.
    2. Carregar essa CA no servidor onde o agente de gravação está instalado.
    3. Instalar a CA no armazém de certificados «Trusted Root Certification Authorities» da máquina local.
    Exemplo com PowerShell

    Um certificado em formato .cer pode ser facilmente importado através do PowerShell.
    Para isso, abra um terminal PowerShell como administrador da máquina e execute o comando seguinte:

    1
    Import-Certificate -FilePath "<PAHT_TO_CERT>" -CertStoreLocation "Cert:\LocalMachine\Root"
    
    Substitua <PATH_TO_CERT> pelo caminho do ficheiro do certificado.

    Exemplo com PowerShell para o certificado Systancia, sem enviar ficheiros

    Este exemplo consiste em instalar a CA raiz da Systancia, que é utilizada pelos clientes CyberElements Bastion que empregam certificados fornecidos pela Systancia.

    Também é possível importar o certificado sem ter de enviar ou transferir o ficheiro para a máquina onde o agente de gravação está instalado.
    Para isso, abra um terminal PowerShell como administrador da máquina e execute os comandos seguintes:

     1
     2
     3
     4
     5
     6
     7
     8
     9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    # Systancia Root certificate
    $base64Cert = "MIIFIDCCBAigAwIBAgIBADANBgkqhkiG9w0BAQUFADCBjTELMAkGA1UEBhMCRlIx
    FDASBgNVBAoTC0lQZGl2YSBSb290MR0wGwYDVQQLExRJUGRpdmEgU2VjdXJpdHkg
    RGVwdDEqMCgGA1UEAxMhSVBkaXZhIFJvb3QgQ2VydGlmaWNhdGUgQXV0aG9yaXR5
    MR0wGwYJKoZIhvcNAQkBFg5wa2lAaXBkaXZhLmNvbTAeFw0wNTA4MjIxNTAwMzla
    Fw0zMDA4MjIxNTAwMzlaMIGNMQswCQYDVQQGEwJGUjEUMBIGA1UEChMLSVBkaXZh
    IFJvb3QxHTAbBgNVBAsTFElQZGl2YSBTZWN1cml0eSBEZXB0MSowKAYDVQQDEyFJ
    UGRpdmEgUm9vdCBDZXJ0aWZpY2F0ZSBBdXRob3JpdHkxHTAbBgkqhkiG9w0BCQEW
    DnBraUBpcGRpdmEuY29tMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEA
    ua59tx+RkIPZbGaSwkV0w5fuPBpY3sbLTk/eR2uN7j9zMu0pq38LfibCVsNGlifh
    GfT5CEbrNL7KvlEVY/It1QluYxNgknlcBP1roJG/xHNcUNmbvCFYLy9N3Nd0J/gC
    Vd8tdB4exqyKEoNuqX18rLpSJJOUZdQCeGdF9r+w6vmHdRMeVS44qIiBPv9Bxzgf
    GXBxAlSqfuDDJ3eZEMsWF/kJrbm4Uhav2ACl5qjHgSSTKMoGoEWOJNkB7Mq/khxc
    TnixIpM2s1rpEfhIetPo4BHsyKv7wqWrS6ouwu5AbzT5t3UqaN77CLqcZJGQ3vC0
    IGKBuEcwigd7W6qkX1/XMwIDAQABo4IBhzCCAYMwDwYDVR0TAQH/BAUwAwEB/zAd
    BgNVHQ4EFgQU+lu7XBGohR2DKD+D+abZEODRHjkwgboGA1UdIwSBsjCBr4AU+lu7
    XBGohR2DKD+D+abZEODRHjmhgZOkgZAwgY0xCzAJBgNVBAYTAkZSMRQwEgYDVQQK
    EwtJUGRpdmEgUm9vdDEdMBsGA1UECxMUSVBkaXZhIFNlY3VyaXR5IERlcHQxKjAo
    BgNVBAMTIUlQZGl2YSBSb290IENlcnRpZmljYXRlIEF1dGhvcml0eTEdMBsGCSqG
    SIb3DQEJARYOcGtpQGlwZGl2YS5jb22CAQAwCwYDVR0PBAQDAgEGMBkGA1UdEQQS
    MBCBDnBraUBpcGRpdmEuY29tMBkGA1UdEgQSMBCBDnBraUBpcGRpdmEuY29tMBEG
    CWCGSAGG+EIBAQQEAwIABzA+BglghkgBhvhCAQ0EMRYvSVBkaXZhIFJvb3QgQ2Vy
    dGlmaWNhdGlvbiBBdXRob3JpdHkgQ2VydGlmaWNhdGUwDQYJKoZIhvcNAQEFBQAD
    ggEBACaAgBQK7TATXieb9OdKm+l7/GpePo8f2bRKnkqeRS+HXBKYkvqVJdbJnhJm
    YPOdmhr9ATzt+488tQREAGzqPCp5eiVExPgvomNeG77X57KqbgCA1F7zGJqjP1FL
    771FIWvFXp80ReM/zhcM+MY3sa5LADgOEl5NhoMNHT8AhLKwZ81j5nuwxyG9ICCN
    5GjwgsnK/agmum4+RKeybIWuC/JTsSnu5OImXsmrlUiakp2l+VsZ1rRRNRNUlSbg
    Q3T8kj5ajB0lv2I0kj4fN9wDxzdHEn7nEAmv0t6Y5Te0g/VK3VWhuqeLStaahgip
    hmOVxbu5Ijfug5/3Eemep34NsYk="
    
    # Convert the certificate and store it in memory
    $certBytes = [Convert]::FromBase64String($base64Cert)
    
    # Create a certificate object
    $cert = New-Object System.Security.Cryptography.X509Certificates.X509Certificate2
    $cert.Import($certBytes)
    
    # Open the trusted root certificate store on the local machine and add the Systancia root certificate
    $store = New-Object System.Security.Cryptography.X509Certificates.X509Store("Root", "LocalMachine")
    $store.Open([System.Security.Cryptography.X509Certificates.OpenFlags]::ReadWrite)
    $store.Add($cert)
    $store.Close()
    

    Para utilizar este método com outra CA, altere o valor da variável base64Cert para o certificado da sua escolha codificado em base 64.

  • O certificado do servidor, neste caso o Edge Gateway, não deve estar revogado.

  • A máquina onde o agente de gravação está instalado deve poder contactar o servidor, neste caso o Edge Gateway, com um nome DNS ou um endereço IP coberto pelo certificado do servidor através do seu Common Name (CN).

Pré-requisitos específicos das aplicações RDP com agente utilizadas num posto de utilizador macOS ou Ubuntu

Atenção

Os pré-requisitos seguintes só são necessários se o utilizador iniciar uma aplicação RDP com agente e o seu posto não for Windows (macOS ou Ubuntu).

Se os utilizadores do CyberElements Bastion tiverem postos de trabalho exclusivamente Windows ou, na sua falta, utilizarem exclusivamente aplicações HTML5 RDP, os pré-requisitos seguintes podem ser ignorados.

As chaves de registo seguintes são necessárias no servidor de destino onde o agente de gravação está implementado.

Em primeiro lugar, a primeira chave desativa a lista de programas de arranque autorizados (documento da Microsoft). Por predefinição, uma máquina Windows apenas autoriza explorer.exe como programa de arranque.

1
2
[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Terminal Server\TSAppAllowList]
"fDisabledAllowList"=dword:00000001

Se a máquina não for um servidor RDS, recomenda-se sempre aplicar a chave de registo seguinte para permitir que o agente de gravação abra como programa de arranque:

1
2
[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Terminal Server]
"HonorLegacySettings"=dword:00000001

Requisitos específicos do acesso direto

Funcionalidade de acesso direto

A funcionalidade de acesso direto permite desencadear uma gravação da sessão do utilizador nos acessos RDP ou de consola (ligação física à máquina ou através do modo consola do hipervisor) que não passam diretamente pelo CyberElements Bastion.

Se o utilizador tiver permissão para aceder ao servidor, a sua sessão será gravada. Se não for o caso, por predefinição o utilizador será desligado.

Para que o agente de gravação funcione em modo de acesso direto, é necessário um certificado x509. Esse certificado deve cumprir os requisitos seguintes:

  • O certificado deve continuar válido (período de validade não expirado).
  • O certificado deve ser do tipo (campo de utilização avançada de chave) client authentication (OID: 1.3.6.1.5.5.7.3.2).
  • O certificado não deve estar revogado.
  • As restrições decorrentes do nível de segurança 2 do OpenSSL implicam que:
    • O certificado deve ter uma chave privada de, no mínimo, 2048 bits com as cifras RSA, DSA e DH; nas chaves de curva elíptica (ECC), devem ter no mínimo 224 bits.
    • A assinatura do certificado não deve ser MD5 nem SHA-1 (é preferível SHA-512).
  • O servidor de gravação utilizará o campo Common Name (CN) para identificar o certificado e, por conseguinte, a máquina onde é desencadeada uma gravação direta. Este campo deve estar preenchido.

Instalação manual num único servidor

Direitos de administrador necessários

São necessários direitos de administrador para instalar o agente.

Antes de instalar o agente, tem de o transferir a partir da consola de administração:

  1. Aceda ao espaço de trabalho «Configurations» através do botão situado no canto superior esquerdo:
  2. Abra o mosaico «Toolbox»
  3. Selecione o instalador correspondente ao sistema operativo desejado no primeiro separador, «Integration Tools»

Depois de transferir o agente, siga estes passos:

  1. Execute o instalador setup_CleanroomAgent.exe na máquina onde deseja instalar o agente de gravação.
  2. Clique em Next na primeira janela:
  3. Aceite as condições de utilização:
  4. No terceiro ecrã, altere o diretório de instalação do agente, se necessário:
  5. O quarto ecrã apresenta as opções de instalação do agente em modo de acesso direto:
    Enable Direct Access

    Ativação da funcionalidade de acesso direto do agente.

    Recorded Sessions

    Campo livre que aceita três valores distintos, para definir quando deve ser acionada a gravação dos acessos diretos:

    • none: não será efetuada nenhuma gravação dos acessos diretos.
    • remote: qualquer acesso RDP à máquina aciona a gravação.
    • all: tanto os acessos RDP como os acessos por consola (acesso físico à máquina ou a partir do modo consola do hipervisor) acionam a gravação.
    Logoff On Failure

    Opção para desligar a sessão do utilizador se a gravação não puder ser iniciada, for interrompida, ou se o utilizador não estiver autorizado a ligar-se à máquina.

    Recomendação

    Nas primeiras instalações, ou se não houver a certeza de que os pré-requisitos são cumpridos, é preferível deixar esta opção não selecionada. Caso contrário, se existir um problema com os pré-requisitos ou com a configuração, as novas ligações ao servidor desligam imediatamente o utilizador (de acordo com a configuração de Recorded Sessions).

    Informação

    A funcionalidade de acesso direto também pode ser ativada após a instalação. Para isso, consulte a configuração das chaves de registo do agente.

  6. Por último, no quinto ecrã, a instalação começa depois de clicar no botão Install:

Uma vez instalado, o agente requer uma configuração adicional: Configurar o agente

Implementação a partir da consola de administração

Direitos de administrador necessários

São necessários direitos de administrador na máquina de destino para instalar o agente.

Pré-requisito adicional

O agente é implementado na máquina de destino através do protocolo SMB. Por conseguinte, o fluxo SMB (TCP 445) tem de estar aberto entre o Edge Gateway e esse servidor de destino.

Implementação num único servidor

O agente pode ser implementado individualmente a partir de dois locais da consola de administração. Isso permite pré-configurá-lo para dois tipos de funcionamento:

  1. Utilização com aplicações RDP e HTML5 RDP: preparar o agente para que possa gravar as sessões dos utilizadores que executam aplicações RDP e HTML5 RDP.
  2. Utilização em modo de acesso direto: preparar o agente para que possa gravar, além do funcionamento anterior, as sessões dos utilizadores que se ligam diretamente ao servidor RDP.

Para utilização com aplicações RDP e HTML5 RDP

Quando uma aplicação RDP ou HTML5 RDP está configurada para funcionar com o agente, ao selecioná-la fica disponível a possibilidade de o implementar:

Depois de clicar no botão de implementação do agente, aparece uma nova janela que solicita a informação seguinte:

Target server

Endereço IP ou nome DNS do servidor de destino no qual o agente de gravação deve ser implementado. Por predefinição, este campo utiliza a informação do servidor indicado na aplicação RDP ou HTML5 RDP.

Target drive

Letra da unidade do Windows na qual o agente será implementado. Habitualmente, é a letra C, para implementar o agente na unidade C:\.

Target directory

Caminho do diretório de instalação do agente; se não existir, será criado. A localização predefinida do agente CyberElements Bastion é Program Files (x86)\Systancia\Safe.

Gateway

Indique o Edge Gateway a utilizar para a implementação do agente.

Domain

Nome do domínio onde se encontra a conta de administração utilizada para instalar o agente.

Username

Nome da conta de administrador a utilizar para instalar o agente. Esta conta tem de poder instalar programas no servidor de destino.

Password

Palavra-passe da conta de administrador.

Depois de introduzida toda a informação, a implementação do agente pode ser iniciada. Uma última janela indica se a implementação do agente no servidor de destino foi bem-sucedida ou não.

Pode ainda ser necessária uma configuração adicional. Consulte a secção seguinte: Configurar o agente

Para utilização em modo de acesso direto + aplicações RDP e HTML5 RDP

A partir de Machine management do ecrã de acessos diretos, um botão permite implementar o agente:

Depois de clicar no botão de implementação do agente, aparece uma nova janela que solicita a informação seguinte:

Target server

Endereço IP ou nome DNS do servidor de destino no qual o agente de gravação deve ser implementado. Por predefinição, este campo utiliza a informação do servidor indicado na aplicação RDP ou HTML5 RDP.

Target drive

Letra da unidade do Windows na qual o agente será implementado. Habitualmente, é a letra C, para implementar o agente na unidade C:\.

Target directory

Caminho do diretório de instalação do agente; se não existir, será criado. A localização predefinida do agente CyberElements Bastion é Program Files (x86)\Systancia\Safe.

Gateway

Indique o Edge Gateway a utilizar para a implementação do agente.

Domain

Nome do domínio onde se encontra a conta de administração utilizada para instalar o agente.

Username

Nome da conta de administrador a utilizar para instalar o agente. Esta conta tem de poder instalar programas no servidor de destino.

Password

Palavra-passe da conta de administrador.

Sessions to record

Definição do contexto em que ocorre uma gravação de sessão:

  1. Record remote sessions (RDS) only: apenas os acessos remotos RDP são objeto de gravação.
  2. Record all sessions: as sessões remotas RDP e as sessões em modo consola (acesso físico à máquina ou a partir do modo consola do hipervisor) são objeto de gravação.
  3. Record no sessions: nenhuma ligação direta ao servidor dá origem a uma gravação; no entanto, o agente pode continuar a ser utilizado para os acessos através de aplicações RDP e HTML5 RDP.
Use a different certificate than the target

Opção para definir o nome do certificado que o agente utiliza para se autenticar junto do Edge Gateway. Se não for definido, o agente procura um certificado com o nome do servidor.

Close the session if no gateway could be contacted

Opção para desligar e terminar a sessão do utilizador (de acordo com a configuração de Sessions to record) se o Edge Gateway estiver inacessível ou se o utilizador não estiver autorizado a ligar-se ao servidor.

Recomendação

Nas primeiras instalações, ou se não houver a certeza de que os pré-requisitos são cumpridos, é preferível deixar esta opção não selecionada. Caso contrário, se existir um problema com os pré-requisitos ou com a configuração, as novas ligações ao servidor desligam imediatamente o utilizador (de acordo com a configuração de Sessions to record).

Depois de introduzida toda a informação, a implementação do agente pode ser iniciada. Uma última janela indica se a implementação do agente no servidor de destino foi bem-sucedida ou não.

Pode ainda ser necessária uma configuração adicional. Consulte a secção seguinte: Configurar o agente

Implementação em vários servidores

Informação

Este método permite apenas implementar o agente de gravação para funcionar com aplicações RDP e HTML5 RDP. Para que o agente funcione em modo de acesso direto, é necessário implementar a configuração por outros meios (por exemplo, através de GPO).

Pré-requisito adicional

A implementação em vários servidores só pode ser efetuada em máquinas que pertençam a um domínio AD, ele próprio configurado nos Authentication Domains do CyberElements Bastion com a opção Allow RDS Server Management ativada.

A partir de Management of RDS servers, adicione um ou mais servidores RDS novos:

Procure e adicione os servidores nos quais o agente de gravação deve ser implementado, arrastando-os e largando-os no painel da direita. Selecione a opção Deploy an agent:

Configure a informação de implementação do agente:

Target drive

Letra da unidade do Windows na qual o agente será implementado. Habitualmente, é a letra C, para implementar o agente na unidade C:\.

Target directory

Caminho do diretório de instalação do agente; se não existir, será criado. A localização predefinida do agente CyberElements Bastion é Program Files (x86)\Systancia\Safe.

Gateway

Indique o Edge Gateway a utilizar para a implementação do agente.

Domain

Nome do domínio onde se encontra a conta de administração utilizada para instalar o agente.

Username

Nome da conta de administrador a utilizar para instalar o agente. Esta conta tem de poder instalar programas no servidor de destino.

Password

Palavra-passe da conta de administrador.

Pode ainda ser necessária uma configuração adicional. Consulte a secção seguinte: Configurar o agente