… Ou comment sentir poindre sur vous le regard réprobateur de vos amis lors d’une soirée, alors qu’en toute candeur vous abordiez ce fascinant sujet avec un confrère émérite, le « Vos discussions d’admins, ça commence à… » ne tardant jamais à suivre. Le fait est qu’en société, le profane ne goûte guère à vos échanges académiques en la matière. Encore que périodiquement, ils souhaitent connaître votre position sur le « NTLDR is missing, Operating System not found », un sujet qui curieusement semble les intéresser grandement.

Pré-requis :

  • GNU/Linux Debian 6 « Squeeze » dont les partitions sont chiffrées avec LUKS
  • SSH installé

Conventions :

  • prompt : # commande : exécuter la commande sous le compte root ou précédée de la commande « sudo »
  • prompt : $ commande : exécuter la commande sous le compte utilisateur

Cet épineux problème, le montage partition chiffrée pas le NTLDR, survient quand on souhaite chiffrer son serveur GNU/Linux et pouvoir le redémarrer à distance via SSH. En effet, le mot de passe/clé privée est demandé avant le lancement du service SSH, un cas de Jörmungand informatique classique.

Après moultes recherches sur le sujet et divers essais infructueux, je suis tombé sur ce post de l’auteur du tutoriel pour Debian qui indiquait que cette problématique était prise en charge nativement par Debian depuis fin 2008.

On commence par installer Dropbear (un serveur/client SSH) et Busybox (un mini shell avec les commandes basiques). Initrd sera mis à jour lors de l’installation pour inclure ces logiciels.

# apt-get install dropbear busybox

Lors de l’installation de Dropbear, les clés publique /etc/initramfs-tools/root/.ssh/id_rsa.pub et privées /etc/initramfs-tools/root/.ssh/id_rsa sont générées. De plus, la clé publique est automatiquement ajoutée au fichier /etc/initramfs-tools/root/.ssh/authorized_keys.

On va donc récupérer la clé privée sur notre PC local afin l’utiliser pour l’authentification sur le serveur lors du démarrage de ce dernier :

# scp root@myserver:/etc/initramfs-tools/root/.ssh/id_rsa /home/user/

Il ne reste plus qu’à redémarrer le serveur Debian et lancer la commande suivante qui outre l’authentification SSH va déchiffrer le volume LUKS et par la suite monter la partition  :

# ssh -o "UserKnownHostsFile=~/.ssh/known_hosts.initramfs" -i "/home/user/id_rsa" root@myserver "echo -ne \"myLUKSpassword\" >/lib/cryptsetup/passfifo"

-o « UserKnownHostsFile=~/.ssh/known_hosts.initramfs » : utilise un autre fichier « known_hosts » car la clé publique du serveur SSH « classique » n’est pas identique à celle du serveur Dropbear, sans cette option, le client SSH interpréterait cette nouvelle clé comme une compromission du serveur et refuserait de s’y connecter.

-i « /home/user/id_rsa » : on utilise la clé privée générée lors de l’installation de Dropbear et qu’on a récupérer précédemment.

« echo -ne \ »myLUKSpassword\ » >/lib/cryptsetup/passfifo » : le mot de passe est envoyé dans fichier FIFO /lib/cryptsetup/passfifo ce qui permet le déchiffrage du volume.

Plusieurs remarques pour finir :

  • Si votre mot de passe LUKS contient des caractères exotiques qui peuvent être interprétés par bash pendant l’exécution de la commande SSH, il faut les précéder de \ ou  »  » ou ‘ ‘ afin de les « échapper ».  Le ! par exemple (Se transforme en PID de la commande (asynchrone) exécutée en arrière-plan le plus récemment dixit man bash) nécessite de désactiver l’interprétation de l’historique par la commande set +H avant d’entrer la commande SSH, set -H réactivera l’interprétation de l’historique.
  • Ce tutoriel n’a été validé que sur Debian 6, dans le principe il devrait fonctionner sur d’autres distributions. J’ai cependant vu plusieurs sujets indiquant des problèmes avec Ubuntu à cause notamment de l’utilisation de Plymouth.
  • Je n’ai pas vu de solution utilisant le mot de passe root afin de se connecter au serveur SSH Dropbear mais ça existe peut-être…

