Par défaut, l'interface web intégrée fonctionne en HTTP non sécurisé. Les données envoyées par le serveur web au navigateur peuvent donc être interceptées et lues sans difficulté : adresses IP et MAC, noms et emplacements des commutateurs, journal des événements, paramètres des contrôles, etc. Sur un réseau interne protégé où chaque utilisateur a le droit de voir ces données, ce n'est pas un problème.
Pour vous connecter au serveur web du programme sur des réseaux ouverts (Internet), utilisez HTTPS. HTTPS chiffre les données envoyées au navigateur grâce à une clé et à un certificat délivré pour le domaine par une autorité de certification. La signature numérique du certificat le protège contre la falsification.
Utiliser l'interface web avec une connexion sécurisée et le certificat de démonstration auto-signé
Le serveur web du programme (Jetty) est déjà configuré pour HTTPS. Par défaut, il écoute sur le port 8443, modifiable dans les paramètres de Jetty.
Fichiers de configuration :
- web\base\start.d\http-config.ini
paramètre jetty.httpConfig.securePort
- web\base\start.d\ssl.ini
paramètre jetty.ssl.port=8443
Pour passer Jetty en HTTPS, ouvrez le dossier c:\Program Files (x86)\10-Strike Network Monitor Pro\web\base\start.d\, ouvrez https.ini, décommentez le paramètre --modules=https et redémarrez le service Jetty Service. C'est déjà le cas par défaut : l'interface est donc aussi disponible à l'adresse https://localhost:8443/netmonitor/netmonitor.html?locale=en.
Lancez un navigateur et saisissez l'adresse suivante :
Le certificat fourni avec le programme est auto-signé : il n'a pas été délivré par une autorité de certification. Ce certificat de démonstration a été généré avec l'utilitaire open source gratuit openssl.exe. Il sert à montrer l'accès HTTPS à l'interface web et ne doit pas être utilisé sur des réseaux non protégés, car il n'est pas sûr. En l'absence d'un certificat délivré pour votre domaine et votre société, vous pouvez l'utiliser sur les réseaux internes. Il faut alors ajouter une exception pour que le navigateur lui fasse confiance.
C'est simple. À l'ouverture de l'URL, le navigateur avertit que la connexion n'est pas sécurisée. Voici comment passer l'avertissement et ne plus le revoir (exemple Firefox) :
- Cliquez sur Avancé.

- Cliquez sur Ajouter une exception….

- Dans la boîte qui s'ouvre, cliquez sur Confirmer l'exception de sécurité.

Le navigateur charge ensuite l'interface web, et vous travaillez en HTTPS chiffré comme avec votre propre certificat. Comme il ne peut pas vérifier l'authenticité du certificat installé, il continue de le considérer comme non sûr.
! N'utilisez pas le certificat de démonstration pour accéder à l'interface web sur des réseaux non protégés (par exemple Internet) !
Installer un certificat signé en 10 étapes
Si vous disposez d'un certificat délivré et signé par une autorité de certification, vous pouvez l'utiliser avec le programme en suivant ces étapes :
- L'autorité de certification doit vous fournir deux fichiers : un certificat signé (.crt) et une clé (.key). Copiez-les dans le dossier c:\Program Files (x86)\10-Strike Network Monitor Pro\web\base\Certificate\ et renommez-les respectivement jetty.crt et jetty.key. Le fichier jetty.crt doit être au format PEM, à peu près comme ceci :
-----BEGIN CERTIFICATE-----
MIIDzDCCArQCCQCXtcBm22AETzANBgkqhkiG9w0BAQQFADCBpzEbMBkGA1UEChMS
MTAtU3RyaWtlIFNvZnR3YXJlMSQwIgYJKoZIhvcNAQkBFhVzdXBwb3J0QDEwLXN0
...
xEDGxy6A+grWMG7p8Ct/KIIz0dUeoJRw8kQvV/eZsOIBiWfVo8OsEdBgShobZupG
560vPhTn6pode036YdDHMQ==
-----END CERTIFICATE-----
- Ajoutez le répertoire \bin de Java à la variable d'environnement PATH. Par exemple c:\Program Files (x86)\Java\jre1.8.0_181\bin\.
- Ajoutez le répertoire \bin d'OpenSSL à la variable d'environnement PATH. Par exemple c:\Program Files (x86)\OpenSSL-Win32\bin\.
- Ouvrez le fichier 1_import_crt.bat dans le Bloc-notes. Vous y verrez quelque chose comme ceci :
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"
Remplacez les valeurs par défaut par celles de votre certificat et de votre domaine.
Définissez vos propres mots de passe de magasin de clés (par défaut, netmonitor) :
-storepass netmonitor -keypass netmonitor
À la place de
dns:localhost,ip:127.0.0.1
indiquez l'adresse IP et le nom de domaine pour lesquels le certificat a été délivré.
Mettez à jour les paramètres mis en évidence dans cette chaîne avec vos données :
SAN=dns:localhost,ip:127.0.0.1" -dname "CN=localhost, OU=Dev, O=Tenstrike, L=Saratov, ST=Saratov, C=RU
Enregistrez le fichier.
- Exécutez 1_import_crt.bat.
Un nouveau fichier keystore.p12 doit apparaître dans le même dossier : c'est le magasin de clés et de certificats de Jetty, qui contient déjà votre certificat.

