Archive for 'Informatique'

Lorsque l’on fait du déploiement de poste (ou de serveur) à grande échelle, un des moyen les plus simple est de mettre en place un serveur PXE. Je ne reviendrais pas ici sur la façon de configurer un tel serveur, le net fourmillant de tutoriaux expliquant comment les mettre en place. Cette méthode fonctionne dans beaucoup de cas, mais peut vite devenir galère lorsqu’on utilise des équipements qui ne sont pas standard, comme des cartes réseaux vmware (vmxnet) ou alors des cartes HBA pour installer son système sur une baie de disque fibre, ou bien tout autre périphérique que l’on souhaite utiliser durant l’installation du système.
Je vais prendre pour exemple dans cet article l’ajout de pilotes pour les cartes vmware, sur une distribution CentOS, mais cet exemple est facilement transposable à n’importe quel driver, et à n’importe quelle distribution.
Pour commencer, on va se mettre sur une machine déjà installée avec la distribution que l’on souhaite déployer et les drivers que l’on souhaite ajoutés installés sur le système.
Tout d’abord, il faut récupérer le fichier initrd.img, qui se trouve dans les fichiers liés au PXE sur le CD ou DVD de la distribution (ou sur le serveur PXE). dans le cas d’un DVD CentOS, le fichier se trouve dans “images/pxeboot”.
On va commencer par préparer notre espace de travail :

mkdir /tmp/pxe
cd /tmp/pxe
cp /mnt/dvd/images/pxeboot/initrd.img .
mkdir initrd

Ensuite, on va décompresser le RAMDISK, afin d’avoir accès aux drivers.

cd initrd
zcat ../initrd.img | cpio -id

Maintenant, il convient de repérer le code du périphérique :

$ lspci
[...]
03:00.0 Ethernet controller: VMware VMXNET3 Ethernet Controller (rev 01)

puis, pour repérer le code :

$ lspci -n
[...]
03:00.0 0200: 15ad:07b0 (rev 01)

on utilise donc le code 03:00.0 pour repérer le code du périphérique qui nous intéresse : 15ad:07b0
Après avoir gardé ce code en mémoire, on va maintenant décompresser l’archive des modules du noyau PXE :

mkdir /tmp/pxe/modules
cd /tmp/pxe/modules
zcat ../initrd/modules/modules.cgz  | cpio -id

Puis, nous allons récupérer les drivers sur le système pour les inclure au module. Le chemin vers les drivers ainsi que celui du noyau PXE est à adapter en fonction de votre distribution et des drivers que vous souhaitez intégrer :

cd /tmp/pxe/modules/2.6.18-194.17.1.el5/x86_64
cp /lib/modules/2.6.18-194.el5/misc/vmxnet*.ko .
chmod 744 vmxnet*

il faut maintenant recompresser l’archive des modules :

cd /tmp/pxe/modules
find . | cpio -o -H crc | gzip -9 > /tmp/pxe/initrd/modules/modules.cgz

Puis, on édite le fichier des identifiants pci pour y ajouter nos modules :

cd /tmp/pxe/initrd/modules
vim pci.ids

et on cherche l’entrée correspondant au premier chiffre trouvé dans le lspci -n (ici 15ad pour vmware).
Si l’entrée n’existe pas, il faut la rajouter en lui donnant un nom. Puis, il faut rajouter une sous-entrée avec le deuxième chiffre. Dans mon cas, cela va donner ceci :

15ad  VMware Inc
        0405  Abstract SVGA II Adapter
        0710  Abstract SVGA Adapter
        07b0  VMware Adapter

ensuite, on édite le fichier modules-info afin de rajouter nos deux drivers, comme ceci :

vmxnet
      eth
      "VMware vmxnet ethernet driver"
vmxnet3
      eth
      "VMware vmxnet3 ethernet driver"

Puis, on rajoute les alias présent dans le système pour nos drivers au fichier modules.alias :

grep vmxnet /lib/modules/2.6.18-194.17.1.el5/modules.alias >> /tmp/pxe/initrd/modules/modules.alias

enfin, il ne reste plus qu’a ré-empaqueter le ramdisk :

cd /tmp/pxe/initrd
find . | cpio -o -H newc | gzip -9 > /tmp/pxe/initrd.img.vmxnet

et à le mettre sur le serveur PXE :

cp /tmp/work/initrd.img.vmxnet /tftpboot/centos/centos5.5/x86_64

Et voilà, le tour est joué. Dans ce cas précis, cela permet de déclarer directement des machines virtuelles avec des drivers vmxnet, au lieu de faire l’installation avec des drivers e1000, puis de modifier la carte réseau une fois le système installé.

Tags: , , , ,

Pour ceux qui ne le connaissent pas, shodan est un moteur de recherche fort utile pour tous ceux qui recherchent des serveurs possédant des failles, ou qui recherchent des versions vulnérables de logiciels.

Ainsi, on peut chercher par exemple, des serveurs offrant un accès telnet depuis internet. Ou bien encore des versions d’apache vulnérables. Ou alors, une fois un compte crée, on peut même chercher des failles connues sur des sous-réseaux particuliers (exemple). On peut également chercher les imprimantes ouvertes sur internet, et on peut même lancer des jobs à distance…

Cela fonctionne également pour SSH, FTP, VNC, et un certain nombre d’autres protocoles. On peut même chercher les webcam ouvertes sur le port 80, comme celle-ci par exemple.