Sources :

multisystem logoIl y a de cela plusieurs années, je m’étais employé à créer un CD (puis DVD) bootable, contenant les logiciels les plus utiles pour dépanner un PC. Des heures et des heures à écumer les sites de Bart Lagerweij et Séverin Terrier dans le but d’intégrer Live CD’s de Windows XP,  programmes et autres distributions GNU/Linux au sein d’une même galette. Expérience passionnante et instructive s’il en est, mais pour le moins pénible et consommatrice de temps lors des diverses mises à jour à inclure.

Ce processus fastidieux va être grandement facilité par l’arrivée des clé USB de taille conséquente et surtout par le MultiSystem (anciennement MultiBoot). Terminés donc, les DVD illisibles à force de transport et de gravures à répétition, oubliée la limite des 4,7 Gio sans évoquer les performances. Mais surtout, l’ajout des programmes se fait maintenant par un simple glisser/déposer.

Conventions :

  • prompt : # commande : exécuter la commande sous le compte root ou précédée de la commande « sudo »
  • prompt : $ commande : exécuter la commande sous le compte utilisateur
  • Attention aux césures dans les commandes

1. Installation

Maintenant que j’ai bien appâté le chaland, je peux traîtreusement signaler que MultiSystem n’est pas multi-système (fallait que je la fasse…), il n’est nativement disponible que sous GNU/Linux, et paf ! Heureusement, le (les ?) développeur propose une image VirtualBox qui permettra aux utilisateurs Windows et Mac de créer eux aussi une super clé USB pour dépanner leur Madame Michu favorite.

Toutes les infos concernant les différentes installations possibles sont disponibles ici.

Une fois n’est pas coutume, soyons sectaires et intéressons-nous maintenant à l’installation pour GNU/Linux Debian et dérivés.

– Éditer le fichier /etc/sources.list et ajouter le dépôt suivant :

## Depôt MultiSystem
deb http://liveusb.info/multisystem/depot all main

– Ajouter la clé publique :

# wget -q http://liveusb.info/multisystem/depot/multisystem.asc -O- |
sudo apt-key add -

– Rafraîchir la liste des dépôts et installer MultiSystem :

# apt-get update
# apt-get install multisystem

La viande est dans le torchon !

2. Utilisation

A partir d’ici c’est du gâteau, il suffit de brancher la clé USB, de lancer le MultiSystem à partir du menu Applications > Accessoires et de lui indiquer la clé USB à utiliser (qui sera entièrement formatée).

Ensuite, il n’y a plus qu’à ajouter les ISO/IMG de votre choix dans la zone dédiée. La liste des logiciels compatibles est disponible ici mais rien n’empêche de faire vos propres tests et pourquoi pas contribuer à élargir cette liste.

Cerise sur le gâteau, il est possible de tester la clé dans une machine virtuelle Qemu ou VirtualBox directement via l’interface de MultiSystem (sous réserve qu’ils soient installés). Attention cependant, lors de ces tests certains logiciels peuvent ne pas marcher alors qu’ils seront parfaitement fonctionnels sur une machine physique.

Pour finir, voici la liste des logiciels actuellement sur ma clé, il y a évidemment des doublons entre ces différentes solutions mais au prix du Gio, pourquoi se priver ?

(Le fond d’écran personnalisé vient de chez 3dlounge.be)

MultiSystem, c’est simple, pratique, fonctionnel, GNU-GPLv3, mis à jour fréquemment  et c’est français Monsieur !

Mise à jour 05/11/2015 : La procédure est validée avec Exchange 2007, Thunderbird 42, Lightning 4.3b2 et DAVmail 4.6.2-2377-1 (Le support de Exchange 2010 a été amélioré avec la version 4 de DAVmail).

Mise à jour 13/09/2011 : Mise à jour des paramètres de connexion à l’annuaire LDAP.

En entreprise, le couple Outlook/Exchange règne encore en maître. Mais quelques irréductibles s’acharnent encore à vouloir utiliser leurs propres clients de messagerie, compliquant ainsi la tâche de leurs sysadmins trop permissifs. Une pierre de plus sur le mur des lamentations de ces derniers envers leurs utilisateurs ? Pas forcément…