- Convertissez ensuite les fichiers .crt et .key au format PKCS12 avant de les charger dans le magasin. Exécutez 2_make_pks.bat. Saisissez le mot de passe du magasin défini plus haut (par défaut netmonitor), choisissez un mot de passe d'export et confirmez-le. Un fichier jetty.pkcs12 doit apparaître dans le même dossier : il réunit la clé et le certificat.

- Chargez-le dans le magasin en exécutant 3_load_keys.bat. Saisissez deux fois le mot de passe du magasin. La taille et la date de keystore.p12, dans le même dossier, doivent changer. Ce fichier est copié automatiquement vers c:\Program Files (x86)\10-Strike Network Monitor Pro\web\base\etc\ : vérifiez-le grâce à la date du fichier.

- Ouvrez le fichier c:\Program Files (x86)\10-Strike Network Monitor Pro\web\base\start.d\ssl-context.ini dans un éditeur de texte.
Repérez ces lignes :
jetty.sslContext.keyStorePassword=OBF:...
jetty.sslContext.keyManagerPassword=OBF:...
jetty.sslContext.trustStorePassword=OBF:..
Elles contiennent le mot de passe du magasin de clés. Il est stocké sous une forme codée (obscurcie) : OBF:1kfx1k8c1ym91wn11y0q1vno1vne1y101wn51ym51k5u1kch.
Remplacez les mots de passe existants par celui que vous avez défini à la création du magasin, après l'avoir codé de la même façon. - Pour cela, ouvrez 4_make_password.bat dans un éditeur de texte et remplacez le mot de passe « netmonitor » par celui utilisé à la création du magasin. Mettez aussi à jour la version de Jetty dans le nom de fichier jetty-util-12.1.7.jar (vérifiez le nom réel dans ce dossier). Enregistrez et exécutez 4_make_password.bat. Saisissez le nom d'utilisateur et le mot de passe que vous avez définis. Si la commande réussit, la console affiche une sortie semblable à celle-ci :

- Sélectionnez la ligne qui commence par OBF, comme ci-dessous, et appuyez sur Entrée pour copier le mot de passe dans le presse-papiers.
Collez le mot de passe à la place du texte entre guillemets dans les lignes indiquées, puis enregistrez ssl-context.ini.
- Exécutez 5_config_and_restart.bat : il redémarre le service Jetty.
- Lancez un navigateur et saisissez : https://localhost:8443/netmonitor/?locale=en.

Vous utilisez maintenant l'interface web du programme sur une connexion sécurisée, comme l'indique l'icône dans la barre d'adresse.
Plus d'informations sur la configuration HTTPS dans Jetty : https://jetty.org/#Loading_Keys_and_Certificates
Le programme s'exécute sous Windows XP/Vista/7/8.1/10/11 et Server 2003/2008/2012/2016/2019/2022. Vous pouvez télécharger et essayer gratuitement la version d'essai de 30 jours.
