<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom"><channel><title>Windows 2003 on Zwindler's Reflection</title><link>https://blog.zwindler.fr/tags/windows-2003/</link><description>Recent content in Windows 2003 on Zwindler's Reflection</description><generator>Hugo -- gohugo.io</generator><language>fr</language><copyright>Licensed under CC BY-SA 4.0</copyright><lastBuildDate>Thu, 09 Feb 2017 13:00:44 +0000</lastBuildDate><atom:link href="https://blog.zwindler.fr/tags/windows-2003/index.xml" rel="self" type="application/rss+xml"/><item><title>Problème de pointeur souris sur la console dans OracleVM 3.4</title><link>https://blog.zwindler.fr/2017/02/09/probleme-de-pointeur-souris-sur-la-console-dans-oraclevm-3-4/</link><pubDate>Thu, 09 Feb 2017 13:00:44 +0000</pubDate><guid>https://blog.zwindler.fr/2017/02/09/probleme-de-pointeur-souris-sur-la-console-dans-oraclevm-3-4/</guid><description>&lt;img src="https://blog.zwindler.fr/2017/02/SimpleMouse.gif" alt="Featured image of post Problème de pointeur souris sur la console dans OracleVM 3.4" /&gt;&lt;h2 id="oraclevm-quelques-faiblesses-sur-la-console-comme-les-autres"&gt;OracleVM, quelques faiblesses sur la console, comme les autres&amp;hellip;
&lt;/h2&gt;&lt;p&gt;Dans la série des articles sur OracleVM avant que je n’en reparle plus (le PoC est &lt;del&gt;terminé&lt;/del&gt; enterré chez nous), voici un petit retour sur un des problèmes que j’ai pu rencontrer.&lt;/p&gt;
&lt;p&gt;Comme beaucoup de technologies de visualisation d’écrans consoles pas totalement maîtrisées (ça vaut pour les vieux ILO en Java ou autres : que de bons souvenirs), le pointeur de la souris fait littéralement n’importe quoi. Généralement c’est décalé mais pas de manière linéaire sur tout l’écran pour bien qu’on se marre.&lt;/p&gt;
&lt;p&gt;&lt;img src="https://blog.zwindler.fr/2017/02/SimpleMouse.gif"
loading="lazy"
&gt;&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;Crédits : GameDev.net&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;Le problème vient du client web VNC proposé par Oracle VM Manager et est un problème archi-connu mais pour autant pas totalement résolu.&lt;/p&gt;
&lt;h2 id="accéder-directement-au-flux-vnc"&gt;Accéder directement au flux VNC
&lt;/h2&gt;&lt;p&gt;Comme je l’explique juste avant, il arrive couramment que les technologies de virtualisations intégrées vers l’écran (virtuel) de la machine virtuelle soient mal calibrées. Mais c’est encore plus courant lorsque ce déport d’écran est réalisé avec un connexion VNC elle même affichée dans une console HTTP.&lt;/p&gt;
&lt;p&gt;Un moyen de contourner le problème de ce type de clients VNC web (et ça vaut pour d’autres outils qui utilisent les mêmes techniques) est de simplement se « brancher » sur le flux VNC sans passer par la console web. A priori sur les versions précédentes de OVMM, il était possible de se brancher directement sur le flux VNC, tout simplement parce que le serveur VNC était en écoute sur l’interface LAN.&lt;/p&gt;
&lt;p&gt;Au delà du fait que ce soit du bidouillage, cette technique n’est aujourd’hui plus permise depuis OVMM 3 et il faut donc &amp;hellip; bidouiller encore plus ! Voici ce que propose le support d’Oracle :&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;You can redirect the remote port to local using the ssh(1) command. For example, the VM guest vnc port is 5900 on Oracle VM Server and listening on localhost:&lt;/p&gt;
&lt;p&gt;# xm list -l 2|grep 59&lt;br&gt;
(location 127.0.0.1:5900)&lt;/p&gt;
&lt;p&gt;Then you can run this to redirect the port to your desktop:&lt;/p&gt;
&lt;p&gt;$ ssh -L 12345:localhost:5900 root@OVS&lt;/p&gt;
&lt;p&gt;The « 5900 » port will be redirected to « 12345 » of your local desktop, so that you can run the following command to connect the guest console:&lt;/p&gt;
&lt;p&gt;$ vncviewer localhost:12345&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;En gros, ce qu’il faut en comprendre, c’est que le serveur VNC n’est maintenant plus disponible depuis autre part que localhost et qu’on peut contourner la limitation en faisant un tunnel SSH. Rien de bien sorcier, mais est ce qu’il n’y a pas un peu plus simple ?&lt;/p&gt;
&lt;h2 id="la-vraie-solution"&gt;La vraie solution
&lt;/h2&gt;&lt;p&gt;En fait si.&lt;/p&gt;
&lt;p&gt;Au début, je n’ai même pas cherché à appliquer cette solution car elle ne s’applique normalement que pour les machines virtuelles Windows.&lt;/p&gt;
&lt;p&gt;Si vous avez un problème du type de celui que je décris sur une VM Windows, on vous conseille chez Oracle d’ajouter un paramètre à la machine virtuelle qui permet de mieux suivre les mouvements de la souris.&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;Add below your config to force the device model to use absolute (tablet) coordinates:&lt;/p&gt;
&lt;p&gt;usbdevice=’tablet’&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;Mais sur le papier, la solution est bien indiquée « For Windows virtual machines (guests) ». Mon problème moi, c’était sur les machines virtuelles CentOS, indiquées comme pas impactées par ce genre de problèmes.&lt;/p&gt;
&lt;h2 id="bon-jai-bien-compris-ou-tu-veux-en-venir-comment-on-modifie-ce-paramètre-"&gt;Bon j’ai bien compris ou tu veux en venir. Comment on modifie ce paramètre ?
&lt;/h2&gt;&lt;p&gt;En fait, c’est TRES mal indiqué dans la documentation. Il s’agit de la configuration de la machine virtuelle, &lt;strong&gt;VM éteinte&lt;/strong&gt;, mais où faire la modification ? Ahah ! Mystère !&lt;/p&gt;
&lt;p&gt;La documentation fait elle état d’un fichier de configuration de la machine virtuelle mais je n’ai pas su trouver ce fichier. Cependant, et &lt;strong&gt;ce n’était pas dit dans la documentation&lt;/strong&gt; on peut modifier ce paramètre directement depuis la GUI de Oracle VM Manager !&lt;/p&gt;
&lt;p&gt;Dans les paramètres de la machine virtuelle, dans l’onglet Configuration, on trouve le paramètre &lt;strong&gt;Mouse Device Type&lt;/strong&gt;. Sur les machines Windows, comme le problème est connu, il me semble d’ailleurs que le paramètre est passé à « tablet » par défaut.&lt;/p&gt;
&lt;p&gt;&lt;img src="https://blog.zwindler.fr/2016/10/oraclevm45.avif"
loading="lazy"
&gt;&lt;/p&gt;
&lt;p&gt;Une fois validé, on peut vérifier que cette configuration a effectivement été modifiée en affichant ce fameux &lt;strong&gt;VM Config File&lt;/strong&gt; que je ne sais pas où trouver :&lt;/p&gt;
&lt;p&gt;&lt;img src="https://blog.zwindler.fr/2016/10/oraclevm46.avif"
loading="lazy"
&gt;&lt;/p&gt;
&lt;p&gt;&lt;img src="https://blog.zwindler.fr/2016/10/oraclevm47.avif"
loading="lazy"
&gt;&lt;/p&gt;
&lt;p&gt;A partir de là, la souris ne devrait plus vous faire de blagues. Même si avec Oracle VM, on ne sait jamais trop ;-) #Troll&lt;/p&gt;
&lt;h2 id="source"&gt;Source
&lt;/h2&gt;&lt;ul&gt;
&lt;li&gt;&lt;a class="link" href="https://support.oracle.com/rs?type=doc&amp;amp;id=1548825.1" target="_blank" rel="noopener"
&gt;How To Access Guest Console In OVM 3 Using VNC Without Using OVM Manager&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a class="link" href="https://support.oracle.com/rs?type=doc&amp;amp;id=466379.1" target="_blank" rel="noopener"
&gt;Mouse Pointer Fails to Track Cursor on a VNC / Oracle VM Manager Window&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;</description></item><item><title>[Tutoriel] Installation de deux clients NSClient++ sur le même serveur</title><link>https://blog.zwindler.fr/2015/10/17/tutoriel-installation-de-deux-clients-nsclient-sur-le-meme-serveur/</link><pubDate>Sat, 17 Oct 2015 10:30:00 +0000</pubDate><guid>https://blog.zwindler.fr/2015/10/17/tutoriel-installation-de-deux-clients-nsclient-sur-le-meme-serveur/</guid><description>&lt;img src="https://blog.zwindler.fr/2015/07/nsclient-logo.webp" alt="Featured image of post [Tutoriel] Installation de deux clients NSClient++ sur le même serveur" /&gt;&lt;h2 id="le-problème"&gt;Le problème
&lt;/h2&gt;&lt;p&gt;Je suis tombé sur un problème amusant l’autre jour. Un serveur sur lequel deux entités se partageaient l’administration voulaient toutes les deux superviser le serveur avec &lt;a class="link" href="http://www.nsclient.org" target="_blank" rel="noopener"
&gt;NSClient++&lt;/a&gt;, mais chacune avec leur propre configuration et leurs propres plugins.&lt;/p&gt;
&lt;p&gt;En théorie, il n’est pas possible d’installer deux fois le client sur le même serveur Windows. En fait, si on relance l’installeur une seconde fois, il nous proposera simplement de modifier l’installation existante.&lt;/p&gt;
&lt;p&gt;&lt;img src="https://blog.zwindler.fr/2015/07/01_nsclient.avif"
loading="lazy"
alt="Impossible d’installer un deuxième client dans un autre répertoire via l’installeur .msi"
&gt;&lt;/p&gt;
&lt;h2 id="retour-aux-sources"&gt;Retour aux sources
&lt;/h2&gt;&lt;p&gt;Cependant, on peut s’en sortir avec les sources. Je pars du principe que le premier client a été installé simplement à partir du MSI. Et pour pouvoir installer le deuxième client, il faut récupérer une archive .zip sur le site (Source).&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a class="link" href="http://www.nsclient.org/download/" target="_blank" rel="noopener"
&gt;www.nsclient.org/download&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;On peut ensuite le déposer dans &lt;strong&gt;C:\Program Files\&lt;/strong&gt;, en prenant soin de lui donner un autre nom que celui du client installé via le fichier .msi (&lt;strong&gt;C:\Program Files\NSclient++\&lt;/strong&gt; par défaut).&lt;/p&gt;
&lt;p&gt;Pour l’exemple, j’ai pris &lt;strong&gt;C:\Program Files\NSClientNew\.&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;&lt;img src="https://blog.zwindler.fr/2015/07/02_nsclient.avif"
loading="lazy"
alt="Nos deux dossiers cohabitent"
&gt;&lt;/p&gt;
&lt;p&gt;&lt;img src="https://blog.zwindler.fr/2015/07/03_nsclient.avif"
loading="lazy"
alt="Lancer le binaire à la main ne fonctionnera pas non plus"
&gt;&lt;/p&gt;
&lt;h2 id="configurer-le-second-nsclient"&gt;Configurer le second NSClient
&lt;/h2&gt;&lt;p&gt;Modifiez ensuite le fichier de configuration &lt;strong&gt;C:\Program Files\NSClientNew\NSC.ini&lt;/strong&gt; pour que les ports ne soient pas identiques aux ports du premier client.&lt;/p&gt;
&lt;pre tabindex="0"&gt;&lt;code&gt;[NSClient]
port=12481
[NRPE]
port=56661
...
&lt;/code&gt;&lt;/pre&gt;&lt;p&gt;Dans un prompt administrateur, lancer la commande suivante pour créer un service Windows spécifique pour le second client.&lt;/p&gt;
&lt;pre tabindex="0"&gt;&lt;code&gt;PS C:\Program Files\NSClientNew&amp;gt; sc.exe create NSClientNew binPath= &amp;#39;C:\Program Files\NSClientNew\NSClient++.exe&amp;#39; start=  auto DisplayName= &amp;#39;NSClient++ New&amp;#39;
[SC] CreateService réussite(s)
&lt;/code&gt;&lt;/pre&gt;&lt;p&gt;NSClient++ devrait maintenant apparaître dans la liste&lt;/p&gt;
&lt;p&gt;&lt;img src="https://blog.zwindler.fr/2015/07/05_nsclient.avif"
loading="lazy"
alt="On a bien 2 lignes NSClient&amp;#43;&amp;#43; et NSClient&amp;#43;&amp;#43;New"
&gt;&lt;/p&gt;
&lt;p&gt;Si tout se passe bien, on peut maintenant démarrer le service et les ports en écoute doivent apparaître. Le log &lt;strong&gt;C:\Program Files\NSClientNew\nsclient.log&lt;/strong&gt; doit afficher la ligne suivante&lt;/p&gt;
&lt;pre tabindex="0"&gt;&lt;code&gt;2015-07-16 15:51:26: message:modules\FileLogger\FileLogger.cpp:86: Starting to log for: NSClient++ - 0.3.9.330 2011-09-02
&lt;/code&gt;&lt;/pre&gt;&lt;p&gt;Si on a l’entrée suivante, c’est que les ports ont été mal configurés et qu’il y a conflit&lt;/p&gt;
&lt;pre tabindex="0"&gt;&lt;code&gt;2015-07-16 15:49:35: error:include\Socket.h:691: bind failed: 10048: Une seule utilisation de chaque adresse de socket (protocole/adresse réseau/port) est habituellement autorisée.
&lt;/code&gt;&lt;/pre&gt;&lt;p&gt;Une fois que c’est bon, vous pouvez tester vos deux clients depuis votre serveur Nagios via un &lt;code&gt;check_nrpe&lt;/code&gt; sans arguments&lt;/p&gt;
&lt;pre tabindex="0"&gt;&lt;code&gt;[root@nagios libexec]# ./check_nrpe -H 192.168.20.10 -p 5666
I (0.3.9.328 2011-08-16) seem to be doing fine...
[root@nagios libexec]# ./check_nrpe -H 192.168.20.10 -p 56661
I (0.3.9.330 2011-09-02) seem to be doing fine...
&lt;/code&gt;&lt;/pre&gt;&lt;h2 id="bonus-track--supprimer-le-service-nsclientnew-une-fois-quon-en-veut-plus"&gt;Bonus track : supprimer le service NSClientNew une fois qu’on en veut plus
&lt;/h2&gt;&lt;p&gt;Si jamais l’envie vous prend de supprimer ce que vous venez de faire, il faudra supprimer à la main le service de la façon suivante, puis supprimer le dossier. Exécutez la commande suivante dans un cmd/powershell en tant qu’administrateur&lt;/p&gt;
&lt;pre tabindex="0"&gt;&lt;code&gt;C:\Windows\system32&amp;gt;sc delete NSClientNew
[SC] DeleteService réussite(s)
&lt;/code&gt;&lt;/pre&gt;</description></item></channel></rss>