Kévin Subileau

Espace personnel

displaycal_colormunki_positionnement

Calibrer son écran avec DisplayCAL et une sonde colorimétrique

Lorsque l’on utilise son ordinateur pour traiter des photos, étalonner des vidéos ou plus généralement pratiquer un art graphique (infographie, webdesign,...), il est important d’avoir un écran de bonne qualité et surtout de s’assurer que celui-ci affiche des couleurs justes. En effet, les écrans n'ont pas tous les mêmes capacités pour restituer des couleurs fidèles. Vous avez peut-être même déjà eu la mauvaise expérience de constater un problème de différence de couleurs en observant une image d’un écran à l’autre ou entre un écran et un tirage papier.

Pour éviter cela, il est nécessaire de calibrer son écran, c'est à dire de régler précisément la luminosité, le contraste et la température d'affichage et de mesurer les écarts entre les couleurs théoriques et réelles. Ces écarts vont être mémorisés dans un fichier que l'on appelle un profil ICC, et qui sera utilisé pour tenter de compenser ces défauts et ainsi s'approcher au maximum des couleurs exactes.

Avant d'aller plus loin, je précise toutefois que cet article n'est qu'une introduction à la gestion des couleurs. C'est un sujet vaste et assez technique, donc je ne vais pas trop m'étendre sur les concepts et la théorie qui entourent ce domaine mais plutôt vous donner une marche à suivre assez générique pour calibrer votre écran sans trop se creuser la tête. En réalité ce n'est pas forcément utile de connaître toute la théorie sur ce sujet, mais si vous souhaitez en savoir plus, n'hésitez pas à approfondir vos recherches ;) .

Le matériel nécessaire

Sur Internet, il y a des sites qui vous propose de calibrer votre écran à l’œil nu ou de télécharger un profil ICC tout prêt pour le modèle de votre écran. Mais ces méthodes ne valent pas grand-chose, car votre œil, aussi affûté soit-il, n'est pas une référence absolue et chaque écran possède des caractéristiques différentes, y compris à modèle identique.

En réalité, la seule méthode crédible et donnant un résultat juste passe par l'achat et l'utilisation d'une sonde colorimétrique. Lire la suite →

win10-client-serveur-ssh-natif

Windows 10 - Activer et utiliser le client/serveur SSH natif

Il aura fallu être très patient, mais ça y est, Microsoft a enfin intégré un support natif de SSH sur Windows ! Depuis la mise à jour de septembre 2017 de Windows 10 (Fall Creators Update), il est en effet possible d'installer un client et un serveur OpenSSH natif. Plus besoin de Putty, Cygwin ou autres verrues diverses et variées, ni même de passer par le sous-système Windows pour Linux introduit en 2016. C'est bel et bien du 100% natif Windows !

Une nouveauté qui contribuera à améliorer l'interopérabilité entre Windows et Linux, en permettant de se connecter à un serveur Linux depuis Windows et inversement, et qui pourrait simplifier l'usage de certains outils de gestion de configuration comme Ansible.

Mais pour le moment, cela reste toutefois une implémentation en bêta et Microsoft déconseille de l'utiliser sur un environnement de production critique.

Installation du client et/ou du serveur SSH

Ce support de SSH est fourni en tant que fonctionnalité facultative. Il faut donc passer par une rapide installation pour pouvoir en bénéficier.

Avant toute chose, vérifiez bien que vous possédez la dernière version de Windows 10 en date (1709 minimum), et que toutes les mises à jour disponibles sont installées.

Ensuite, rendez-vous dans les Paramètres Windows via le bouton « roue dentée » du menu Démarrer ou le raccourci clavier Win+I, puis cliquez sur Applications. A l'écran suivant, cliquez ensuite sur Gérer les fonctionnalités facultatives, puis sur le bouton Ajouter une fonctionnalité.
win10-ssh-applis-fonctionnalites

Dans la liste des fonctionnalités optionnelles disponibles, cliquez sur OpenSSH Client puis sur Installer. Si vous souhaitez également pouvoir vous connecter à distance par SSH à votre poste, vous pouvez installer le serveur SSH en sélectionnant OpenSSH Server.
win10-ssh-install

Patientez quelques instants le temps de l'installation puis redémarrez le poste. Lire la suite →

vmware-vsphere-logo

Trouver les adresses IP et MAC de la carte iLO/iDRAC d’un hôte via vSphere

