Configurer le chiffrement des données au repos dans PostgreSQL

Configurer Le Chiffrement Des Donnees Au Repos Dans Postgresql



Vous devez sécuriser vos données chaque fois que vous travaillez avec une base de données. Pour PostgreSQL, il est possible de sécuriser les données au repos. La logique implique de sécuriser vos données pendant qu’elles sont stockées sur le disque. De cette façon, vous disposerez d’une ligne de défense supplémentaire pour protéger vos données contre un attaquant.

Bien que PostgreSQL n'offre pas d'options de chiffrement intégrées, vous pouvez configurer le chiffrement des données au repos à l'aide de méthodes de chiffrement tierces. Le didacticiel d'aujourd'hui se concentre sur l'utilisation de la méthode Transparent Data Encryption (TDE) pour activer le cryptage au niveau du système de fichiers.

Comment configurer le cryptage des données au repos dans PostgreSQL

Lors de la définition du chiffrement des données au repos dans PostgreSQL, l'objectif est de rendre les données illisibles sur le système de fichiers en exigeant une clé de déchiffrement. De cette façon, tout accès non autorisé est éliminé.







Lorsque PostgreSQL est exécuté sur votre serveur, vous pouvez configurer le chiffrement au niveau du système de fichiers à l'aide d'outils tiers tels que Linux Unified Key Setup (LUKS). Vous pouvez trouver la solution appropriée pour votre système. Ici, nous travaillons avec Ubuntu et configurons le cryptage des données en suivant les étapes suivantes.



Étape 1 : Installer l'outil de chiffrement du système de fichiers

Une fois que vous avez sélectionné la méthode de cryptage, vous devez installer les outils requis. Nous sélectionnons la méthode de cryptage au niveau du système de fichiers et installons LUKS. Pour installer LUKS, installez cryptsetup comme suit :



sudo apt-get installer configuration de cryptage





Appuyez sur « y » pour continuer l'installation et vous assurer que tout s'installe comme prévu.

Étape 2 : configurer un conteneur chiffré

Puisque nous configurons le cryptage au niveau du système de fichiers, nous devons créer un répertoire crypté sur notre disque qui contient les données PostgreSQL. Vérifiez les appareils disponibles sur votre système d'exploitation avec la commande suivante :



sudo fdisque -l

Ensuite, sélectionnez le périphérique approprié et exécutez la commande suivante. Ici, nous utilisons le /dev/sdb appareil. Vous serez invité à confirmer l'action en tapant « OUI », puis à saisir une phrase secrète.

Vous devez ensuite le chiffrer à l'aide de LUKS en exécutant la commande suivante :

Étape 3 : formater le conteneur

Pour le conteneur créé, il faut le formater. Nous utilisons l'option « mkfs.ext4 » en exécutant le code suivant :

sudo mkfs.ext4 / développeur / mappeur / postgres_encrypted

Étape 4 : Monter le conteneur

Ensuite, montons le conteneur chiffré. Commencez par créer un répertoire dans le /mois/ comme suit:

sudo mkdir / mnt / postgres

Une fois le répertoire créé, montez le conteneur chiffré à l’aide de la commande « mount » et spécifiez le chemin.

sudo monter / développeur / mappeur / postgres_encrypted / mnt / postgres /

Étape 5 : déplacer les données PostgreSQL

Jusqu'à présent, nous avons créé un conteneur chiffré pour stocker nos données PostgreSQL, mais nous n'avons pas encore déplacé les données. Avant de déplacer les données, nous devons arrêter le service PostgreSQL.

sudo systemctl arrête postgresql

Pour déplacer les données PostgreSQL, exécutez la commande « copie » suivante et assurez-vous de la copier dans le répertoire que nous avons créé précédemment :

sudo rsync -de / était / lib / postgresql / mnt / postgres

Ensuite, sauvegardez les données PostgreSQL d'origine en les déplaçant vers un emplacement de sauvegarde.

sudo mv / était / lib / postgresql / était / lib / postgresql_backup


Vous devez ensuite créer un lien symbolique vers l'annuaire pour un accès rapide.

sudo dans -s / mnt / postgres / postgresql / était / lib / postgresql

C'est ça. Nous avons réussi à copier et à déplacer les données PostgreSQL vers notre conteneur chiffré au niveau du système de fichiers pour garantir la sécurité des données au repos.

Étape 6 : Modifier le fichier de configuration PostgreSQL

Le data_directory dans le fichier de configuration reflète le précieux emplacement des données PostgreSQL. Cependant, nous devons le modifier pour qu'il corresponde à l'emplacement des données PostgreSQL dans le conteneur chiffré que nous avons créé. Alors, ouvrez le fichier de configuration PostgreSQL à l'aide d'un éditeur de texte. Localisez la section data_directory. Il apparaît comme indiqué ci-dessous avant de le modifier. Le chemin peut différer selon la version de PostgreSQL installée sur votre système.

Modifiez le chemin pour diriger vers le conteneur chiffré que nous avons créé à l'étape 4. Dans notre cas, le nouveau chemin est le suivant :

Étape 7 : Enregistrer, quitter et redémarrer

Enregistrez et quittez le fichier de configuration PostgreSQL. Ensuite, démarrez ou redémarrez PostgreSQL. Vous avez réussi à configurer le cryptage des données au repos dans PostgreSQL.

C'est ça! Vous pouvez continuer à utiliser PostgreSQL en toute sécurité et profiter du nouveau cryptage au niveau du système de fichiers.

Conclusion

La configuration du chiffrement des données au repos dans PostgreSQL implique de déterminer la méthode de chiffrement à utiliser, puis de la configurer. Nous avons sélectionné le cryptage TDE à l'aide de LUKS pour configurer un cryptage au niveau du système de fichiers. D’ailleurs, nous avons détaillé chaque étape à suivre pour le mettre en place. C'est ça! Essayez-le et suivez les étapes fournies.