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:
- web\base\start.d\http-config.ini
parâmetro jetty.httpConfig.securePort
- 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:
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):
- Clique em Advanced.

- Clique em Add Exception….

- No diálogo que abrir, clique em 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.
! 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:
- 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-----
- 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\.
- Inclua o diretório \bin do OpenSSL instalado na variável de ambiente PATH. Por exemplo, c:\Program Files (x86)\OpenSSL-Win32\bin\.
- 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.
- 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.

- 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.

- 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.

- 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. - 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:

- Selecione a linha que começa com OBF, como abaixo, e pressione Enter para copiar a senha para a área de transferência.
Cole a senha no lugar do texto entre aspas nas linhas indicadas e salve ssl-context.ini.
- Execute 5_config_and_restart.bat — ele reinicia o serviço Jetty.
- 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.
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.