Savez-vous qu'il est possible d'identifier les adresses MAC et IP de la carte de management (iLO / iDRAC) associée à un hôte ESX directement depuis le client vSphere ?

C'est une astuce que j'ai découvert récemment, qui nécessite simplement que l'hôte ESX soit allumé et que vous disposiez évidemment d'un accès à cet hôte ou le vCenter via le client lourd ou la version Web de vSphere.

vSphere Web Client

Si vous utilisez le client Web, une fois connecté au vCenter ou directement à l'hôte, rendez-vous dans la vue Hôtes et Clusters, cliquez sur l’hôte en question dans le panneau latéral, puis, dans l’onglet Surveiller, sélectionnez État du matériel.

Dans le volet Capteurs, déroulez les informations du capteur Contrôleur de gestion de la carte de base puis Management Controller IP Interface.

Les adresses IP et MAC de la carte de management s’affichent alors comme on peut le voir sur la capture ci-dessous (encadré en bas à droite) :

vsphere_web_ilo_ip

vSphere Desktop Client

Si vous utilisez toujours le client vSphere installé sur votre poste, le chemin à suivre est sensiblement le même. Dans la vue Hôtes et Clusters, cliquez sur l’hôte en question, puis, dans l’onglet Etat du matériel, sélectionnez l’affichage des Capteurs dans la liste déroulante.

Déroulez ensuite les informations du capteur Contrôleur de gestion de la carte de base puis Management Controller IP Interface.

Les adresses réseaux de la carte de management s'affichent alors comme avec le client Web :

vsphere_client_ilo_ip

Voilà pour cette astuce simple et efficace, à garder en tête en cas de besoin !

Gérer les raccourcis avec Powershell

Powershell - Créer, lire et modifier des raccourcis

Que ce soit pour réaliser un script d'installation ou un traitement particulier sur un grand nombre de postes, il arrive parfois que l’on ait besoin de lire, modifier ou créer un raccourci à l’aide d’un script. Pour ce dernier cas, on peut se contenter de coder un copier/coller d'un raccourci préfabriqué, mais cette méthode peut manquer de souplesse car elle ne permet pas par exemple d'adapter le raccourci créé selon certains paramètres.

Avec Powershell, il est en fait possible de créer un raccourci à partir de zéro, mais aussi d’en lire les propriétés et de les modifier, en utilisant simplement les fonctionnalités de l’objet COM Wscript.Shell.

Pour cela, il faut commencer par créer un nouvel objet Wscript.Shell en utilisant la cmdlet New-Object :

$Shell = New-Object -ComObject Wscript.Shell

Ensuite, on utilise la méthode CreateShortcut pour créer un objet raccourci associé à un chemin. Le nom de cette méthode est un peu trompeur car elle s’applique aussi bien que vous souhaitiez créer, lire ou modifier un raccourci. En fait, elle ne crée pas véritablement le raccourci sur le disque dur mais seulement sa représentation en mémoire (instanciation de la classe WshShortcut ou WshURLShortcut). Elle prend en paramètre le chemin du raccourci à lire ou à créer. Penser bien à ajouter l’extension .lnk ou .url selon que votre raccourci pointe respectivement vers un fichier ou une adresse Internet.

$Shortcut = $Shell.CreateShortcut($env:USERPROFILE + "\Desktop\Mon raccourci.lnk")

Vous disposez ensuite d’un ensemble de propriétés sur l’objet obtenu que vous pouvez lire ou modifier selon vos souhaits :

# Cible du raccourci
$Shortcut.TargetPath = "C:\chemin\vers\votre\executable.exe"
# Paramètres optionnels de ligne de commande
$Shortcut.Arguments = "-arguments –si -necessaire"
# Dossier cible
$Shortcut.WorkingDirectory = "C:\chemin\vers\le\dossier\de\travail";
# Taille de la fenêtre d'exécution (normale, réduite ou agrandie)
$Shortcut.WindowStyle = 1;
# Raccourci clavier
$Shortcut.Hotkey = "CTRL+SHIFT+F";
# Chemin vers l'icône du raccourci
$Shortcut.IconLocation = "C:\chemin\vers\votre\executable.exe, 0";

A noter que dans le cas d’un raccourci vers une adresse Internet, seule la propriété TargetPath est disponible.

Enfin, vous pouvez faire appel à la méthode Save pour enregistrer le raccourci créé ou les modifications apportées à un raccourci existant :

$Shortcut.Save()

Et c’est tout ! Plutôt simple n’est-ce pas ?

