Déplacer le répertoire de téléchargement

July 14th, 2015

Quand on n’a plus de place sur le disque système, il est possible de déplacer le répertoire de téléchargement vers un autre disque:

  1. Recopier le contenu du répertoire vers un autre disque
  2. Supprimer le répertoire :

    rd /s %userprofile%\Downloads

  3. Créer un lien symbolique

mklink /j %userprofile%\Downloads d:\downloadslink

TFT 1.8 pouces

July 24th, 2014

J’ai acheté cet écran LCD sur eBay :


Bien évidement aucune documentation n’est fournie avec cet écran.

Grâce à cet article péché sur le net, j’ai réussi à le faire fonctionner avec un arduino pro mini 3.3 v. L’article fait référence à un autre écran mais il fonctionne de la même manière.

Certains vendeurs indiquent qu’il peut fonctionner en 5V et en 3.3 V. En 3.3 V il faut ponter le jumper J1. Je n’ai pas essayé en 5V mais en 3.3V quelque-soit l’état du jumper, il fonctionne correctement.

Il existe deux modes pour câbler cet écran, soit en utilisant des ports standards de l’arduino, soit en utilisant les ports SPI. La vitesse d’affichage est beaucoup plus rapide avec la version SPI.

Version lente

Le câblage pour la version lente est le suivant :

TFT 

Arduino

VCC 

VCC

GND 

GND

CS 

6

Reset 

8

A0 

7

SDA 

5

SCK 

4

LED 

9

Les librairies utilisées sont celles d’Adafruit : Adafruit_GFXAdafruit_ST7735

Elles sont mal packagées pour être directement importée dans l’ide d’Arduino. Le plus simple, une fois téléchargées, est de les extraire et de les rezipper en raccourcissant les noms des répertoires (supprimer _master du nom). En suite en utilisant impérativement la version d’Arduino 1.05 ou ultérieure il suffit d’aller dans le menu Croquis, Importer bibliothèque, Add library, et de charger les deux bibliothèques.

Une fois l’IDE relancé, de nouveaux sketches sont présents dans la liste.

J’ai utilisé le sketch, GraphicTest et configuré les ports comme ceci :


Etant donné que j’ai utilisé un port pour alimenter le rétro éclairage, j’ai rajouté ces deux lignes au début du sketch :


Version rapide

Pour obtenir un affichage 5 fois plus rapide, il faut changer le câblage

TFT 

Arduino

VCC 

VCC

GND 

GND

CS 

10

Reset 

8

A0 

9

SDA 

11

SCK 

13

LED 

7

 
 

Et modifier le sketch :




  

CRM 2013 et URL Rewriting

February 4th, 2014

La publication sur internet de Microsoft CRM 2013 pose un problème de taille suivant qu’on souhaite y accéder depuis un réseau interne ou depuis l’internet. En effet soit l’url est différente, soit l’authentification devra se faire via un formulaire d’authentification, même depuis le réseau interne ( l’authentification Windows ne fonctionne pas ).

Pour résoudre ce problème, il existe deux solutions élégantes à savoir, ajouter des règles de réécriture d’url au niveau des fronteaux Web de CRM, ou d’ADFS.

Ajout de règles au niveau d’ADFS

L’objectif de la règle de réécriture, consiste à détecter l’origine des requêtes et en fonction de leurs origine, supprimer le paramètre “wauth” de la querystring.

Le paramètre wauth, indique au serveur le type d’authentification qui sera utilisé par ADFS:

Méthode d’authentification désirée Paramètre WAUTH
Formulaire urn:oasis:names:tc:SAML:1.0:am:password
Certificat client urn:ietf:rfc:2246
Authentification Windows urn:federation:authentication:windows

Si ce paramètre n’est pas utilisé dans l’url, c’est la première méthode d’authentification spécifiée dans le Web.config qui sera utilisé, par défaut l’authentification Windows.

