Настройка шифрования неактивных данных в PostgreSQL

Nastrojka Sifrovania Neaktivnyh Dannyh V Postgresql



Вы должны защищать свои данные всякий раз, когда работаете с какой-либо базой данных. В PostgreSQL можно защитить хранящиеся данные. Логика предполагает защиту ваших данных, пока они хранятся на диске. Таким образом, у вас будет еще одна линия защиты для защиты ваших данных от злоумышленника.

Хотя PostgreSQL не предлагает встроенных функций шифрования, вы можете настроить шифрование неактивных данных, используя сторонние методы шифрования. Сегодняшнее руководство посвящено использованию метода прозрачного шифрования данных (TDE) для включения шифрования на уровне файловой системы.

Как настроить шифрование хранящихся данных в PostgreSQL

При настройке шифрования неактивных данных в PostgreSQL цель состоит в том, чтобы сделать данные нечитаемыми в файловой системе, требуя ключ дешифрования. Таким образом, несанкционированный доступ исключается.







Когда PostgreSQL работает на вашем сервере, вы можете настроить шифрование на уровне файловой системы с помощью сторонних инструментов, таких как Linux Unified Key Setup (LUKS). Вы можете найти подходящее решение для вашей системы. Здесь мы работаем с Ubuntu и настраиваем шифрование данных, выполнив следующие шаги.



Шаг 1. Установите инструмент шифрования файловой системы

После выбора метода шифрования необходимо установить необходимые инструменты. Выбираем метод шифрования на уровне файловой системы и устанавливаем LUKS. Чтобы установить LUKS, установите cryptsetup следующим образом:



судо apt-получить установку установка крипты





Нажмите «y», чтобы продолжить установку и убедиться, что все установлено правильно.

Шаг 2. Настройка зашифрованного контейнера

Поскольку мы настраиваем шифрование на уровне файловой системы, мы должны создать на нашем диске зашифрованный каталог, содержащий данные PostgreSQL. Проверьте доступные устройства в вашей операционной системе с помощью следующей команды:



судо fdisk

Затем выберите подходящее устройство и выполните следующую команду. Здесь мы используем /dev/СДБ устройство. Вам будет предложено подтвердить действие, набрав «ДА», а затем ввести парольную фразу.

Затем вы должны зашифровать его с помощью LUKS, выполнив следующую команду:

Шаг 3. Отформатируйте контейнер.

Созданный контейнер мы должны отформатировать. Мы используем опцию «mkfs.ext4», выполнив следующий код:

судо mkfs.ext4 / разработчик / картограф / postgres_encrypted

Шаг 4. Установите контейнер

Далее давайте смонтируем зашифрованный контейнер. Начните с создания каталога в /mnt/ следующее:

судо мкдир / МНТ / постгрес

После создания каталога смонтируйте зашифрованный контейнер с помощью команды «mount» и укажите путь.

судо устанавливать / разработчик / картограф / postgres_encrypted / МНТ / постгрес /

Шаг 5. Переместите данные PostgreSQL

На данный момент мы создали зашифрованный контейнер для хранения наших данных PostgreSQL, но нам еще предстоит переместить данные. Прежде чем перемещать данные, мы должны остановить службу PostgreSQL.

судо systemctl остановить postgresql

Чтобы переместить данные PostgreSQL, выполните следующую команду «копировать» и убедитесь, что вы скопировали их в каталог, который мы создали ранее:

судо rsync -из / был / библиотека / PostgreSQL / МНТ / постгрес

Затем создайте резервную копию исходных данных PostgreSQL, переместив их в резервное хранилище.

судо МВ / был / библиотека / PostgreSQL / был / библиотека / postgresql_backup


Затем вам необходимо создать символическую ссылку на каталог для быстрого доступа.

судо Ин / МНТ / постгрес / PostgreSQL / был / библиотека / PostgreSQL

Вот и все. Нам удалось скопировать и переместить данные PostgreSQL в зашифрованный на уровне файловой системы контейнер, чтобы обеспечить безопасность хранящихся данных.

Шаг 6. Отредактируйте файл конфигурации PostgreSQL.

data_directory в файле конфигурации отражает ценное расположение данных PostgreSQL. Однако мы должны отредактировать его, чтобы оно соответствовало местоположению данных PostgreSQL в созданном нами зашифрованном контейнере. Итак, откройте файл конфигурации PostgreSQL с помощью текстового редактора. Найдите раздел data_directory. Прежде чем мы его отредактируем, он выглядит так, как показано ниже. Путь может отличаться в зависимости от версии PostgreSQL, установленной в вашей системе.

Измените путь на прямой к зашифрованному контейнеру, который мы создали на шаге 4. В нашем случае новый путь выглядит следующим образом:

Шаг 7: Сохранить, выйти и перезапустить

Сохраните и выйдите из файла конфигурации PostgreSQL. Затем запустите или перезапустите PostgreSQL. Вам удалось настроить шифрование хранящихся данных в PostgreSQL.

Вот и все! Вы можете продолжать безопасно использовать PostgreSQL и наслаждаться новым шифрованием на уровне файловой системы.

Заключение

Настройка шифрования неактивных данных в PostgreSQL включает определение того, какой метод шифрования использовать, а затем его настройку. Мы выбрали шифрование TDE с использованием LUKS для настройки шифрования на уровне файловой системы. Более того, мы подробно описали каждый шаг, который необходимо выполнить для его настройки. Вот и все! Попробуйте и следуйте инструкциям.