Titre: Comment faire une copie conforme via le réseau
Sujet: Copie conforme via le réseau
Auteur: Geert Van Acker
Date: 27 Nov 2005
Version: 1.0
Traduction: Philippe Teuwen
Date traduction: 16 Mars 2006
License: Creative Commons

Comment faire une copie conforme via le réseau

Préface

Les moyens les plus courants de faire une copie bit-à-bit sont d'IDE vers IDE (et/ou SATA) et d'IDE vers USB ou vers fireWire. Quand il est difficile ou impossible de retirer le disque dur du système, faire une copie conforme via le réseau peut être la solution.

Tout au long de cet article, nous utiliserons le FCCU GNU/Linux Forensic Boot CD, CD que vous pouvez télécharger librement sur ce site. Bien qu'il y ait moyen de réaliser la même chose sous l'OS Windows, cela ne sera pas abordé dans ce guide.

Quelques conventions utilisées dans ce document:

Les commandes sont toujours présentées en italique gras, précédées par un signe dièse (#). Ce signe représente le "prompt" et ne doit pas être tapé.

Quand nous utilisons le terme "/dev/hdx" (pour USB/FireWire cela devient "/dev/sdx" ou "/dev/ubx"), nous désignons le disque dur sur lequel nous placerons la copie exacte. De manière similaire, le terme "/dev/hdy" (pour USB/FireWire: "/dev/sdy" ou "/dev/ubx") désigne le disque dur dont nous désirons faire une copie.

1. Matériel:

Deux (2) copies du FCCU GNU/Linux Forensic Boot CD.

Un disque dur pour contenir la copie, que nous appellerons disque cible.

Un système sur lequel connecter notre disque cible (un kit d'intervention, portable avec USB/FireWire, une tour avec IDE/SATA, ...).

Un câble réseau (de préférence un "cross-cable", un hub ou un switch).

2. Préparation du disque cible

Si nécessaire, nous commençons par effacer le disque cible (si vous comptez stocker l'image du disque source sous forme d'un gros fichier, donc pas disque à disque, cette étape n'est pas utile).

# shred -z -n 0 -v /dev/hdx

Ensuite nous créons une partition avec la commande fdisk (1 simple "primary partition" avec toute la capacité disponible)

# fdisk /dev/hdx

Une fois la partition créée, il est conseillé de redémarrer le système afin que le noyau charge la table de partition correcte.

# shutdown -r now

Maintenant que nous avons une partition, nous devons y installer un système de fichiers:

# mkfs.ext3 /dev/hdx1
La dernière étape est de monter le système de fichiers dans notre arborescence:
# mount /dev/hdx1 /mnt/test

3. Connexion réseau

Nous allons utiliser le protocole TCP/IP pour réaliser la connexion entre les deux systèmes. Le lien physique peut être établi avec soit un "cross-cable",soit deux câbles de réseau ordinaires connectés à un hub ou un switch.

Les deux systèmes doivent être configurés dans la même fourchette d'adresses réseau. Utilisez les sous-réseaux privés tels que mentionnés dans la RFC 1918 (par ex. 192.168.0.0/24).

Sur le système où notre disque cible est installé:

# ifconfig eth0 192.168.0.1

Sur le système depuis lequel nous souhaitons faire une copie du disque:

# ifconfig eth0 192.168.0.2

Maintenant vous pouvez tester la connexion avec la commande "ping". Sur le système où notre disque cible est installé:

# ping 192.168.0.2

Sur le système depuis lequel nous souhaitons faire une copie du disque:

# ping 192.168.0.1

4. Copie conforme exacte

Pour obtenir une copie exacte, nous allons utiliser "dd" et "netcat", tous les deux sont des outils disponibles en standard sur la plupart des systèmes Unix et Linux. Si vous ne faites pas confiance au réseau, utilisez cryptcat plutôt que netcat, la communication entre les deux systèmes sera alors encryptée.

Tout d'abord, nous devons dire à netcat d'écouter sur un des ports du système qui a le disque cible. Notre commande va ouvrir un port (le port 2000) et écouter dessus (-l). Nous allons également visualiser l'échange des données transmises (avec pipebench) et les écrire dans un fichier sur le disque cible.

# netcat -l -p 2000 -w 5 | pipebench > /mnt/test/image.dd

Ensuite, nous devons extraire les données du disque de l'autre système et et les envoyer au système du disque cible sur lequel netcat est à l'écoute.

# dd if=/dev/hdy conv=noerror,sync | pipebench | netcat 192.168.0.1 2000

Vérifiez si la taille de la copie est identique à la taille du disque original.

# ls -lh /mnt/test/image.dd

Vous pouvez aussi comparer le fichier image et le disque original avec des techniques de hachage (sha1) pour vous assurez que les deux sont bien identiques. Maintenant démontez la partition:

# umount /mnt/test

Pour éteindre les systèmes:

# shutdown -h now


Creative Commons License
This work is licensed under a Creative Commons Attribution-NonCommercial-ShareAlike 2.5 License.