<microsoft.identityServer.web>
    <localAuthenticationTypes>
      <add name="Integrated" page="auth/integrated/" />
      <add name="Forms" page="FormsSignIn.aspx" />
      <add name="TlsClient" page="auth/sslclient/" />
      <add name="Basic" page="auth/basic/" />
    </localAuthenticationTypes>

Donc pour qu’ADFS propose une authentification Windows, il suffit que l’url de la requête d’authentification adressée au serveur, ne contienne pas de paramètre wauth et que la première authentification configurée dans le fichier web.config soit “integrated”.

La solution pour avoir une authentification Windows depuis l’interne consiste donc à réécrire les url, en supprimant le paramètres “wauth” pour les requêtes ne provenant pas de l’internet.

Généralement les requêtes provenant d’internet peuvent être détectées via le header “X-Forwarded-For”. Si ce n’est pas possible il est aussi possible de détecter l’origine des requêtes venant du réseau interne via la variable d’environnement “REMOTE-ADDR”.

Exemple de règle basée sur le header “X-Forwarded-For”:

<system.webServer>
<rewrite>
      <rules>
        <rule name="Strip wauth parameter" enabled="true" stopProcessing="true">
          <match url="(.*)" />
          <conditions>
                        <add input="{HTTP_X_Forwarded_For}" pattern="\b(?:192)\.(?:168)\.(?:1).(?:1)\b" negate="true" />
                        <add input="{QUERY_STRING}" pattern="(.*)(wauth=.*)(.*)" />
          </conditions>
          <action type="Rewrite" url="{R:0}?{C:1}" appendQueryString="false" />
        </rule>
      </rules>
    </rewrite>
  </system.webServer>

Cette règle supprime le paramètre “wauth” pour toutes les requêtes dont le header X_Forwarded_For est différent de 192.168.1.1.

Ajout de règles au niveau de CRM

Le principe de la règle reste le même, puisqu’il consiste à détecter l’origine de la requête. Mais dans ce cas on redirige la requête via un 302 vers le site interne.

Supposons que l’url externe de notre organisation soit http://orga.contoso.com et que l’url interne soit http://crm.contoso.com/orga. L’accès à l’url externe est protégé par un formulaire tandis que l’url interne est protégée par l’authentification Windows intégré.

L’objectif étant que l’accès se fasse via la même url de l’interne et de l’externe à savoir http://orga.contonso.com, mais avec une authentification différente, il suffit d’intercepter les requêtes en provenance du réseau interne et de les rediriger vers l’url http://crm.contonso.com/orga.

Exemple de règle basée sur le header “X-Forwarded-For”:

<rule name="Redirect Internal Connections" stopProcessing="true">
    <match url="(.*)" />
        <conditions trackAllCaptures="true">
            <add input="{HTTP_X_Forwarded_For}" pattern="\b(?:192)\.(?:168)\.(?:1).(?:1)\b" negate="true" />
            <add input="{HTTP_HOST}" pattern="([^\.]*)\.(.*)" />
        </conditions>
    <action type="Redirect" url=http://crm.contoso.com/{C:1}/{R:1} appendQueryString="true" redirectType="Found" />
</rule>

Cette règle renvoie un 302 vers http://crm.contoso.com/orga/* à chaque requête http://orga.contoso.com/* dont le header X_Forwarded_For est différent de 192.168.1.1.

Installation de Zimbra 8.0.2 sur Hyper-V 2

February 14th, 2013

Dans le cadre de développements sous Sharepoint 2010, j’ai besoin d’un serveur de messagerie pour tester le bon fonctionnement des notifications par mail. J’aurais pu utiliser de multiples solutions alternatives, mais j’ai choisi de me constituer une machine virtuelle sous Windows 2008 R2 et d’y déployer Zimbra.

Prérequis

Installation Ubuntu