Pour aller un peu plus loin, on peut ensuite combiner tout cela pour créer une ou plusieurs fonctions de manipulation des fichiers raccourcis. Voici par exemple une fonction permettant de récupérer le chemin cible d'un raccourci :

function function Get-ShortcutTarget {
    <#
    .SYNOPSIS
        This function returns the target of a shortcut file (LNK or URL extension).
    .EXAMPLE
        Get-ShortcutTarget -FilePath 'C:\Users\profilename\Desktop\MyShortcut.lnk'
    .PARAMETER FilePath
        The shortcut's file path (don't forget the extension !)
    #>
    [CmdletBinding()]
    param (
        [Parameter(Mandatory = $true, Position = 0, ValueFromPipeline = $true)]
        [ValidateScript({ Test-Path -Path $_ -PathType Leaf })]
        [Alias('Fullname')]
        [string[]]$FilePath
    )
    process {
        $ShellObject = New-Object -ComObject Wscript.Shell
        ($ShellObject.CreateShortcut($FilePath)).TargetPath
    }
}

A vous ensuite d'adapter ou de créer vos propres fonctions selon vos besoins. N'hésitez pas également à faire quelques recherches sur Internet, et notamment sur Github, où vous pourrez trouver des fonctions toutes prêtes pour traiter les raccourcis, comme ici par exemple.

Matomo-logo-inv

Matomo (Piwik), l'outil de statistiques Web libre et auto-hébergé

Si vous possédez votre propre site web, intranet, blog ou forum, vous êtes très probablement intéressé de connaitre le nombre de visiteurs et les pages les plus consultées. Vous êtes donc sûrement partie à la recherche d'outils vous permettant de mesurer l'audience de votre site et de vous présenter des statistiques de fréquentation, et vous êtes probablement tombé sur Google Analytics, la référence en la matière. Mais avant de vous jeter une nouvelle fois dans les bras tendus de Google, je vous propose aujourd'hui de découvrir une excellente alternative nommée Matomo (anciennement Piwik).

Matomo est un logiciel libre et gratuit de statistiques et d’analyse d’audience de sites Web, qui vous permet de collecter des informations sur les visiteurs de votre site et de vous présenter une large collection d'indicateurs : nombre de visiteurs, pages les plus consultées, durée de visite moyenne, mots-clés utilisés, provenance géographique, horaires de connexion, …. Ce logiciel a été fondé il y a bientôt dix ans par Matthieu Aubry, un français résidant en Nouvelle-Zélande.

La version 3.0, publiée en janvier 2017, propose une nouvelle interface inspirée des principes du Material Design, toujours plus conviviale et paramétrable selon vos besoins. Ainsi par exemple, le tableau de bord peut être personnalisé en ajoutant ou en retirant des widgets afin de mettre en avant vos indicateurs clés.

Matomo

La nouvelle interface de Matomo 3 adopte le Material Design

Mais le plus important est que, contrairement à son principal concurrent Google Analytics, Matomo est conçu pour être auto-hébergé, ce qui signifie qu'il est installé sur votre propre serveur et que toutes les données collectées sont stockées chez vous et restent sous votre contrôle. Les informations et les statistiques que vous récoltez ne sont donc pas partagées avec des tiers et vous préserver ainsi la vie privée de vos visiteurs en leur évitant d'être suivi d’un site à l’autre par un outil qui recoupe les données de plusieurs sources pour retracer le parcours des internautes sur le web tout entier.

C'est d'ailleurs principalement pour cette raison que la CNIL recommande Matomo. Avec un paramétrage adapté, vous pourrez même être exempté d'affubler votre site web de cet odieux message à propos des cookies. En contrepartie de ce respect de la vie privée, vous aurez peut-être un tout petit peu moins de détails sur vos visiteurs (démographie, mots clés de recherche), mais cela reste assez négligeable et je pense qu'il s'agit d'un excellent compromis. Par ailleurs, comme Matomo fonctionne sur votre propre infrastructure et indépendamment du Web, il peut parfaitement être utilisé pour un site Intranet, sur le réseau interne d'une entreprise par exemple.

La mise en place de Matomo est relativement simple et se fait en quelques clics. Il vous faut simplement disposer d'un serveur Web, mutualisé ou dédié, disposant de PHP 5.5.9 minimum et d'une base MySQL. Après avoir téléchargé la dernière version de Matomo, décompressez l'archive sur l'espace public de votre serveur puis rendez vous avec votre navigateur Web sur l'adresse correspondante. Vous tomberez alors sur l'assistant d'installation qui vous guidera dans les étapes suivantes.

