Você está aqui: Início > Produtos > Network Monitor (Pro) > Manual > Configuração HTTPS do servidor web

Configuração HTTPS da interface web

 

Por padrão, a interface web integrada do programa usa o protocolo HTTP, sem segurança. Os dados enviados do servidor web ao navegador podem ser interceptados e lidos com facilidade. Isso inclui IP e MAC dos dispositivos, nomes e locais dos switches, o log de eventos do programa, parâmetros das verificações e assim por diante. Em uma rede interna protegida, em que todo usuário pode ver esses dados, isso não é um problema.

Para conectar ao servidor web do programa por redes abertas (a internet), use o protocolo seguro HTTPS. O HTTPS cifra os dados enviados do servidor ao navegador com uma chave e um certificado emitido para o domínio por uma autoridade certificadora. A assinatura digital do certificado protege contra falsificação.

 

Interface web por conexão segura com o certificado de demonstração autoassinado

O servidor web do programa (Jetty) já vem configurado para HTTPS. Por padrão, fica na porta 8443, que pode ser alterada nas configurações do Jetty.

Arquivos de configuração:

  1. web\base\start.d\http-config.ini
    parâmetro jetty.httpConfig.securePort
  2. web\base\start.d\ssl.ini
    parâmetro jetty.ssl.port=8443

Para colocar o servidor Jetty em HTTPS, abra a pasta c:\Program Files (x86)\10-Strike Network Monitor Pro\web\base\start.d\, abra o arquivo https.ini, retire o comentário do parâmetro --modules=https e reinicie o serviço Jetty Service. Por padrão isso já está feito, e a interface web também responde em https://localhost:8443/netmonitor/netmonitor.html?locale=en.

Abra um navegador e informe este endereço:

https://localhost:8443/netmonitor/netmonitor.html?locale=en

O certificado que vem com o programa é autoassinado: não foi emitido por uma autoridade certificadora. Este certificado de demonstração foi gerado com o utilitário livre openssl.exe. Ele serve para mostrar o acesso HTTPS à interface web e não deve ser usado em redes desprotegidas, porque não é seguro. Sem um certificado próprio do domínio e da empresa, este certificado de demonstração serve em redes internas. É preciso incluir uma exceção para o navegador confiar nele.

É simples. Ao abrir a URL da interface web, o navegador avisa que a conexão não é segura. Estes passos ignoram o aviso e evitam que ele volte (exemplo no Firefox):

  1. Clique em Advanced.

    Aviso HTTPS do Firefox — Advanced



  2. Clique em Add Exception….

    Firefox — Add Exception



  3. No diálogo que abrir, clique em Confirm Security Exception.

    Firefox — Confirm Security Exception



Depois disso, o navegador continua carregando a interface web, e o trabalho segue por HTTPS cifrado, como com um certificado próprio. Como o navegador não confirma a autenticidade do certificado instalado, ele continua tratando a conexão como insegura.

Interface web em HTTPS com certificado autoassinado

 

! Não use o certificado de demonstração para acessar a interface web do programa em redes desprotegidas (por exemplo, pela internet)!

 

 

Instalação de um certificado assinado em 10 passos