Après avoir télécharger l’iso Ubuntu :

  • Créer un VM sous Hyper-V
    • faire pointer le lecteur CD vers l’iso d’ubuntu
    • choisir 1024 Mo de mémoire
  • Booter la machine virtuelle
    • Language : English
    • Keymap: French
    • Choisir le reste des options en fonctions de l’environnement
    • Choisir OpenSSH server à la fin de l’installation

Installation Zimbra

La doc d’installation de Zimbra est à l’adresse suivante:
http://files.zimbra.com/website/docs/8.0/Zimbra_NE_Quick_Start_8.0.2.pdf

Un tuto intéressant est à cette adresse:
http://denisrosenkranz.com/installation-de-zimbra-ose-7-1-3-sous-ubuntu-10-04-lts-64bits/

Configurer le DNS

  • Ajouter un Enregistrement A pointant sur le serveur Zimbra
  • Ajouter un enregistrement MX pointant sur le serveur Zimbra
  • Editer le fichier /etc/resolv.conf pour refléter la configuration suivante:

nameserver <mon AD>
domain <mon domaine>
search <mon domaine>

Installation

  • Transférer le package de Zimbra sur la machine virtuelle via Winscp
  • Extraire le package :
    • tar xvzf zcs-8.0.2_GA_5569.UBUNTU12_64.20121210115059.tgz
  • Installer les pré-requis
    •  
  • Installer Zimbra
    • cd zcs-8.0.2_GA_5569.UBUNTU12_64.20121210115059
    • sudo ./install.sh
    • Le programme d’installation précise les pré-requis manquants. Les installer :
    • sudo apt-get install libgmp3c2 libperl5.14 sysstat sqlite3
    • Relancer l’installation une fois les pré-requis installés:
    • sudo ./install.sh
    • Dans la première partie de l’installation, répondre “yes” à toutes les questions pour installer tous les packages zimbra
    • Au moment de tester le MX, l’installeur ne peut ne pas résoudre en fonction du nom MX entré dans le DNS. Le changer pour le faire correspondre.
    • Maintenant choisir l’entrée 3 du menu, puis 4 pour choisir un mot de passe pour l’administrateur
    • Taper le mot de passe
    • Taper r pour revenir au menu précédent
    • Taper a pour appliquer la configuration
    • puis yes deux fois pour confirmer la configuration
    • puis ce qu’on veut pour notifier ou pas zimbra de l’installation

Connexion à Active Directory

  • Dans l’interface d’administration, cliquer configurer, domaine, le domaine
  • Dans la partie information générale, sélectionner le fuseau horaire
  • Ensuite dans la partie supérieure droite de l’écran principal, cliquer sur la petite flèche et sélectionner Configurer l’authentification
  • Dans la boite de dialogue d’aide à l’authentification, cliquer Active Directory externe puis suivant
  • Dans domaine du serveur, indiquer le domaine
  • Dans la partie Nom du serveur AD, indiquer le FQDN du serveur AD et taper suivant
  • Cocher la case Utiliser un identifiant (DN)/mot de passe pour associer un serveur externe
  • Dans la zone Associer un identifiant (DN), introduire le “distinguished name” d’un compte ayant accès à AD (j’ai mis un administrateur du domaine mais il faudrait que je restreigne les droits)
  • Dans les deux autres zone de saisie renseigner le mot de passe de ce compte, puis cliquer suivant
  • Tester la configuration à l’aide d’un compte et d’un mot de passe dans cet écran de saisie et cliquer sur suivant
  • Je ne sais pas à quoi correspond cet écran

image

  • cliquer sur suivant
  • cliquer sur terminé

Ubuntu 11.10 et HyperV

March 21st, 2012
  • Commencer par monter une VM avec un Legacy Network Adapter.
  • Booter sur l’iso d’Ubuntu, choisir la langue, puis presser F6 et selectionner “acpi=off”.
  • Installer Ubuntu…
  • A l’issu, remplacer la carte Legacy par une normale.
  • Ajouter ceci au fichier “/etc/initramfs-tools/modules”
    • hv_vmbus
      hv_storvsc
      hv_blkvsc
      hv_netvsc
  • et taper la commande “update-initramfs –u”