Bon à savoir, il n'est pas nécessaire que Matomo soit sur le même serveur que le site à auditer, et il est même possible de dédier un serveur à Matomo et de configurer plusieurs sites indépendamment, sans avoir à installer à nouveau Matomo pour chaque site.

Ensuite, comme toutes les autres solutions d'analyse de trafic, Matomo s'intègre à votre site simplement en insérant sur chaque page un petit code Javascript fourni lors de l'installation. Mais il est aussi possible d'utiliser des extensions pour faciliter cette intégration à votre CMS (WordPress, Drupal, Joomla, SPIP...) ou votre plateforme de e-commerce favori (Magento, PrestaShop, Thelia, ...). Vous pouvez retrouver la liste de tous les plugins officiels sur cette page. Par ailleurs, des applications mobiles pour Android et iOS sont disponibles pour vous permettre de consulter vos statistiques en mobilité.

Pour en savoir plus sur Matomo, n'hésitez pas à aller faire un tour sur le site officiel et sur la documentation (en anglais). Une démo publique et complète est également disponible pour voir et tester cet outil en situation réelle. Enfin, si vous êtes développeur et intéressé par ce projet, vous pouvez contribuer au développement de Matomo via GitHub.

captvty-logo

Captvty : regarder et télécharger les émissions de télévision en replay

Cela fait déjà quelques années que j'ai découvert Captvty et que je l'utilise régulièrement, et il était temps que je vous fasse découvrir cette petite pépite si vous ne la connaissiez pas déjà. Si vous êtes un utilisateur régulier des sites de replay, ce logiciel est tout simplement fait pour vous ! En effet, Captvty est un outil qui vous permet de visionner et surtout de télécharger très facilement et rapidement l'ensemble des programmes de télévision disponibles en rattrapage sur les sites des chaînes de TNT française (MyTF1, Pluzz, 6Play & cie). Vous pouvez ainsi regarder vos émissions en différé avec VLC ou votre lecteur vidéo favori sans connexion Internet (dans le train, l'avion ou le métro, sur votre tablette ou smartphone par exemple), sans limite de temps et sans publicité !

Téléchargement d'une émission

Captvty est relativement simple à utiliser et plutôt intuitif, même si quelques fonctionnalités bien pratiques sont un peu cachées selon moi. Mais pas d'inquiétude, je vais tout vous présenter ! Commençons par le téléchargement d'un programme. Pour cela, il vous suffit simplement de sélectionner la chaîne sur la liste de gauche puis de double-cliquer sur votre émission dans la liste centrale.

Captvty - Téléchargement d'une émission

Captvty - Téléchargement d'une émission

Le téléchargement se lance immédiatement, et vous pouvez suivre la progression en vous rendant sur l'onglet Téléchargement. Si vous ne souhaitez pas attendre, vous pouvez également visionner directement la vidéo en streaming avec le lecteur du site Web ou VLC via un clic droit sur l'émission puis respectivement Visionner ou Visionner avec.... Lire la suite →

RDP_icon

Bureau à distance - Désactiver la vérification de l'identité de l'ordinateur distant

Si vous vous connectez fréquemment à des serveurs Windows par RDP via l'outil Bureau à distance depuis un PC fonctionnant avec Windows Vista, 7, 8, ou 10, vous avez sans doute remarqué qu'un avertissement s'affiche avant chaque connexion, vous indiquant qu'il est "impossible de vérifier l'identité de l'ordinateur distant", et vous demandant de confirmer la connexion. L'apparence exacte de ce message peut varier en fonction des versions de Windows utilisées sur l'ordinateur distant et sur votre poste, mais globalement cela ressemble à l'image ci-dessous :

rdp_identite_message

Rien de bien méchant me direz-vous, il suffit de cliquer sur "Oui" et la connexion se poursuit normalement. Il est même possible de cocher la case "Ne pas me redemander [...]" pour ne plus voir ce message lors des prochaines connexions vers la même machine. Oui mais voilà, si vous vous connectez très souvent à de nombreux serveurs différents car vous administrez un vaste parc par exemple, ce message reviendra à chaque nouvelle connexion et pourrait bien finir par vous agacer...