Les recherches peuvent même être restreintes par pays.

Bref, Shodan est un moteur de recherche puissant et efficace à garder en bookmark.

Tags: , ,

Certains d’entre vous l’aurons peut-être remarqué, il existe un paquet thunderbird-3.0 dans la dernière Ubuntu.

Thunderbird 3 m’intéresse, car il a été très remanié au niveau du look, et il supporte les onglets.

Malheureusement, lorsque j’ai essayé d’installer ce paquet, j’ai eu le droit à un “pas de version candidate”.

J’ai donc cherché un peu, et j’ai découvert ubuntuzilla.

Ubuntuzilla est un script écrit en python, qui permet d’installer les dernières versions des logiciels firefox, thunderbird et seamonkey.

Pour l’installer, il suffit d’ajouter un dépot :
echo "deb http://switch.dl.sourceforge.net/project/ubuntuzilla/apt all main" | sudo tee -a /etc/apt/sources.list > /dev/null
sudo apt-key adv --recv-keys --keyserver keyserver.ubuntu.com C1289A29
sudo apt-get update

Puis, d’installer le paquet :
sudo apt-get install ubuntuzilla

Ensuite, il faut lancer le script :
ubuntuzilla.py -a install -p thunderbird

à noter qu’on peut remplacer thunderbird dans la commande par firefox ou seamonky

Le script pose des questions comme la langue, si l’on veut sauvegarder…

Une fois le script terminé, thunderbird est disponible, et le thunderbird de la distribution (2.5) est renommé en /usr/bin/thunderbird.ubuntu

Si vous souhaitez revenir en arrière, il suffit de taper :
ubuntuzilla.py -a remove -p thunderbird

et si vous voulez lire en détail toutes les possibilités du script, je vous renvoie au site du projet.

Tags: , , , ,

Selon Wikipédia, un tunnel est :

“une encapsulation de données d’un protocole réseau dans un autre, situé dans la même couche du modèle en couches, ou dans une couche de niveau supérieur. En sécurité, on crée souvent des tunnels chiffrés, par exemple comme le fait SSH. Les données peuvent alors y circuler sans craindre d’être écoutées. Les tunnels peuvent être utilisés pour créer des réseaux privés virtuels (VPN).”

Il existe un logiciel pour faciliter  la mise en place des tunnels et il s’appelle gSTM (Gnome SSH Tunnel Manager).

pour l’installer il suffit de taper :

sudo aptitude install gstm

puis il se trouve dans Applications -> Internet.

L’interface est assez simple :

gstm-accueil

une fois dans l’interface, vous n’avez plus qu’a “Ajouter” votre tunnel.

il faut d’abord donner un nom à votre tunnel :

gstm-tuname

puis définir les propriétés du tunnel :

gstm-tunprop

à savoir l’hôte vers lequel se connecter en SSH et le login, mais aussi si vous souhaitez que la connexion s’établisse automatiquement au lancement du logiciel, et éventuellement une clée privé.

Enfin, il ne reste plus qu’a configurer les redirections à mettre en place.

Il y a trois type de redirections :

gstm-tunredirect-local gstm-tunredirect-stat
gstm-tunredirect-dyn

Vous pouvez donc par exemple rediriger un port vers une autre machine et un autre port.

Ainsi dans l’exemple ci-dessus, lorsque l’on a activé le tunnel et que l’on tape http://localhost:1080 dans son navigateur, on se connecte depuis la machine foo.com à la machine intranet.foo.com sur le port 80…

Il peut y avoir des tas d’applications aux tunnels, comme par exemple, accéder facilement à des machines fermées de l’extérieur en ayant juste un point d’entrée SSH au réseau de ces machines, ou alors tout simplement, surfer de chez soi alors qu’on est au bureau. En plus, tout est crypté, donc, “ni vu, ni connu”.

En conclusion, je pense que tout le monde peut trouver une application concrète à ce petit logiciel…

Tags: , , , ,

Migration Ubuntu/OpenGEU ou Gnome/Enlightenment

L’autre jour, un collègue m’a fait découvrir une distribution appelée OpenGEU. Cette distribution est un dérivé d’Ubuntu, mais avec une interface Enlightenment modifiée, intégrant des gadgets et des beauxthèmes.

Cette distribution n’apporte rien en terme de fonctionnalités, mais est très jolie. Vous pouvez en voir un exemple ici.

Si vous avez une Ubuntu et que vous souhaiter essayer ce nouvel environnement, rien de plus simple, il suffit d’ajouter les deux lignes suivantes :

deb http://opengeu.linuxfreedom.com/ubuntu intrepid e17
deb http://opengeu.linuxfreedom.com/ubuntu intrepid opengeu

dans le sources.list (sudo gedit /etc/apt/sources.list)

puis vous importez la clé du dépot :

wget -q http://opengeu.linuxfreedom.com/ubuntu/dists/repo.key -O - | sudo apt-key add -

enfin, il vous suffit de taper :


sudo aptitude update
sudo aptitude install opengeu-desktop

Une fois l’installation terminée, vous n’avez plus qu’a configurer l’écran de connexion pour changer le thème de gdm,
puis, de sortir de votre session et choisir la session Ecomorph E17. et là, vous n’avez plus qu’à jouer…

Tags: , , , ,
« Articles précédents