CNC pas chère

January 3rd, 2012

La CNC est passionnante, mais les différentes pièce pour fabriquer une table sont excessivement chères.
En écumant les forums de CNC Zone et plus particulièrement ce thread, je suis tombé sur un tas d’astuces pour réaliser des guides en utilisant des pièces vraiment pas chères.

Pour l’instant ce billet recense les meilleures parties dans l’espoir de mettre en application rapidement les différents concepts de l’auteur.

Biztalk MSDTC et SQL Server

July 7th, 2011

Lors de l’installation de Biztalk sur un cluster SQL, la configuration de MSDTC sur le serveur SQL est problématique. En dehors des recommandations classique il ne faut pas oublier de renommer la ressource “Name” pour qu’elle corresponde au nom netbios du cluster.

L’article suivant décrit le processus.

En résumé la commande à lancer sur le cluster est la suivante:

Cluster.exe res "SQL Network Name (<DNS name>)" /ren:<DNS name>

Ubuntu 11.04 Remote Access

June 11th, 2011

J’avais déjà fait un billet sur l’accès à distance à une machineUbuntu 9.10 et en essayant de reproduire la configuration je me rends compte que cela ne fonctionne plus.

Après une recherche rapide, il s’avère que le serveur NX est plébiscité. Je décide de la mettre en œuvre pour tester. Voila comment je procède :

wget http://64.34.161.181/download/3.5.0/Linux/nxclient_3.5.0-6_amd64.deb
wget http://64.34.161.181/download/3.5.0/Linux/nxnode_3.5.0-3_amd64.deb
wget http://64.34.161.181/download/3.5.0/Linux/FE/nxserver_3.5.0-4_amd64.deb

apt-get install libaudiofile0

sudo dpkg -i nxclient_3.5.0-6_amd64.deb
sudo dpkg -i nxnode_3.5.0-3_amd64.deb
sudo dpkg -i nxserver_3.5.0-4_amd64.deb

 

Je télécharge le client pour windows, l’installe et le configure par défaut, et tout fonctionne parfaitement.

CNC

October 10th, 2010

http://www.cerebralmeltdown.com/cncstuff/page3/CNC_Machine_Builds/Page10/index.html

Wake On Lan

July 27th, 2010

Démarrer les différentes machines de son réseau à distance est bien pratique. Je commençais à en avoir assez de faire des tests sur mon HTPC et d’être obligé de me lever à chaque fois que je devais redémarrer la machine.

J’ai donc mis en oeuvre la fonction de “Wake On Lan” (WOL) sur mes différentes machines de sorte que je puisse tout contrôler de façon centrale.

Pour commencer il faut activer la fonction dans le bios des différentes machines. En fonction du fabriquant le nommage est différent et peut s’appeler PME ou WOL. Une fois la fonction bios activé il faut aussi activer une option de la carte d’interface réseau qui répond à la demande de réveil.

Sous Windows, il faut aller dans les paramètres de la carte et dans l’onglet Gestion de l’alimentation, choisir l’option autoriser ce périphérique à sortir l’ordinateur du mode veille.

image

Sous Linux, il faut taper la commande suivante pour autoriser la machine à sortir du mode veille:

sudo ethtool -s eth0 wol umgb

Pour réveiller les machine depuis un poste Windows il suffit de se procurer le programme wolcmd et de taper la commande:

wolcmd “Adresse mac machine”  255.255.255.255 255.255.255.255 7

Attention tout de même, je n’ai pas réussi à faire fonctionner le réveil depuis un poste relié au réseau en WIFI. Je soupçonne mon routeur de bloquer le paquet.

Si vous êtes équipé d’un routeur type WRT54GL vous pouvez utiliser la console d’administration WEB pour réveiller vos machines.

Si vous possédez un Smartphone Windows, télécharger le programme Wol Everywhere pour démarrer vos machines depuis celui-ci.