Heureusement, il existe une solution pour désactiver complètement l'affichage de cet avertissement. Assurez-vous toutefois que toutes les machines distantes auxquelles vous vous connectez sont dignes de confiance, car il s'agit tout de même d'une (petite) sécurité à désactiver.

Ouvrez l'éditeur de registre via le panneau Exécuter (raccourci clavier Win+R) puis en tapant regedit. Naviguez jusqu'à une des deux clés de registre suivantes selon votre préférence :

  • Si vous souhaitez que l'authentification de l'ordinateur distant soit désactivé pour l'ensemble des utilisateurs de votre poste, ouvrez la clé HKEY_CURRENT_USER\Software\Microsoft\Terminal Server Client.
  • Si vous préférez que ce réglage ne s'applique que pour les sessions ouvertes depuis votre propre compte, rendez vous sur la clé HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Terminal Server Client. Il est possible que la sous-clé Terminal Server Client n'existe pas, dans ce cas créez la par un clic droit sur la clé Microsoft puis Nouveau, Clé.

Sous l'une de ces clés, créez ensuite une nouvelle valeur DWORD nommée AuthenticationLevelOverride par un clic droit sur la clé Terminal Server Client, puis en cliquant sur Nouveau, Valeur DWORD 32 bits.

rdp_identite_message_reg

Vérifiez que la valeur assignée à cette nouvelle entrée est bien 0 (zéro). Si ce n'est pas le cas, double-cliquez dessus et modifiez les données de la valeur dans la petite fenêtre qui s'affiche.

rdp_identite_message_reg_value

Et voilà, vous ne devriez désormais plus jamais voir ce message d'avertissement. En bonus, je vous offre ce fichier zip contenant des fichiers .reg permettant de l'activer ou le désactiver encore plus facilement : téléchargez et décompressez cette archive, double-cliquez sur le fichier approprié selon que vous souhaitez activer ou désactiver la vérification d'identité pour l'utilisateur actuel ou tous les comptes, puis confirmez votre action en cliquant sur Oui dans le message qui s'affiche.

Enfin, sachez que cette astuce fonctionne aussi bien que vous utilisiez le client Bureau à distance de base ou un outil un peu plus évolué tel que RDCMan.

let's encrypt logo

Let's Encrypt - Installation manuelle et sécurisée sur Apache

Let's Encrypt est une nouvelle autorité de certification qui délivre des certificats SSL gratuits. Oui, j'ai bien dit gratuit, là où auparavant il fallait parfois débourser jusqu'à une centaine d'euros par an pour un certificat !

Mais désormais, il n'y a plus aucune raison pour ne pas laisser tomber son certificat auto-signé et mettre en place le HTTPS avec un véritable certificat SSL, certifié par une autorité, et qui n'affichera donc pas dans les navigateurs une page d'alerte qui ferait fuir vos visiteurs.

Dans cet article, je vais donc vous présenter la méthode que j'ai utilisée pour mettre en place un certificat SSL gratuit de Let's Encrypt sur mon VPS.

Le site de Let's Encrypt suggère pour cela d'utiliser le client Python officiel, totalement automatisé. Mais personnellement, je ne suis pas très fan de l'idée qu'un script, dont j'ignore le contenu, s’exécute automatiquement avec les permissions root, manipule des fichiers de configurations sensibles (tel que ceux d'Apache), et contrôle la sécurité de mon serveur Web.

De plus, le script officiel requiert selon moi beaucoup trop de dépendances à installer, et propose trop de fonctionnalités par rapport à ce qui m'est réellement utile. Je suis en effet totalement capable de faire l'installation et la configuration initiale moi-même, manuellement. Je n'ai besoin d'un script que pour renouveler automatiquement le certificat, rien de plus.

Je suis donc parti à la recherche d'une solution alternative pour obtenir un certificat Let's Encrypt, et je suis finalement tombé sur acme-tiny. C'est un script de seulement 200 lignes, que j'ai donc pu facilement analyser pour vérifier qu'il ne comportait rien de malveillant, et qui n'a besoin que de Python, quelques modules de base et la commande openssl pour fonctionner. Le plus souvent, tout ceci est déjà présent sur une configuration classique.

La méthode proposée ci dessous est adaptée pour obtenir une sécurité optimale sur un serveur Debian Wheezy ou Jessie, avec Apache 2.2 ou 2.4.10, et OpenSSL 1.0.1. Il est toutefois important que vous compreniez ce que vous faites et que vous ajustiez la configuration proposée selon votre système et vos besoins.
Lire la suite →