Com um certificado próprio, emitido e assinado por uma autoridade certificadora, use-o no programa assim:

  1. A autoridade certificadora fornece dois arquivos: o certificado assinado (.crt) e a chave (.key). Copie-os para a pasta c:\Program Files (x86)\10-Strike Network Monitor Pro\web\base\Certificate\ e renomeie para jetty.crt e jetty.key. O arquivo jetty.crt precisa estar no formato PEM, mais ou menos assim:

    -----BEGIN CERTIFICATE-----
    MIIDzDCCArQCCQCXtcBm22AETzANBgkqhkiG9w0BAQQFADCBpzEbMBkGA1UEChMS
    MTAtU3RyaWtlIFNvZnR3YXJlMSQwIgYJKoZIhvcNAQkBFhVzdXBwb3J0QDEwLXN0
    ...
    xEDGxy6A+grWMG7p8Ct/KIIz0dUeoJRw8kQvV/eZsOIBiWfVo8OsEdBgShobZupG
    560vPhTn6pode036YdDHMQ==
    -----END CERTIFICATE-----


  2. Inclua o diretório \bin do Java instalado na variável de ambiente PATH. Por exemplo, c:\Program Files (x86)\Java\jre1.8.0_181\bin\.
  3. Inclua o diretório \bin do OpenSSL instalado na variável de ambiente PATH. Por exemplo, c:\Program Files (x86)\OpenSSL-Win32\bin\.
  4. Abra o arquivo 1_import_crt.bat no Bloco de Notas. O conteúdo é parecido com isto:

    keytool -genkeypair -alias jetty -keyalg RSA -keystore keystore.p12 -storetype PKCS12 -validity 365 -storepass netmonitor -keypass netmonitor -ext "SAN=dns:localhost,ip:127.0.0.1" -dname "CN=localhost, OU=Dev, O=Tenstrike, L=Saratov, ST=Saratov, C=RU"

    Substitua os valores padrão pelos dados do seu certificado e do domínio.

    Defina as senhas do keystore (o padrão é netmonitor):

    -storepass netmonitor -keypass netmonitor

    Em vez de

    dns:localhost,ip:127.0.0.1

    informe o endereço IP e o nome de domínio para os quais o certificado foi emitido.

    Atualize os parâmetros destacados nesta cadeia com os seus dados:

    SAN=dns:localhost,ip:127.0.0.1" -dname "CN=localhost, OU=Dev, O=Tenstrike, L=Saratov, ST=Saratov, C=RU

    Salve o arquivo.

     

  5. Execute 1_import_crt.bat.
    Um arquivo keystore.p12 novo deve aparecer na mesma pasta: é o repositório de chave e certificado do Jetty, já com o seu certificado.

    Execução de 1_import_crt.bat

     


  6. Em seguida, converta os arquivos .crt e .key para o formato PKCS12 antes de carregá-los no repositório criado. Execute 2_make_pks.bat. Informe a senha do keystore definida antes (padrão netmonitor), defina uma senha de exportação e confirme. Um arquivo jetty.pkcs12 novo deve aparecer na mesma pasta: chave e certificado juntos.

    Execução de 2_make_pks.bat

     



  7. Carregue no repositório executando 3_load_keys.bat. Informe a senha do keystore duas vezes. O tamanho e a data de keystore.p12, na mesma pasta, devem mudar. O arquivo é copiado automaticamente para c:\Program Files (x86)\10-Strike Network Monitor Pro\web\base\etc\. Confira pela data do arquivo.

    Execução de 3_load_keys.bat

     



  8. Abra o arquivo c:\Program Files (x86)\10-Strike Network Monitor Pro\web\base\start.d\ssl-context.ini em qualquer editor de texto.
    Encontre estas linhas:

    jetty.sslContext.keyStorePassword=OBF:...
    jetty.sslContext.keyManagerPassword=OBF:...
    jetty.sslContext.trustStorePassword=OBF:..


    Elas contêm a senha do keystore. A senha fica codificada (ofuscada): OBF:1kfx1k8c1ym91wn11y0q1vno1vne1y101wn51ym51k5u1kch.
    Substitua as senhas existentes pela que você definiu ao criar o keystore, depois de codificá-la do mesmo modo.
  9.  

  10. Para isso, abra 4_make_password.bat em qualquer editor e troque a senha "netmonitor" pela senha usada na criação do keystore. Atualize também a versão do Jetty no nome jetty-util-12.1.7.jar para a versão atual (confira o nome real do arquivo nessa pasta). Salve e execute 4_make_password.bat. Informe o nome de usuário e a senha definidos. Se o comando funcionar, a console mostra uma saída parecida com esta:

    Execução de 4_make_password.bat



  11. Selecione a linha que começa com OBF, como abaixo, e pressione Enter para copiar a senha para a área de transferência.

    Cópia da senha OBF

    Cole a senha no lugar do texto entre aspas nas linhas indicadas e salve ssl-context.ini.

     

  12. Execute 5_config_and_restart.bat — ele reinicia o serviço Jetty.
  13. Execução de 5_config_and_restart.bat

     

  14. Abra um navegador e informe: https://localhost:8443/netmonitor/?locale=en.

 

A interface web do programa passa a ser usada por uma conexão segura, indicada pelo ícone na barra de endereços.

Ícone de conexão segura na barra de endereços

 

Mais informações sobre a configuração de HTTPS no Jetty: https://jetty.org/#Loading_Keys_and_Certificates

 

O programa funciona no Windows XP/Vista/7/8.1/10/11 e Server 2003/2008/2012/2016/2019/2022. A versão de avaliação de 30 dias pode ser baixada e testada gratuitamente.