Beruflich Dokumente
Kultur Dokumente
lignes de commande
Travail de Bachelor
Session 2010
INTRODUCTION ........................................................................................................ 3
PR-REQUIS................................................................................................................ 6
3.2
3.3
CD ........................................................................................................................... 11
3.4
USB ......................................................................................................................... 11
3.5
RSEAU .................................................................................................................... 12
CONCLUSION............................................................................................................ 16
4.2
PARTITION ............................................................................................................... 19
4.3
LOG.......................................................................................................................... 26
4.6
4.7
4.7.1
4.7.2
4.7.3
5
PR-REQUIS.............................................................................................................. 30
5.2
5.3
5.3.1
1
Problmatique .................................................................................................... 27
Mise en uvre 1 ................................................................................................. 28
Mise en uvre 2 ................................................................................................. 29
Karoubi Nathanal
SCNARIO ................................................................................................................ 36
6.2
6.3
TEST ........................................................................................................................ 38
PR-REQUIS.............................................................................................................. 39
7.2
7.3
TEST ........................................................................................................................ 40
7.4
CONCLUSION .......................................................................................................... 42
USB : ....................................................................................................................... 43
SSH : ....................................................................................................................... 44
Symptmes ......................................................................................................... 44
Solutions et causes.............................................................................................. 44
ANNEXES ................................................................................................................ 47
ANNEXE A :
ANNEXE B :
ANNEXE C :
INSTALL.LOG ............................................................................................... 50
ANNEXE D :
INETD.CONF ................................................................................................ 51
ANNEXE E :
ANNEXE F :
ANNEXE G :
Session 2009-2010
Karoubi Nathanal
1 Introduction
De nos jours les solutions de virtualisation sont de plus en plus utilises pour, principalement,
des raisons conomiques. Car une seule machine peut remplacer plusieurs dizaines dautres.
Un des grands avantages dans le cadre du laboratoire est quil est trs facile de crer de
machine virtuelle pour des tests.
Ds 2008, VMware, socit qui propose des produits lis virtualisation, a sorti un serveur de
virtualisation gratuit appel ESXi. Ce logiciel est un hyperviseur qui sinstalle directement sur
le matriel par rapport dautres solutions qui existent, les logiciels sont hberges par un
autre OS (Windows, linux).
Afin de pouvoir administrer le serveur et les machines virtuelles, il existe une interface
graphique (GUI) appel vSphere Client . Il ne permet malheureusement pas dexcuter des
scripts dans le but dautomatiser des tches, cest pourquoi mon travail de Bachelor consiste
administrer le serveur sans passer par cette interface, en ligne de commande (CLI) en utilisant
une console soit distante soit locale. Cela peut tre utile si la connexion au serveur ESXi via le
client vSphere est interrompue et quil ne reste plus que la ligne de commande pour le
dpanner.
Mon travail qui a dur huit semaines, il se compose en cinq parties :
-
Analyse de SSH ainsi que des principaux risques lis ce protocole, durant une
semaine. cf chap5
Session 2009-2010
Karoubi Nathanal
2 Architecture dESXi :
Nous allons commencer par voir quoi ressemble un serveur VMware ESXi
schmatiquement.
Un serveur ESXi est bas sur un systme dexploitation ddi la virtualisation. On appelle
cette solution de virtualisation bare-metal, car la couche de virtualisation sinstalle
directement au-dessus du matriel. Le noyau est un Hyperviseur appel VMkernel. Pour
ladministration ESXi utilise un petit environnement POSIX (Busybox) qui fournit une
interface distance limite.
http://searchvmware.techtarget.com/generic/0,295582,sid179_gci1509899,00.html
Architecture dESXi
VMkernel : Gre lensemble des ressources matrielles (CPU, mmoire, rseaux, disque).
Cest la couche la plus basse, avant le matriel. Il contient lordonnanceur, les
drivers Cest le cur du serveur, ce processus lance tous les autres processus.
http://www.vmware.com/files/pdf/ESXi_architecture.pdf
DCUI :
Session 2009-2010
Karoubi Nathanal
Busybox :
dropbear :
Session 2009-2010
Karoubi Nathanal
avec un CD
via le rseau
RAM :
2x 2G DDR800
3.1 Pr-requis
Tlcharger
Esxi4.0 :http://downloads.vmware.com/fr/d/info/datacenter_downloads/vmware_esxi/4
Build : 208167 Taille du fichier : 352 MB
Session 2009-2010
Karoubi Nathanal
Toutes les tapes dont le nom contient Step sont les fonctions python qui sont contenues
dans : install/usr/lib/vmware/installer/ThinESX/ThinESXInstallStep.py
Les tapes encadres en rouge, sont les tapes obligatoires linstallation. Il sagit du choix
du disque dinstallation, de linstallation de limage .dd sur le disque, et le redmarrage du
serveur.
Les tapes encadres en vert, sont des tapes demandant une intervention externe au clavier.
Comme par exemple laccord de lEULA (EndUserLicenseAgreement), la confirmation de
linstallation
Session 2009-2010
Karoubi Nathanal
LicenseStep :
Session 2009-2010
Karoubi Nathanal
TargetSelectionStep :
ConfirmStep :
Session 2009-2010
Karoubi Nathanal
CompleteStep :
10
Session 2009-2010
Karoubi Nathanal
3.3 CD
Graver le .iso via Nero sur le CD, configurer le bios du serveur afin de booter sur le lecteur
CD, ou appuyer sur F12 pendant au dmarrage, et linstallation prend environ 4 minutes.
3.4 USB
Peut tre utile si le futur serveur ESXi ne comporte pas de lecteur CD.
Pr-requis : Tlcharger la dernire version de Syslinux sur :
http://www.kernel.org/pub/linux/utils/boot/syslinux/ la notre tait la version 3.86 et lextraire.
Cette marche suivre sinspire du trs bon tutoriel :
http://vm-help.com/esx40i/ESXi_USB_install.php
Formater la cl USB2.0 en FAT32
extraire le contenu de liso sur la cl
ouvrir une commande dans le rpertoire win32 de syslinux
excuter la commande syslinux.exe m f a x: (x est la lettre de la cl USB)
renommer isolinux.cfg en syslinux.cfg sur la cl.
Configurer le bios (cf.A2 )
Linstallation prend environ 4 minutes.
11
Session 2009-2010
Karoubi Nathanal
3.5 Rseau
Cette mthode utilise un dmarrage PXE (Preinstalle eXecution Enivonement), il permet
une station de travail de rcuprer une image sur le rseau. Limage est pr-charge en RAM
pour tre install. On utilise linstallation par le rseau pour centraliser les fichiers un seul
endroit, sil ny a pas de lecteur CD. Pour cela jai utilis Microsoft Windows serveur 2008, et
plus particulirement le rle DHCP, ainsi quun serveur TFTP open-source.
Rseau de test
Pr-requis :
12
Session 2009-2010
Karoubi Nathanal
Par
dfaut
les
fichiers
contenus
dans
le
serveur
TFTP
sont
dans :
syslinux-3.86\com32\menu\vesamenu.c32
ainsi
que
syslinux-
13
Session 2009-2010
Karoubi Nathanal
14
Session 2009-2010
Karoubi Nathanal
boot.cfg contient les options de boot et les modules chargs au dmarrage dESXi :
15
Session 2009-2010
Karoubi Nathanal
3.7 Conclusion
Linstallation depuis le rseau nest pas complique configurer, surtout si lon possde dj
un serveur DHCP, et elle permet un dploiement sur un nombre de machines pouvant tre
important. Pour une installation at Home lUSB est un trs bon moyen, il permet de
pouvoir modifier les fichiers sans devoir graver un CD chaque fois. Le fait que toute
linstallation est faite par des scripts permet de bien comprendre ce quil se passe et de
pouvoir les modifier, comme lillustre le scnario2.
16
Session 2009-2010
Karoubi Nathanal
4 Systme de fichiers
Dans ce chapitre nous allons voir comment ESXi est partitionn, les fonctions des diffrentes
partitions. Nous verrons les fichiers de configuration qui permettent en cas de crash du
systme la rcupration de la config original, les commandes, les fichiers de logs.
Ceci donne accs ce que VMware appelle Tech support Mode , normalement laccs
cette console devrait tre fait uniquement en tant en relation avec le support technique afin
de diagnostiquer et/ou rparer les htes VMware ESXi. Plusieurs de mes manipulations
passeront par cette interface. Les commandes dcrites ci-dessous se situent dans /bin ou /sbin.
http://kb.vmware.com/selfservice/microsites/search.do?language=en_US&cmd=displayKC&e
xternalId=1003677
Beaucoup de commandes Unix sont accessibles :
find
grep
services.ch
17
Session 2009-2010
Karoubi Nathanal
ls
cd
ps
kill
stop un processus
esxcfg-vswitch
Ajouter un vSwitch
# esxcfg-vswitch --add <nom du vSwitch>
esxcfg-vmknic
ajouter un VMkernel :
# esxcfg-vmknic a i <adrIP de management> n 255.255.255.0 <nom du port groupe>
-vim-cmd : liste des commandes permettant de grer les machines virtuelles.
18
Session 2009-2010
Karoubi Nathanal
4.2 Partition
Voici les partitions et leurs fonctions, une fois ESXi install, avec la commande :
fdisk l et df -h
Hypervisor0 est la partition de boot, elle est de 4MB et contient quatre fichiers :
- ldlinux.sys
- mboot.c32
- safeboot.c32
- syslinux.cfg
Hypervisor1 est monte en /bootbank, correspond lencadrement marron, elle est de 250MB
et contient les fichiers suivants :
- boot.cfg
- cim.vgz
- cimstg.tgz
- licence.tgz
19
Session 2009-2010
Karoubi Nathanal
20
Session 2009-2010
Karoubi Nathanal
esx.conf
21
Session 2009-2010
Karoubi Nathanal
22
Session 2009-2010
Karoubi Nathanal
1)
2)
3)
23
Permet de dfinir le nom de lhte, ainsi que le nom de domaine. Si lon a plusieurs
ESXi, il est plus facile de les diffrencier. Les adresses IP au-dessus et en-dessous
indique lIP sur serveur. Pour moi ces IP sont la copie de lIP du premier VMkernel, et
en aucun cas pourraient modifier la config.
Dans cet exemple, on peut voir quil y a deux interfaces rseau (pnic) sur le serveur,
lalgorithme qui permet de calculer ladresse mac virtuelle utilise le prfixe 00:50:56:5
qui est rserv VMware et rutilise les trois derniers octets de la MAC physique.
http://virtrix.blogspot.com/2007/04/vmware-configuring-static-mac-address.html
Reprsente deux VMkernel puisque se sont de ports de management, on peut voir que
ladresse IP est statique, il dfini en mme temps les groupes de ports.
Session 2009-2010
Karoubi Nathanal
ntp.conf
Le protocole NTP (Network Time Protocole) permet de synchroniser lhorloge locale dun
ordinateur sur une heure de rfrence. Lorsque lon veut tudier les logs, le temps est un
paramtre prcieux. Pour lactiver :
Le fichier etc/ntp.conf permet de configurer ladresse IP du serveur distant NTP :
Taper vi etc/ntp.conf
Ajouter la ligne : server [adresse IP dun serveur NTP]
Sauvegarder, et redmarrer le service ntpd avec ntpd restart
4.3.3
sysboot.conf
Ce fichier permet de configurer dans quel fichier les logs du boot seront crits ainsi que les
options des logs. Il se trouve dans etc/vmware/sysboot.conf.
LOGFILE="/var/log/sysboot.log"
VERBOSE="no"
SYSBOOT_DEBUG="no"
SYSBOOT_QUIET="yes"
SYSBOOT_TIME="no"
4.3.4
inetd.conf
A partir de ce fichier, qui se situe dans etc/inetd, il est possible dactiver des services qui sont
dsactivs par dfaut comme par exemple le SSH ou le FTP. Il suffit dter le # devant la
ligne que lon veut d-commenter. Lannexe A4 reprsente inetd.conf avec le SSH activ.
4.3.5
resolv.conf
A partir de ce fichier, qui se situe dans etc/resolv.conf, sont configures les adresses des
serveurs DNS et le nom de domaine.
search <nom de domaine>
nameserver <adresse IP du serveur premier DNS>
nameserver <adresse IP du serveur deuxime DNS>
24
Session 2009-2010
Karoubi Nathanal
4.4 Sauvegarde
Il existe une commande qui permet de faire une sauvegarde de la configuration dESXi :
backup.sh 0 <dossier de destination> (si je ne donne pas de dossier de destination, par dfaut
il remplacera le fichier /bootbank/state.tgz).
http://www.vmhelp.com/forum/viewtopic.php?f=6&t=1806&p=5067&hilit=backup+config#p5067
Je nai malheureusement pas compris comment faire la restauration en simple commande.
Mais jai trouv une autre mthode : aprs avoir fait la commande de backup, le systme va
crer un fichier state.tgz denviron 11kB (dpendant bien entendu de la configuration du
serveur) qui contiendra local.tgz. local.tgz quand lui contient tous les fichiers de
configurations dun systme ESXi :
local/etc/
Donc si je veux faire une restauration du systme, je dcompresse local.tgz la racine et les
fichiers extrait de ma sauvegarde remplaceront les anciens.
Il faut redmarrer pour que cela soit effectif.
25
Session 2009-2010
Karoubi Nathanal
4.5 Log
Pour trouver tous les fichiers de log sur ESXi, jai utilis la fonction find de la busybox :
Les logs du VMkernel sont sur /var/log/messages on peut aussi les consulter en faisant
alt+F12 depuis le DCUI. Le format est :
MoisJourHeureMinuteSeconde Nomduprocessus[Id du process] : Info
Jun 21 14:05:59 getty[903045]: VMware Tech Support Mode successfully accessed
Jun 21 14:06:00 login[903045]: pam_unix(login:session): session opened for user
root by (uid=0)
Jun 21 14:06:00 login[903045]: root login on 'UNKNOWN'
from
Session 2009-2010
Karoubi Nathanal
Problmatique
Aprs avoir configur avec vSphere le scnario suivant sur ESXi_1, comment viter un travail
rptitif si je veux utiliser sur ESXi_2 selon le prof
27
Session 2009-2010
Karoubi Nathanal
4.7.2
Mise en uvre 1
Jai cr sur ESXi_1, via vSphere, un vSwitch et utilis la mme mthode que pour la
configuration IP. Il en rsulte est la modification dun seul fichier : etc/vmware/esx.conf.
Pour confirmer que cela fonctionne, jai donc cre un rseau virtuel sur ESXi_1:
Dans le fichier etc/vmware/esx.conf sur ESXi_2 jai rajout les lignes qui ont t cr sur
ESXi_1 lors de lajout des vSwitchs.
Aprs un redmarrage dESXi_2 jai pu constater via vSphere :
28
Session 2009-2010
Karoubi Nathanal
4.7.3
Mise en uvre 2
Il existe une autre mthode pour crer un vSwitch, celle prconise par VMware, en utilisant
la commande esxcfg-vswitch :
//Cration du vSwitch avec le nom
esxcfg-vswitch --add vSwitch1
//Cration du port groupe sur vSwitch1
esxcfg-vswitch --add-pg=LAN vSwitch1
//Ajout de linterface vmnic1 sur le port groupe LAN
esxcfg-vswitch --pg=LAN --link=vmnic1 vSwitch1
//Ajout de linterface vmnic2 sur le port group LAN
esxcfg-vswitch --pg=LAN --link=vmnic2 vSwitch1
//Cration du deuxime vSwitch
esxcfg-vswitch --add vSwitch2
//Cration du port groupe sur vSwitch2
esxcfg-vswitch --add-pg=DMZ vSwitch2
29
Session 2009-2010
Karoubi Nathanal
5 Connexion SSH
Afin dutiliser des logiciels comme Putty(pour accder une console distante) et WinSCP
(pour transfrer des fichiers), jai d dabord activer SSH sur le serveur. Etant donn que je ne
connaissais pas ce protocole, je vais le dcrire et expliquer le mcanisme des changes des
cls. Ainsi que SCP, qui est sous-jacent au SSH.
5.1 Pr-requis
Tlcharger WinSCP sur le site http://www.01net.com taille du fichier : 2.84 MB
Par dfaut la connexion sur un serveur ESXi est dsactive, pour lactiver jai suivi ce trs
bon tutoriel :
http://www.chermette.info/2009/06/08/activer-ssh-sur-vmware-esxi/
Il consiste aller enlever le # dans la ligne suivante dans le fichier /etc/inetd.conf (cf.A3)
en passant par la console physique :
#ssh stream tcp nowait root /sbin/dropbearmulti dropbear
-i -K60
++min=0,swap,group=shell
Et redmarrer le :
kill HUP <ID de inetd>
5.2
SSHv2 - SCP
Le protocole SSH (Secure Shell) est un protocole de connexion scuris entre un serveur et un
client SSH qui demande un change de cls asymtrique en dbut de connexion. Le but de
SSH est dobtenir une console distante scurise sur le port tcp 22.
Il a t normalis en 2006 sous forme de 3 couches :
SSH Transport Layer Protocol (SSH-TRANS) [RFC 4253]
SSH Authentification Protocol (SSH-AUTH) [RFC 4252]
SSH Connexion Protocol (SSH-CONN) [RFC 4254]
30
Session 2009-2010
Karoubi Nathanal
http://www.ineovation.com/white-papers/Secure_Shell.18042008.pdf
Le protocole SSH garantit :
- confidentialit chiffrement
- intgrit Signature
- Authentification du serveur
Le serveur SSH dispose dun couple de cls au format RSA stock dans le rpertoire
etc/dropbear/. Il est gnr lors de linstallation du serveur. Le fichier dropbear_rsa_host_key
contient la cl prive et la publique.
Pour cette tude jai utilis la configuration suivante : Sur le PC Vista, un client SSH Putty
release 0.60, et un Wireshark 2.1.7 afin danalyser le trafic, jai aussi utilis les logs de Putty
pour lanalyse.
Voici dabord une analyse de lacquisition de Wireshark qui se trouve sur le CD du projet.
Dans les diagrammes en flches le client se trouve gauche et le serveur droite. Les
nombres en bleu indiquent les paquets de lacquisition Wireshark et les nombres en rouge aux
logs de Putty en annexe.
Les trois premiers paquets servent la connexion TCP sur le port 22.
31
Session 2009-2010
Karoubi Nathanal
Les deux paquets suivants sont SSH2_MSG_KEXINIT : Lobjectif de cet change est de
ngocier lalgorithme de chiffrement, pour lchange des cls, client-serveur, serveur-client,
les algorithmes mac, de compression. Ces paquets contiennent aussi un cookie alatoire, qui
servira la cration du sessionID. A noter dans notre cas, lutilisation pour lchange des cls
de Diffie-Hellman-group1-sha1 qui correspond SHA-1 comme fonction de hash et le
groupe 2 Oakley[RFC24096.2] qui dfini comme valeur p et g.
6.2 Second Oakley Group
IKE implementations SHOULD support a MODP group with the following
prime and generator. This group is assigned id 2 (two).
The prime is 2^1024 - 2^960 - 1 + 2^64 * { [2^894 pi] + 129093 }.
Its hexadecimal value is
FFFFFFFF FFFFFFFF C90FDAA2 2168C234 C4C6628B 80DC1CD1
29024E08 8A67CC74 020BBEA6 3B139B22 514A0879 8E3404DD
EF9519B3 CD3A431B 302B0A6D F25F1437 4FE1356D 6D51C245
E485B576 625E7EC6 F44C42E9 A637ED6B 0BFF5CB6 F406B7ED
EE386BFB 5A899FA5 AE9F2411 7C4B1FE6 49286651 ECE65381
FFFFFFFF FFFFFFFF
The generator is 2 (decimal)
Extrait de la RFC 2409
32
Session 2009-2010
Karoubi Nathanal
est
le
message
SSH2_MSG_KEXINIT
de
et
I_C
est
le
message
Mthode de Diffie-Hellman
C vrifie que K_S est rellement la cl publique de S (par exemple avec un message comme
cela sur putty)
Session 2009-2010
Karoubi Nathanal
Le message SSH_MSG_NEWKEYS est envoy par les deux parties, afin de commencer
utiliser les nouvelles cls et algorithmes.
Dni de service
Le chapitre 9.3.5 de la RFC 4251 explique que ce protocole est vulnrable aux attaques par
dni de service car un pirate peut lancer beaucoup de requtes de connexion et dchange de
cl (sans authentification), se qui entrainera que le CPU et la mmoire seront dpasss.
34
Session 2009-2010
Karoubi Nathanal
Analyse du trafic
Le chapitre 9.3.9 de la RFC 4251 indique que lcoute passive peut donner un pirate
certaines informations sur la session, lutilisateur, ou dun protocole qui ne serait pas en
mesure de recueillir normalement. Par exemple il a t montr que lanalyse du trafic dune
session SSH peut donner des informations sur la longueur du mot de passe :
Avec une session shell interactif, les caractres entrs sont normalement suivis dun cho
depuis le serveur. Toutefois si une application empche lcho, ce qui est le cas quand on
entre un mot de passe, les paquets ne vont que dans une seule direction (vers le serveur). Tout
ce que le pirate a faire est de compter le nombre de paquets qui nont pas gnrs de
rponses. Le pirate doit esprer que chaque paquet contient seulement un caractre, ce qui est
souvent le cas. La norme prconise dutiliser le SSH_MSG_IGNORE, ainsi que du padding
pour contrer les tentatives danalyses.
5.3.4
Forward Secrecy
Le chapitre 9.3.7 de la RFC 4251 explique que le protocole SSH2 peut avoir comme proprit
PFS Perfect Forward Secrecy : la dcouverte dun secret long terme ne compromettra
pas les cls de sessions changes lors des prcdents changes.
5.4 SCP
SCP (Secure copy) est un protocole de transfert de fichiers de poste poste bas sur SSH
permettant de scuriser les changes. Il empche que les informations puissent tre
interceptes par dautres personnes. La scurit et lauthentification sont gres par SSH.
http://fr.wikipedia.org/wiki/Secure_copy
Les options les plus utiles sont :
-r : signifie rcursif. Si jenvoi un dossier contenant des sous-dossiers, scp parcourra
tout ce dossier.
-p signifie que scp gardera les dates de modifications et de crations des fichiers et
rpertoires ainsi que leur droit en lecture et criture.
Exemple
scp r p /rpertoire__envoyer login@nom_du_serveur:/rpertoire-de-destination
35
Session 2009-2010
Karoubi Nathanal
6.1 Scnario
Par exemple pour le laboratoire, si je dploie par PXE ESXi sur une vingtaine de machines, je
ne voudrais pas sur chacune delles aller modifier le fichier inetd.conf pour activer le SSH. Si
le fichier oem.tgz contenait le chemin daccs et le fichier inetd.conf, il viendrait remplacer
celui qui est cre par dfaut.
Session 2009-2010
Karoubi Nathanal
La taille du bloc .dd5 correspond la partition 5 (/bootbank) qui contient les modules
chargs pendant le boot process.
11. Monter le .dd5 (on monte limage .dd avec un offset de 8224*512 (8224 est le bloc de
dbut de la partition 5 et 512 est la taille des blocks)).
mount
loop,offset=$((8224*512))
VMware-VMvisor-big-208167-x86_64.dd
/tmp/esx-5/
un ls /tmp/esx-5 donne :
Session 2009-2010
Karoubi Nathanal
6.3 Test
Il mest arriv plusieurs fois lors de mes tests de me retrouver avec un cran violet, en ralit
il sagit dun PSOD :
Cet cran peut indiquer quune manipulation faite sur oem.tgz a fait planter le dmarrage. Si
le message dit : boot image is corrupt, il faut redmarrer, taper shift+o pendant le dmarrage
et taper comme option : noOem, ce qui permettra, de ne pas charger le fichier oem.tgz pour ce
boot et de le remodifier.
http://www.vm-help.com/esx40i/VMkernel_boot_options.php
Donc, jai remplac le fichier image.tgz par le nouveau sur le serveur TFTP afin de tester avec
une installation par PXE, et aprs le redmarrage de linstallation le SSH fonctionne sans
aucune manipulation.
Cela me permet donc daffirmer que le processus dinstallation et le processus de dmarrage
nest pas protg par un contrle dintgrit.
38
Session 2009-2010
Karoubi Nathanal
7.1 Pr-requis
Avoir un serveur DHCP et TFTP.
En :
5. Ouvrir le fichier
tmp/install/usr/lib/vmware/installer/ThinESX/ThinESXInstallStep.py
6. Dans la mthode TargetSelectionStep (58ieme lignes env.) modifier :
En :
39
Session 2009-2010
Karoubi Nathanal
La nouvelle condition vrifie que le premier disque, contenu dans la liste des disques de
targets, est local, et donc va linstaller sur celui la. Si ce disque nest pas local, la liste des
disques durs saffiche et entraine que lutilisateur le choisisse la main.
7. Recrer le fichier install.tgz et remplacer install.tgz contenu dans le serveur TFTP par celuici.
7.3 Test
Pour commencer, jai essay avec un seul PC Asus puis avec cinq PCs pour comparer la
charge rseau, avec bien entendu les serveurs TFTP et DHCP qui tournaient. Linstallation
cest termine sans que je ne touche au clavier. La charge rseau pendant le tlchargement
des modules t faite avec le Task Manager de Windows server 2008 :
6.5% sur un rseau 1Gb/s pour un PC
40
Session 2009-2010
Karoubi Nathanal
Le volume tlcharger tait de 352MB*5= 14080MB en 105secondes. Donc le dbit utile est
de 14080*8/105=134Mb/s. Malheureusement je nai pas russi avoir une bonne
synchronisation avec les cinq PCs se qui explique la forme de la courbe et limprcision du
dbit.
41
Session 2009-2010
Karoubi Nathanal
8 Conclusion
Des points positifs sont retenir comme les deux scnarios proposs, car en les combinant
(installation customise et automatise), il est tout fait possible dobtenir une installation
avec les paramtres que lon souhaite sur un nombre de machines pouvant tre lev.
Dans une entreprise, le redmarrage des serveurs ESXi na pas souvent lieu tandis que leur
rinstallation est encore plus rare.
Cependant, dans le cadre du laboratoire avant chaque sance, les serveurs sont compltements
rinstalles et reconfigures de faons diffrentes dune sance lautre. Je suis donc satisfait
lide de savoir que mes travaux seront utiliss ces prochaines annes.
Les points traits durant ce projet ont t limits par le dlai qui mtait imparti. En effet, jai
pass une bonne partie du temps disposition procder du reverse engineering du
systme ESXi, car il y a une grande absence de document VMware, ou autre recherche.
42
Session 2009-2010
Karoubi Nathanal
9 Problmes rencontrs
9.1 USB :
9.1.1
Symptmes
Quand jai cre la cl USB bootable je travaillais sur une ancienne machine dont la carte
mre ntait pas reconnue par ESXi et je narrivais pas justement booter sur la cl.
9.1.2
Solutions et causes
Au dbut je pensais avoir fait une mauvaise manipulation lors du formatage en FAT32,
car sur Windows Vista, les possibilits de formatage dun disque sont les suivantes :
NTFS et FAT. Je suis donc pass par un linux pour pouvoir la formater en FAT32. Aprs
cela, aucun changement, impossible de booter sur la cl. Je suis all voir dans le BIOS, la
cl USB tait bien reconnue, mais javais oubli que la carte mre ntait pas supporte
par ESXi, aprs avoir reu les nouveaux hardwares, miracle les fichiers sont copis dans
la RAM.
9.1.3
Symptmes
Une fois la cl USB insr, pour linstallation et la machine dmarr le temps pour copier
les 352MB en RAM a pris UNE HEURE
9.1.4
Solutions et causes
Un rapide calcul permet de voir la vitesse dcriture, sachant quil a fallut 129 secondes
pour un fichier de 12.5MB:
9.2 WDS :
Pour pouvoir faire un boot sur le rseau, la premire ide que jai eue a t dutiliser le
serveur Windows 2008 du laboratoire, et plus particulirement le rle Windows
Deployement System. Pour pouvoir utiliser ce rle jai du mettre le rseau que javais
cre dans un domaine, le problme est de devoir recrer tous les comptes et de modifier
43
Session 2009-2010
Karoubi Nathanal
9.3 SSH :
9.3.1
Symptmes
Selon Wireshark, les zones entoures sont censs reprsents p et g comme indiqu,
mais selon la RFC 4253 ce paquet contient K_S, f et la signature de H. Jai refais plusieurs
capture afin dtre certain que linterprtation de Wireshark tait toujours la mme.
9.3.2
Solutions et causes
Les logs de Putty donnaient effectivement le fingerprint (md5) de K_S pour ce message :
Incoming packet type
00000000 00 00 00
00000010 00 00 03
00000020 df 02 8f
00000030 02 17 c1
00000040 47 50 9d
00000050 19 ae 7a
44
31
98
01
0b
2b
31
99
/ 0x1f (SSH2_MSG_KEXDH_REPLY)
00 00 00 07 73 73 68 2d 72 73
00 01 00 00 00 82 72 3e ec e3
2a 7a 26 4d ed 25 77 e6 95 01
fd 70 e5 98 5f e2 b8 a1 f4 11
52 33 6b ad 41 91 6b 7f e0 ab
ff d6 72 f9 d0 eb 14 23 38 a8
Session 2009-2010
61
d2
96
fd
2c
3a
00
da
ae
26
00
62
........ssh-rsa.
..........r>....
....*z&M.%w.....
...+.p.._......&
GP.1R3k.A.k...,.
..z...r....#8.:b
Karoubi Nathanal
45
Session 2009-2010
Karoubi Nathanal
Ce qui est surlign en bleu dans lextrait des logs de Putty est rigoureusement identique ce
qui est surlign dans WinHex (juste au-dessus).
Ce qui prouve que WireShark na pas interprt correctement ce message. La plaisanterie
maura fait perdre 2 jours, parce quen faisant aveuglement confiance en WireShark, jai
cherch, o il tait stipul que le message
SSH2_MSG_KEXDH_REPLY
comprenait p et g. Alors
46
Session 2009-2010
Karoubi Nathanal
10 Annexes
Sur la page suivante se trouve les en-ttes dune capture Wireshark, elle illustre bien les
requtes TFTP, du client, qui ont choues (135-153)
47
Session 2009-2010
Karoubi Nathanal
No.
Time
Source
Destination
Protocol
Info
50
51
52
53
81
82
83
84
85
86
87
88
89
90
........
109
110
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
........
372
373
374
375
376
377
378
8.8139090
8.8146040
10.873421
10.873755
10.875199
10.876985
10.877547
10.877563
10.878486
10.878605
10.879016
10.879196
10.879245
10.879407
0.0.0.0
10.1.101.9
0.0.0.0
10.1.101.9
10.1.101.13
10.1.101.5
10.1.101.13
10.1.101.13
10.1.101.5
10.1.101.13
10.1.101.5
10.1.101.13
10.1.101.5
10.1.101.13
255.255.255.255
255.255.255.255
255.255.255.255
255.255.255.255
10.1.101.5
10.1.101.13
10.1.101.5
10.1.101.5
10.1.101.13
10.1.101.5
10.1.101.13
10.1.101.5
10.1.101.13
10.1.101.5
DHCP
DHCP
DHCP
DHCP
TFTP
TFTP
TFTP
TFTP
TFTP
TFTP
TFTP
TFTP
TFTP
TFTP
10.881932
10.882067
10.934878
10.935748
10.936385
10.937115
10.938307
10.938880
10.939340
10.939901
10.940350
10.940904
10.942000
10.942560
10.942974
10.943540
10.943957
10.944510
10.946206
10.946851
10.948491
10.949049
10.950762
10.951641
10.954067
10.954406
10.954605
10.955489
10.956193
10.956420
10.956847
10.956948
10.956998
10.957093
10.1.101.5
10.1.101.13
10.1.101.13
10.1.101.5
10.1.101.13
10.1.101.5
10.1.101.13
10.1.101.5
10.1.101.13
10.1.101.5
10.1.101.13
10.1.101.5
10.1.101.13
10.1.101.5
10.1.101.13
10.1.101.5
10.1.101.13
10.1.101.5
10.1.101.13
10.1.101.5
10.1.101.13
10.1.101.5
10.1.101.13
10.1.101.5
10.1.101.13
10.1.101.5
10.1.101.13
10.1.101.13
10.1.101.5
10.1.101.13
10.1.101.5
10.1.101.13
10.1.101.5
10.1.101.13
10.1.101.13
10.1.101.5
10.1.101.5
10.1.101.13
10.1.101.5
10.1.101.13
10.1.101.5
10.1.101.13
10.1.101.5
10.1.101.13
10.1.101.5
10.1.101.13
10.1.101.5
10.1.101.13
10.1.101.5
10.1.101.13
10.1.101.5
10.1.101.13
10.1.101.5
10.1.101.13
10.1.101.5
10.1.101.13
10.1.101.5
10.1.101.13
10.1.101.5
10.1.101.13
10.1.101.5
10.1.101.5
10.1.101.13
10.1.101.5
10.1.101.13
10.1.101.5
10.1.101.13
10.1.101.5
TFTP
TFTP
TFTP
TFTP
TFTP
TFTP
TFTP
TFTP
TFTP
TFTP
TFTP
TFTP
TFTP
TFTP
TFTP
TFTP
TFTP
TFTP
TFTP
TFTP
TFTP
TFTP
TFTP
TFTP
TFTP
TFTP
TFTP
TFTP
TFTP
TFTP
TFTP
TFTP
TFTP
TFTP
10.972947
10.973044
10.976499
10.977408
10.977576
10.977810
10.979167
10.1.101.5
10.1.101.13
10.1.101.13
10.1.101.5
10.1.101.13
10.1.101.5
10.1.101.13
10.1.101.13
10.1.101.5
10.1.101.5
10.1.101.13
10.1.101.5
10.1.101.13
10.1.101.5
TFTP
TFTP
TFTP
TFTP
TFTP
TFTP
TFTP
48
Session 2009-2010
Karoubi Nathanal
49
Session 2009-2010
Karoubi Nathanal
Annexe C : install.log
(09:34:48.825348) Entering Start
Using VMvisor Image: /usr/lib/vmware/installer/VMware-VMvisor-big-208167x86_64.dd.bz2
(09:34:48.825515) Entering Start
Dispatching step 0
(09:34:48.825555) Entering WelcomeStep
(09:34:54.222851) Exiting WelcomeStep
Dispatching step 1
(09:34:54.222917) Entering LicenseStep
(09:34:56.487566) Exiting LicenseStep
Dispatching step 2
(09:34:56.487626) Entering TargetSelectionStep
(09:34:59.702231) Exiting TargetSelectionStep
Dispatching step 3
(09:34:59.702284) Entering ConfirmStep
(09:35:08.590631) Exiting ConfirmStep
Dispatching step 4
(09:35:08.590684) Entering WriteStep
(09:35:09.94027) Entering dd
(09:35:53.499429) Exiting dd
(09:35:53.499506) Exiting WriteStep
Dispatching step 5
(09:35:53.499556) Entering PostConfigStep
Partitions in t10.ATA_____WDC_WD3200AAKS2D00L9A0________________________WD2DWCAV2J398963:
/vmfs/devices/disks/t10.ATA_____WDC_WD3200AAKS2D00L9A0________________________WD2DWCAV2
J398963:0
/vmfs/devices/disks/t10.ATA_____WDC_WD3200AAKS2D00L9A0________________________WD2DWCAV2
J398963:1
/vmfs/devices/disks/t10.ATA_____WDC_WD3200AAKS2D00L9A0________________________WD2DWCAV2
J398963:4
/vmfs/devices/disks/t10.ATA_____WDC_WD3200AAKS2D00L9A0________________________WD2DWCAV2
J398963:5
50
Session 2009-2010
Karoubi Nathanal
Annexe D : Inetd.conf
51
Session 2009-2010
Karoubi Nathanal
52
Session 2009-2010
Karoubi Nathanal
53
73 31 39
63 62 63
65 73 31
73 68 2d
63 62 63
73 2d 63
2c 61 72
65 73 32
2d 63 62
63 40 6c
2c 61 65
39 32 2d
72 2c 61
77 66 69
73 68 2d
33 64 65
32 35 36
00 1f 68
2d 73 68
35 00 00
6d 61 63
2d 6d 64
62 00 00
00 00 00
47 a6 39
protocol
32 2d 63 74
2c 61 65 73
32 38 2d 63
63 74 72 2c
2c 33 64 65
62 63 2c 61
63 66 6f 75
35 36 2d 63
63 2c 72 69
79 73 61 74
73 31 39 32
63 62 63 2c
65 73 31 32
73 68 2d 63
63 62 63 2c
73 2d 63 62
2c 61 72 63
6d 61 63 2d
61 31 2d 39
00 1f 68 6d
2d 73 68 61
35 00 00 00
00 09 6e 6f
00 00 00 00
55 08
version 2
72
31
62
62
73
72
72
74
6a
6f
2d
61
38
74
33
63
66
73
36
61
31
09
6e
00
2c
32
63
6c
2d
63
31
72
6e
72
63
65
2d
72
64
2c
6f
68
2c
63
2d
6e
65
00
61
38
2c
6f
63
66
32
2c
64
2e
74
73
63
2c
65
61
75
61
68
2d
39
6f
2c
00
65
2d
62
77
74
6f
38
61
61
6c
72
31
62
62
73
72
72
31
6d
73
36
6e
7a
00
73
63
6c
66
72
75
00
65
65
69
2c
32
63
6c
2d
63
31
2c
61
68
2c
65
6c
02
31
74
6f
69
2c
72
00
73
6c
75
61
38
2c
6f
63
66
32
68
63
61
68
2c
69
35
,aes192-ctr,aes1
92-cbc,aes128-ct
r,aes128-cbc,blo
wfish-ctr,blowfi
sh-cbc,3des-ctr,
3des-cbc,arcfour
256,arcfour128..
..aes256-ctr,aes
256-cbc,rijndael
-cbc@lysator.liu
.se,aes192-ctr,a
es192-cbc,aes128
-ctr,aes128-cbc,
blowfish-ctr,blo
wfish-cbc,3des-c
tr,3des-cbc,arcf
our256,arcfour12
8....hmac-sha1,h
mac-sha1-96,hmac
-md5....hmac-sha
1,hmac-sha1-96,h
mac-md5....none,
zlib....none,zli
b..............5
_..G.9U.
cc
2f
6c
31
2d
74
35
63
36
2d
2c
62
61
63
65
62
6f
66
31
2d
31
6d
73
31
69
63
2c
6d
00
0a
da
6c
00
64
72
36
2c
2d
63
74
6c
65
74
73
63
66
69
32
63
2d
61
68
2c
62
6f
7a
2c
00
b7
00
61
00
73
33
63
64
62
63
6f
77
31
2c
32
61
73
68
2d
63
36
2d
31
6d
7a
2c
69
6f
00
79
64
72
68
74
2d
61
63
77
6f
68
68
63
32
62
35
36
63
2c
1f
61
00
2c
6d
40
65
70
00
bd
4d
69
6f
2d
61
63
65
62
6f
66
31
2d
74
35
63
36
2d
2c
62
68
63
00
68
64
6f
00
65
00
1c
15
66
75
72
65
74
73
63
66
69
32
63
72
36
2c
2d
63
74
6c
6d
2d
00
6d
35
70
00
6e
00
6c
f3
66
70
73
73
72
31
2c
69
73
38
62
2c
2d
33
63
62
77
6f
61
73
1f
61
00
65
00
73
00
b8
04
69
31
61
31
2c
32
61
73
68
2d
63
33
63
64
62
63
6f
77
63
68
68
63
00
6e
1a
73
00
af
26
65
2d
2c
32
61
38
65
68
2d
63
00
64
74
65
63
2c
66
66
2d
61
6d
2d
00
73
7a
68
00
84
..........yM...&
.../.%....diffie
-hellman-group1sha1....ssh-rsa,
ssh-dss...taes12
8-ctr,3des-ctr,a
es256-ctr,aes128
-cbc,3des-cbc,ae
s256-cbc,twofish
256-cbc,twofishcbc,twofish128-c
bc,blowfish-cbc.
..taes128-ctr,3d
es-ctr,aes256-ct
r,aes128-cbc,3de
s-cbc,aes256-cbc
,twofish256-cbc,
twofish-cbc,twof
ish128-cbc,blowf
ish-cbc....hmacsha1-96,hmac-sha
1,hmac-md5....hm
ac-sha1-96,hmacsha1,hmac-md5...
.zlib,zlib@opens
sh.com,none....z
lib,zlib@openssh
.com,none.......
............l...
20
b0
1a
67
73
00
73
2c
2d
74
77
/ 0x14 (SSH2_MSG_KEXINIT)
79 4d 15 f3 04 26 ef f1 94
64 69 66 66 69 65 2d 68 65
72 6f 75 70 31 2d 73 68 61
68 2d 72 73 61 2c 73 73 68
74 61 65 73 31 32 38 2d 63
2d 63 74 72 2c 61 65 73 32
61 65 73 31 32 38 2d 63 62
63 62 63 2c 61 65 73 32 35
77 6f 66 69 73 68 32 35 36
6f 66 69 73 68 2d 63 62 63
2f
6c
31
2d
74
35
63
36
2d
2c
da
6c
00
64
72
36
2c
2d
63
74
25
6d
00
73
2c
2d
33
63
62
77
....yM...&.../.%
....diffie-hellm
an-group1-sha1..
..ssh-rsa,ssh-ds
s...taes128-ctr,
3des-ctr,aes256ctr,aes128-cbc,3
des-cbc,aes256-c
bc,twofish256-cb
c,twofish-cbc,tw
14
25
6d
00
73
2c
2d
33
63
62
77
6f
73
72
31
2c
69
73
38
62
39
63
61
68
2c
6d
6c
6e
00
ce
00
6e
0f
00
64
74
65
63
2c
66
66
32
61
38
65
68
2d
63
00
2c
6d
2d
61
6c
6e
62
6e
b0
81
00
2d
73
00
65
72
73
2c
74
69
69
38
65
2d
73
32
63
62
00
68
64
39
63
69
6f
40
65
f9
b0
1a
67
73
00
73
2c
2d
74
77
73
73
2d
73
63
32
35
62
63
00
6d
35
36
2d
62
6e
6f
00
a0
Session 2009-2010
Karoubi Nathanal
ofish128-cbc,blo
wfish-cbc...taes
128-ctr,3des-ctr
,aes256-ctr,aes1
28-cbc,3des-cbc,
aes256-cbc,twofi
sh256-cbc,twofis
h-cbc,twofish128
-cbc,blowfish-cb
c....hmac-sha1-9
6,hmac-sha1,hmac
-md5....hmac-sha
1-96,hmac-sha1,h
mac-md5....zlib,
zlib@openssh.com
,none....zlib,zl
ib@openssh.com,n
one.............
.......N...i....
..._.....?...d..
....C.......F..p
......z91.h.D...
.H...#.K...W. .t
5.8V.?.>=.k..M.Y
Z.....z.8.Ixk2+/
V..4../..~.9k...
.....
.............N..
.i......._.....?
...d......C.....
..F..p......z91.
h.D....H...#.K..
.W. .t5.8V.?.>=.
k..M.YZ.....z.8.
Ixk2+/V..4../..~
.9k........Z..!.
54
01
72
ec
95
f4
e0
38
9e
7a
10
00
b4
63
42
e1
13
36
a6
fd
2d
6c
bc
73
e3
01
11
ab
a8
b3
3d
e3
00
24
2e
1c
14
00
a1
06
2e
72
51
04
61
d2
96
fd
2c
3a
c0
c9
05
00
44
72
41
22
87
9f
a6
78
73
61
1f
00
da
ae
26
00
62
f0
dc
da
81
c0
c8
ea
2b
3a
1d
1e
99
61
0f
00
00
df
02
47
19
09
9b
bf
74
00
91
22
98
97
e6
b8
a5
2d
00
59
00
00
02
17
50
ae
5e
3f
ea
64
8e
5e
a0
f2
67
56
c8
c7
00
00
c2
00
03
8f
c1
9d
7a
af
60
d7
57
4b
4b
be
9c
d9
91
e4
3b
00
00
69
98
01
0b
2b
31
99
13
3a
5c
6a
bb
7d
0a
f9
7f
1d
db
30
00
82
40
00
00
2a
fd
52
ff
6a
28
ec
c9
30
ec
6e
5e
bf
3a
61
a8
91
64
3c
00
01
7a
70
33
d6
cd
60
ee
17
b1
da
b7
de
c9
b0
28
84
00
5f
7a
00
00
26
e5
6b
72
20
a0
bd
38
70
f1
6e
71
39
48
9e
01
00
32
e4
Session 2009-2010
07
00
4d
98
ad
f9
b3
61
91
12
ff
f5
ab
a8
f6
49
e8
37
00
36
c5
73
00
ed
5f
41
d0
70
19
12
91
00
79
0b
28
b2
60
3b
43
07
9d
8d
73
82
25
e2
91
eb
09
ef
14
e8
69
eb
5c
1a
b8
17
cf
85
73
11
ec
..............ss
h-rsa...........
r>........*z&M.%
w........+.p.._.
.....&GP.1R3k.A.
k...,...z...r...
.#8.:b.^..j. .p.
Pt.....?`:(`.a..
:.z=.....\......
......tdWj..8...
........K.0.p..i
X..$D..^K}....y.
.mc.r."...n.n..\
..B.A.....^.q.(.
...."+.g....9...
.R...:.V..:.HI`.
.w6.......a(..;.
(N......;0...7C.
....x.-........s
sh-rsa....d_26..
qqlQa.Y.i@<z....
Karoubi Nathanal
55
Session 2009-2010
Karoubi Nathanal
56
Session 2009-2010
ne
uRw,.m.t.....(..
...e6&.do..s.d.j
.-.J.;t..T~T)E~"
ZI.........}...J
.O.F
~fM......5N.h.e0
.4ra.U.8...'....
t%.....k.-b.^...
+.....>j._.(.K.x
....
....publickey,pa
ssword.
....root....sshconnection....pa
ssword.....
.......(a.l~o.?.
+g.n....c39.Nqe_
........Z...X.q.
....U...a......v
.I[...W.u...h^..
.K....L\F...gJ.q
......bf...?....
....rwK...b....|
(0.P..D$&b.:.9*.
J.:o....%.CM...+
.pVb..d?...<...k
.W..
"...5.v.X.p.....
.....Q....... ..
;.l.3fJ...Ti.Q.r
..Hj.. .sm...ZM.
...........!D<..
.Yv..O].'..A....
2.P..f......z.q@
c......|..aj^V.Z
..b.)x....m..c.i
..]N.M...!..ew.&
.]3.....Z...cQ.0
<A.V....]......x
...c9..zq<]....>
.e..?....H......
kK.vSOx.:/..n...
.x...h.Hv?2.....
,B..K.O."8...p..
".a....V....'.-.
....p.O.
.(..'y.....K....
ex...y..h#,.p..#
l.x.
....session.....
.@...@.
.1ie+...".+q0b..
.h..J...1....Z..
/..Z.......# ...
.K2O....e.6..H..
Karoubi Nathanal
57
Session 2009-2010
Karoubi Nathanal
58
Session 2009-2010
Karoubi Nathanal
59
Session 2009-2010
Karoubi Nathanal
9.3.5.
Denial of Service
Forward Secrecy
Traffic Analysis
60
Session 2009-2010
Karoubi Nathanal
MENU
MENU
MENU
MENU
Permet de mettre de
la couleur
LABEL ESX4i
MENU
DEFAULT
KERNEL \ESXi4_default\mboot.c32
APPEND \ESXi4_default\vmkboot.gz --- \ESXi4_default\vmkernel.gz --- \ESXi4_default\
sys.gz --- \ESXi4_default\cim.gz --- \ESXi4_default\ienviron.tgz --- \ESXi4_default\
install.tgz --- \ESXi4_default\image.tgz --- \ESXi4_default\oem.tgz
61
Session 2009-2010
Karoubi Nathanal