Nous allons voir comment utiliser le client de messagerie Mozilla Thunderbird/Icedove avec un serveur Microsoft Exchange 2007 grâce au logicile DAVmail. Cette solution n’offre pas toutes les possibilités du client de Microsoft mais permet d’utiliser la messagerie, la liste des contacts ainsi que le calendrier.

Il est évidemment possible d’utiliser DAVmail avec d’autres clients de messagerie qui supportent les protocoles utilisés ici.

Conventions :

  • prompt : # commande : exécuter la commande sous le compte root ou précédée de la commande « sudo »
  • prompt : $ commande : exécuter la commande sous le compte utilisateur

Pré-requis :

  • Serveur Windows 2008/R2 + Exchange 2007 à jour
  • Outlook Web Access (OWA) installé et activé sur le serveur Exchange 2007
  • Mozilla Thunderbird/Icedove 3.x avec l’extension Lightning (version 64 bits)
  • Java Runtime Environment 1.5.x/1.6.x à jour

1. DAVmail

1.1. Installation

Davmail est une application Java servant de passerelle entre Thunderbird et Exchange via OWA.Télécharger la dernière version correspondant à votre OS (à ce jour : davmail-3.9.1-1646) : http://sourceforge.net/projects/davmail/files/davmail/

L’installation sous Windows et MacOS X ne posant pas de problème particulier, voici la procédure pour GNU/Linux.

Installation sous Debian et dérivés :

# dpkg -i davmail_3.9.1-1646-1_all.deb

Le logiciel est disponible dans le menu Application > Internet

Installation de la tarball sous GNU/Linux :

# cp davmail-linux-x86_64-3.9.1-1646.tgz /opt
# tar zxvf  davmail-linux-x86_64-3.9.1-1646.tgz
# mv davmail-linux-x86_64-3.9.1-1646 davmail

Le logiciel est disponible via la commande suivante :

$ cd /opt/davmail
$ ./davmail.sh

1.2. Configuration

Configurer DAVmail de la manière suivante.

Configuration Passerelle DavMail

  • URL OWA (Exchange) : https://my-company.com/owa (Adresse de connexion à OWA)
  • Port POP local : 1110
  • Port IMAP local : 1143
  • Port SMTP local : 1025
  • Port HTTP caldav : 1080 (Accès au calendrier)
  • Port LDAP local : 1389 (Accès à la liste des contacts)

2. Thunderbird

2.1. Configuration du compte IMAP

Créer un compte IMAP comme sur les captures d’écran suivantes.

Thunderbird compte IMAP 02

Notez que la transmission des identifiant et mot de passe se fait en clair entre Thunderbird et DAVmail mais cela n’a guère d’importance, le processus ayant lieu en local. Le reste des communications entre DAVmail et Exchange sont cryptés via HTTPS (HTTP + SSL).

2.2. Configuration de la liste de contacts

Créer un nouveau carnets d’adresses LDAP :

Outils > Carnets d’adresses > Fichier > Nouveau > Annuaire LDAP

Configurer comme suit :

Thunderbird-compte-LDAP

  • Nom : Serveur Exchange
  • Nom d’hôte : localhost
  • Nom distinct de base : OU=people
  • Numéro de port : 1389
  • Connecter avec l’utilisateur : my-company\user

Le carnet d’adresse est maintenant configuré mais pour une raison qui m’échappe, il n’affiche pas la liste des contacts. Cependant, si on tape une lettre dans le champs de recherche la liste des contacts apparaît. De même, lors de la saisie de l’adresse d’un correspondant dans un email, l’auto-complétion fonctionne. Ce « bug » est probablement du à Thunderbird

2.3. Configuration du calendrier

Créer un nouveau calendrier :

Fichier > Nouveau > Agenda > Sur le réseau > CalDAV

Emplacement (user@my-company.com est l’adresse email, pas l’identifiant Active Directory) : http://localhost:1080/users/user@my-company.com/calendar

Saisir les identifiants :

  • Utilisateur : my-company\user
  • Mot de passe : ***********

Le calendrier est maintenant accessible en lecture/écriture.

Et hop, plus besoin de migrer son poste de travail vers Windows, l’honneur est sauf (ainsi que la barbe si durement acquise)…

Sources :