Category Archives

6 Articles
Changer l’adresse privée de sa VM avec Azure-cli

Changer l’adresse privée de sa VM avec Azure-cli

Avant de commencer, vous devez avoir un compte Microsoft Azure ainsi qu’une machine virtuelle (linux ou microsoft, peu importe.

Installation du client

Pour installer le client rien de plus simple. Vous devez au préalable avoir une version de Node.js d’installée sur votre machine fixe. Vous pouvez revoir la manipulation ici.

Quand Node.JS est installé, vous n;aurez qu’à taper ceci dans votre terminal :

sudo npm install azure-cli -g

Connextion

Pour vous connecter, deux méthodes existent :

  • Par authentification login/password : ceci marche uniquement avec des comptes azure. J’ai essayé avec mon adresse hotmail qui est liée à azure et ça ne marche pas.
  • Par fichier de connexion : permet de récupérer tous les comptes liés à votre domaine Azure.

Dans le cas de l’authentification par mot de passe, faites juste ceci :

azure login

Pour les autres, il y a plusieures étapes :

azure account download
azure import accountfile.publishdownload
azure account set 'monaccount'

La première commande vous donne un lien pour télécharger le fichier de comptes. Le second permet d’importer votre fichier de compte dans azure. Il est fortement conseillé de supprimer ce fichier après utilisation.
La dernière permet de sélectionner le compte par défaut du client. Si vous ne savez pas lequel choisir, vous pouvez afficher la liste complète avec cette commande :

azure account list

Changement de l’adresse IP

Maintenant que le plus dur est fait, il reste la dernière partie qui consiste à changer l’adresse IP privée de votre machine virtuelle. Pour celà, une seule commande suffit :

azure vm static-ip set myvmname 10.1.0.10

Dans l’exemple, je met l’adresse IP 10.1.0.10 à la machine myvmname.

Faites bien attention à ce que l’adresse IP corresponde à la plage du réseau rattaché à votre machine virtuelle.

Afin de vérifier si votre machine virtuelle a bien pris ce réglage, faites juste

azure vm static-ip show myvmname

Maintenant vous saurez changer facilement une adresse IP pour vos machines virtuelles Azure depuis le client Azure.

BrowserStack
Rien à redire niveau Navigateurs

BrowserStack

Il y a un bon moment de cela, je vous avais parlé de Spoon pour pouvoir debugger sur tous les navigateurs existants votre projet Web. Malheureusement, depuis quelques mois, ce projet ne propose plus Internet Explorer suite à une injonction de Microsoft.

Mais ceci est révolu car une autre solution, assez bien faite, m’a été montrée et je dois dire qu’elle dépanne grandement. Seul bémol, elle est payante alors que Spoon était gratuit.

Qu’à cela ne tienne, j’ai testé cette solution pendant une bonne heure et je vais vous montrer la plupart de ses fonctionnalités.

I. Fonctionnement

BrowserStack fonctionne grâce à java en ouvrant une connexion avec les serveurs virtuels contenant chacun des navigateurs.

Vraiment intuitive cette interface.

Comment ça marche ? Vous demandez tel navigateur, la résolution que vous voulez et ça vous lance un serveur virtuel contenant le navigateur avec toutes les extensions utiles pour le développement. Comme si vous aviez une vue bureau à distance Windows.

C’est intuitif, simple et ça ne nécessite aucune installation sur votre poste (sauf java pour le bon fonctionnement).

II. Navigateurs et résolutions

BrowserStack comprend la plupart des grands navigateurs avec toutes les versions disponibles en ligne. Voici la liste complète :

  • Internet Explorer depuis la version 6
  • Firefox depuis la version 1
  • Chrome depuis la version 12
  • Safari depuis la version 4
  • Opera depuis la version 10
Navigateurs

Rien à redire niveau Navigateurs

Pour les résolutions, Browserstack indique qu’il propose toutes les résolutions, pourtant je n’en ai accès qu’à 3. Je pense que cette différence est due au fait que j’avais accès à un compte de démo et non un compte premium.

On peut choisir la résolution

III. Utilisation

Dans l’utilisation, comme je vous ai dit, vous sélectionnez votre navigateur, vous sélectionnez votre résolution et BrowserStack vous lance le navigateur (comptez 2s au maximum). Vous pouvez switcher entre le mode dans votre navigateur ou plein écran.

lancement du navigateur

On peut aussi noter le fait de switcher facilement d’un navigateur à un autre et là, chose assez remarquable, il vous garde le lien di site où vous étiez. Par contre je pense que la partie session navigateur sotte (normal me diriez-vous).

En plus du fait de pouvoir lancer le navigateur directement avec une adresse saisie, on peut aussi lui envoyer un fichier html, php, … pour qu’il puisse vous afficher un aperçu de cette même page dans le navigateur souhaité.

exemple des extensions avec Chrome

Vous pouvez aussi créer un tunnel avec votre serveur de développement s’il est accessible qu’en local afin de tester votre projet stocké dessus sur l’un des navigateurs.

Et, comme je vous l’ai dit plus haut, chaque navigateur est équipé des extensions de développement qui vont bien (firebug, ms script debugger, measureit, …) ce qui peut vous faciliter le débuggage de vos projets.

Conclusion

Malgré quelques ralentissements dues à la virtualisation de tout ceci et l’utilisation d’un compte démo (bridé au niveau de la bande passante), Browserstack semble être la solution idéale pour avoir un projet compatible tout navigateur.

Les extensions vous permettront de comprendre pourquoi votre projet ne marche pas sur tel ou tel navigateur.

Les prix peuvent être élevés (jusqu’à 349€/mois) mais dans une entreprise, cet outil tend à être un incontournable.

Pour plus de renseignements, je vous invite à vous rendre sur leur site.

Virtualiser Mac OS X sur un PC

Virtualiser Mac OS X sur un PC

Aujourd’hui nous allons voir quelque chose de différent. Nous allons voir comment virtualiser, sur vos machines Windows, une machine Mac OS X Snow Leopard.

Certains me diront que c’est inutile. Je leur répondrai « peut-être pour vous, mais ceci permet de tester le système Mac, de vérifier le rendu des pages Web sur Safari et Firefox-mac et surtout, de ne pas débourser 1000€ pour une machine peu puissante juste pour cet OS ».

Bien entendu, je ne fournirai ici que les Templates de la machine virtuel avec le cd permettant de booter sur Mac. Vous devrez donc vous débrouiller pour trouver le DVD de Mac OS X Snow Leopard. Le mieux est de demander à un ami de vous prêter son disque.

La virtualisation de MAC OS n’est disponible que sur des machines équipées de processeur Intel compatible Intel VT-X ou Intel VT-x/EPT. Si vous avez un processeur AMD passez votre chemin.

Pour commencer, nous avons besoin des choses suivantes :

  • Le fichier Snowy_Vmware_files.tbz2 contenant tout ce dont on a besoin.
  • Le DVD Retail de Snow Leopard.
  • VMware Workstation 7 (marche aussi sous VirtualBox).
  • Environ 1h de libre.

Tout d’abord, téléchargez le fichier Snowy_Vmware_files.tbz2 et extrayez son contenu où vous voulez. Vous devriez vous retrouver avec le contenu de la figure 1. Comme indiqué sur la figure 1, l’archive comprends :

  • Le dossier Mac OS X Server 10.6 (experimental).vmwarevm : il contient la machine VMware préconfigurée.
  • L’ISO darwin_snow.iso : nous permettra de booter le cd d’install et la machine après l’installation.
  • EnsoniqAudioPCI.mpkg.tar.gz : contient les drivers sonores pour notre machine virtuelle.
  • Un fichier récapitulant en anglais ce que je vous explique.

Quand vous avez vérifié que tout était bien présent, nous lançons VMware Workstation et nous allons ouvrir notre machine virtuelle. Sélectionnez Fichier> Ouvrir. Naviguez jusqu’au dossier Snowy_VM, ouvrez le, et accédez au sous dossier « Mac OS X 10.6 Server (experimental).vmwarevm ». Choisissez le fichier Mac OS X Server 10.6 (experimental).vmx. Il ne vous reste plus qu’à appuyer sur le bouton ouvrir. Normalement vous devriez avoir quelque chose qui ressemble à ceci :

Bien, maintenant que la machine est ici, nous allons modifier un paramètre. Double cliquez sur l’option CD/DVD (IDE). Nous allons renseigner ici le fichier Darwin_snow.iso :

Il ne vous reste plus qu’à lancer la machine. Normalement, vous devriez tomber sur cet écran là :

Maintenant, les choses se gâtent. Nous devons switcher notre image disque avec celle de Snow Leopard. Vous voyez l’image cd en bas à droite de la fenêtre VMware ? Il vous suffit de faire un clic droit dessus et de cliquer sur setting. Là comme tout à l’heure vous sélectionnez l’iso Mac ou alors vous connectez votre lecteur CD. Maintenant, vous validez.

Bon, intéressons nous maintenant à l’écran de choix. Nous pouvons booter sur le CD, sur le disque ou éjecter le CD. Ici, nous demandons juste de booter sur le CD.

A partir d’ici, il se peut qu’un message de confirmation apparaisse. Appuyez simplement sur entrer. Normalement, vous devriez vous retrouver sur l’écran d’installation de Mac OS X :

Vous installez l’OS et à la fin du reboot, vous devriez avoir un message d’erreur signalant que vous devrez le faire manuellement (comme les bons vieux pc sous Windows 95). A partir de là, pour pouvoir démarrer sous mac OS X, vous devrez remettre le cd Darwn_snow.iso dans votre lecteur virtuel à chaque démarrage de la machine.

Voici le résultat final :

Il ne vous reste plus qu’à installer les vmtools (trouvables sur internet). Les pilotes sonores, je ne les ai jamais installés et je n’ai pas trouvé comment faire. Si quelqu’un a la méthode, qu’il me l’envoie et je la rajouterais dès que je peux.

Tout ceci pour montrer que la virtualisation devient maintenant un moyen puissant pour faire tourner n’importe quel système d’exploitation sur votre machine. Depuis peu il existe même un système d’applications virtuelles afin de bien protéger son système mais pour ça, nous le verrons plus tard.

.htaccess et Active Directory 2008

.htaccess et Active Directory 2008

La dernière fois, je vous ai montré comment réaliser une connexion avec Active Directory par le biais d’un .htaccess. Ces tests étaient en fait effectués sur un serveur Windows 2000 et, ce week-end, j’ai effectué une migration d’Active Directory vers la version 2008.

Après cette migration, il se trouve que la connexion .htaccess ne fonctionne plus. J’avais l’erreur suivante dans les logs Apache2 :

auth_ldap authenticate: user bbe authentication failed; URI /testldap [ldap_search_ext_s() for user failed][Operations error]

Il faut juste modifier certaines lignes de notre fichier pour que le tout fonctionne. Voici donc une correction de mon précédent article :

AuthLDAPURL ldap://192.168.0.103:389/CN=Users,DC=virtual,DC=fr?sAMAccountName?sub?(objectClass=user)
AuthLDAPBindDN "CN=Nom complet utilisateur,CN=Users,DC=virtual,DC=fr"
AuthLDAPBindPassword password</code> Et vocii notre .htaccess global : <code lang="apache">AuthName "Warning : Restricted Area !!"
AuthType Basic
AuthBasicProvider ldap
AuthzLDAPAuthoritative off
AuthLDAPURL ldap://192.168.0.103:389/CN=Users,DC=virtual,DC=fr?sAMAccountName?sub?(objectClass=user)
AuthLDAPBindDN "CN=Nom complet utilisateur,CN=Users,DC=virtual,DC=fr"
AuthLDAPBindPassword password
require valid-user

Edit : Si vous voulez authentifier un groupe Active Directory voici les lignes à rajouter (merci à Azigui pour l’astuce) :

AuthLDAPGroupAttributeIsDN on
require ldap-group CN=Nom du groupe,DC=Virtual,DC=fr

Voilà, j’espère que maintenant vous n’aurez plus aucun problème à effectuer une authentification LDAP.

.htaccess et Active Directory

.htaccess et Active Directory

Aujourd’hui je vais vous parler de quelque chose d’assez spécial : L’authentification par apache de personnes à partir d’un annuaire Active Directory.

Pourquoi une telle chose ? Et bien il s’avère que ce n’est pas aussi simple que sa à mettre en œuvre mais quand on l’a fait une fois, on peut le refaire plusieurs fois facilement en copiant les règles dans un fichier « .htaccess ».

Vu que j’ai eu un peu de mal, je vais vous fournir les différentes étapes et le .htaccess final. Tout d’abord vous devez avoir un serveur Windows (2000, 2003 ou 2008) avec le rôle Active Directory. Moi j’ai effectué tout ceci sur un Windows Server 2000.

Ensuite, vous devez connaître votre nom de domine et la structure de l’arbre de votre annuaire. Pour vous aider, voici une application java que j’ai trouvée sur le net, permettant de réaliser ceci. Juste un conseil, laissez juste apparaître dans la base DN les DC=,DC=com.

Sachez que pour pouvoir parcourir votre annuaire, un compte Windows doit être utilisé, pour des raisons de sécurité, je vous conseil de créer un compte lambda avec un mot de passe bidon, non modifiable et verrouillé. Essayez de minimiser les droits de ce compte si un hacker vous le vole.

Pour cet exemple, sachez que je suis dans le domaine virtual.fr donc pour me connecté à mon serveur DNS ayant pour IP 192.168.0.12 je dois renseigner le DN suivant :

DC=virtual,DC=fr

Après avoir testé avec l’application, nous pouvons enfin nous attarder au fichier .htaccess. Vous devez tout d’abord activer les extensions apache2 authzn_ldap et ldap. Si votre .htaccess ne marche pas, activez le module rewrite.

Ensuite voici le fichier .htaccess

AuthName "Warning : Restricted Area !!"
AuthType Basic
AuthBasicProvider ldap
AuthzLDAPAuthoritative off
AuthLDAPURL "ldap://serveur.virtual.fr:389/DC=virtual,DC=fr?sAMAccountName?sub?(objectClass=*)" NONE
AuthLDAPBindDN "ldap@virtual.fr"
AuthLDAPBindPassword motpasse
require valid-user </code>

Donc je vais expliquer chaque ligne :

AuthName "Warning : Restricted Area !!"
# définit le message qui s’affichera sur notre fenêtre de connexion
AuthType Basic
# nous définissons une authentification dite basique
AuthBasicProvider ldap
# nous demandons de passer par les annuaires LDAP
AuthzLDAPAuthoritative off
# permet de dire que nous n’utilisons pas de certificat particulier 
# lors de la requête dans Active Directory
AuthLDAPURL "ldap://serveur.virtual.fr:389/DC=virtual,DC=fr?sAMAccountName?sub?(objectClass=*)" NONE
# url utilisée pour aller effectuée notre requête. Nous demandons d’aller vérifier le nom de compte
# à partir de n’importe quelle classe d’objet de notre annuaire mais ayant pour contrainte d’appartenir
# au domaine virtual.fr
# Le NONE veut dire qu'on utilise aucun protocole de sécurité
AuthLDAPBindDN ldap@virtual.fr
# définit le login du compte de test 
AuthLDAPBindPassword motpasse
# et là son mot de passe
require valid-user
# pour finir nous acceptons d’afficher le site si seulement l’utilisateur entré est valide.

Voilà. Si vous ne voulez pas vous embêter avec les sessions utilisateurs ou si l’espace est réservé aux personnes enregistrées dans votre annuaire, cette méthode s’avère assez simple à mettre en place. Vous pouvez aussi ajouter différentes contraintes comme le groupe, le poste de travail à utiliser, …