Sécurisez la configuration de vos disques externes

Une configuration des plus courante en entreprise aujourd’hui est d’avoir un Mac Mini Serveur avec ses deux disques interne dédié au système (par un RAID logiciel par exemple) et un disque externe, généralement une tour RAID matériel en FireWire ou en Thunderbolt dédié aux données.

Cette configuration est réellement intéressante en terme de répartition de la charge et de la sécurité des données, cependant, vous êtes vous déjà demandé comment réagit le système si le disque externe n’est pas disponible ?

La plupart des services ne vont pas fonctionner, les bases de données comme MySQL ne trouvant pas leurs fichiers de départ, votre syslog sera saturé de message d’erreur au lancement. Pourtant, un petit nombre de services comme le service mail de Mac OS X Server ont un comportement bien spécifique et réellement problématique.

Lorsque Dovecot, le gestionnaire e-mail de votre serveur, reçoit un mail en provenance du serveur SMTP, il est capable de créer toute la hiérarchie de dossier nécessaire à l’écriture de l’e-mail reçu… Ce qui vous l’avez compris, va être plus que problématique ! Si votre serveur démarre sans son disque externe, certains services vont recréer leur arborescence d’accès et rendre le montage du disque après coup impossible !

Prenez un OS X Server avec un disque externe puis dans la page de configuration des réglages du serveur choisissez de placer les données sur un disque externe.

Vous vous retrouvez donc avec vos données de travail sur un disque monté dans /Volumes. Il ne reste plus qu’à activer le service e-mail du serveur et se connecteur au webmail pour que Dovecot crée son arborescence.

Maintenant, déconnectez votre disque externe et connectez-vous de nouveau au webmail, vous verrez que cette action aura pour effet de créer un dossier du nom de votre disque dans /Volumes.

Connectez de nouveau votre disque externe et regardez ce qu’il se passe dans /Volumes, il est monté sous le même nom, mais avec un numéro à la suite, son nom d’origine étant déjà pris par le faux dossier créé par votre service e-mail. Cela est très problématique, car le système de fichier UNIX est un système virtuel, il n’y a pas de notion de disque dans l’espace logique, aussi les applications ayant pour point de stockage /Volumes/DataHD/app n’irons jamais chercher dans /Volumes/DataHD 1/app.

L’objectif est donc de s’assurer que dans tous les cas, le disque de donnée revient bien au bon endroit.

Pour cela nous allons user de la capacité des tables de partitions GUID à avoir un identifiant unique pour s’assurer qu’un même disque se retrouve toujours au même endroit, quitte à masquer un dossier existant.

Cet identifiant unique est récupérable via la commande diskutil info

diskutil info /Volumes/DataHD 
   Device Identifier:        disk4s1
   Device Node:              /dev/disk4s1
   Part of Whole:            disk4
   Device / Media Name:      DataHD
 
   Volume Name:              DataHD
   Escaped with Unicode:     DataHD
 
   Mounted:                  Yes
   Mount Point:              /Volumes/DataHD
   Escaped with Unicode:     /Volumes/DataHD
 
   File System Personality:  Journaled HFS+
   Type (Bundle):            hfs
   Name (User Visible):      Mac OS Extended (Journaled)
   Journal:                  Journal size 8192 KB at offset 0x6000
   Owners:                   Disabled
 
   Partition Type:           Apple_HFS
   OS Can Be Installed:      No
   Media Type:               Generic
   Protocol:                 USB
   SMART Status:             Not Supported
   Volume UUID:              BFD0C129-B0AD-37A8-ADEB-A30F2CBCD39F
 
   Total Size:               499.1 MB (499081216 Bytes) (exactly 974768 512-Byte-Blocks)
   Volume Free Space:        477.6 MB (477646848 Bytes) (exactly 932904 512-Byte-Blocks)
   Device Block Size:        512 Bytes
 
   Read-Only Media:          No
   Read-Only Volume:         No
   Ejectable:                Yes
 
   Whole:                    No
   Internal:                 No

La ligne intéressante étant bien entendu celle qui commence par Volume UUID.

La suite des opérations se passe dans un terminal en root, nous allons éditer le fichier /etc/fstab avec la commande vifs (en root, sans argument) pour y placer cette ligne :

UUID=BFD0C129-B0AD-37A8-ADEB-A30F2CBCD39F       /Volumes/DataHD hfs     rw

Qui veux dire que la partition avec l’identifiant en question est une partition HFS qui sera montée en lecture / écriture à l’emplacement /Volumes/DataHD.

C’est tout, de cette manière votre disque viendra toujours se replacer au même endroit. Si un dossier existe déjà avec ce nom, il ne sera pas perdu, juste masqué par le montage du disque externe. Si vous démontez le volume, le dossier masqué ainsi que ses données redeviennent accessibles.

3 réflexions au sujet de « Sécurisez la configuration de vos disques externes »

Laisser un commentaire