Configure a criptografia de dados em repouso no PostgreSQL

Configure A Criptografia De Dados Em Repouso No Postgresql



Você deve proteger seus dados sempre que estiver trabalhando com qualquer banco de dados. Para PostgreSQL, é possível proteger os dados em repouso. A lógica envolve proteger seus dados enquanto eles estão armazenados no disco. Dessa forma, você terá mais uma linha de defesa para proteger seus dados de um invasor.

Embora o PostgreSQL não ofereça opções de criptografia integradas, você pode configurar a criptografia de dados em repouso usando métodos de criptografia de terceiros. O tutorial de hoje se concentra na utilização do método Transparent Data Encryption (TDE) para habilitar a criptografia no nível do sistema de arquivos.

Como configurar a criptografia de dados em repouso no PostgreSQL

Ao definir a criptografia de dados em repouso no PostgreSQL, o objetivo é tornar os dados ilegíveis no sistema de arquivos, exigindo uma chave de descriptografia. Dessa forma, o acesso não autorizado é eliminado.







Quando o PostgreSQL está sendo executado em seu servidor, você pode configurar a criptografia em nível de sistema de arquivos usando ferramentas de terceiros, como Linux Unified Key Setup (LUKS). Você pode encontrar a solução apropriada para o seu sistema. Aqui, estamos trabalhando com Ubuntu e configuramos a criptografia de dados usando as etapas a seguir.



Etapa 1: Instale a ferramenta de criptografia do sistema de arquivos

Depois de selecionar o método de criptografia, você deve instalar as ferramentas necessárias. Selecionamos o método de criptografia em nível de sistema de arquivos e instalamos o LUKS. Para instalar o LUKS, instale o cryptsetup da seguinte forma:



sudo apt-get instalar configuração de criptografia





Pressione “y” para continuar a instalação e garantir que tudo seja instalado conforme o esperado.

Etapa 2: configurar um contêiner criptografado

Como estamos configurando a criptografia no nível do sistema de arquivos, devemos criar um diretório criptografado em nosso disco que contenha os dados do PostgreSQL. Verifique os dispositivos disponíveis em seu sistema operacional com o seguinte comando:



sudo fdisk -eu

Em seguida, selecione o dispositivo apropriado e execute o seguinte comando. Aqui, usamos o /dev/sdb dispositivo. Você será solicitado a confirmar a ação digitando “SIM” e, em seguida, insira uma senha.

Você então deve criptografá-lo usando LUKS executando o seguinte comando:

Etapa 3: formate o contêiner

Para o container criado, devemos formatá-lo. Usamos a opção “mkfs.ext4” executando o seguinte código:

sudo mkfs.ext4 / desenvolvedor / mapeador / postgres_encrypted

Etapa 4: monte o contêiner

A seguir, vamos montar o contêiner criptografado. Comece criando um diretório no /mnt/ do seguinte modo:

sudo mkdir / mt / postgres

Depois que o diretório for criado, monte o contêiner criptografado usando o comando “mount” e especifique o caminho.

sudo montar / desenvolvedor / mapeador / postgres_encrypted / mt / postgres /

Etapa 5: mover os dados do PostgreSQL

Até agora, criamos um contêiner criptografado para armazenar nossos dados PostgreSQL, mas ainda não transferimos os dados. Antes de mover os dados, devemos interromper o serviço PostgreSQL.

sudo systemctl parar postgresql

Para mover os dados do PostgreSQL, execute o seguinte comando “copiar” e certifique-se de copiá-los para o diretório que criamos anteriormente:

sudo sincronizar novamente -de / era / biblioteca / postgresql / mt / postgres

Em seguida, faça backup dos dados originais do PostgreSQL movendo-os para um local de backup.

sudo mv / era / biblioteca / postgresql / era / biblioteca / postgresql_backup


Em seguida, você precisa criar um link simbólico para o diretório para acesso rápido.

sudo Em -s / mt / postgres / postgresql / era / biblioteca / postgresql

É isso. Conseguimos copiar e mover os dados do PostgreSQL para nosso contêiner criptografado no nível do sistema de arquivos para garantir a segurança dos dados em repouso.

Etapa 6: edite o arquivo de configuração do PostgreSQL

O data_directory no arquivo de configuração reflete a preciosa localização dos dados do PostgreSQL. No entanto, devemos editá-lo para corresponder à localização dos dados do PostgreSQL no contêiner criptografado que criamos. Portanto, abra o arquivo de configuração do PostgreSQL usando um editor de texto. Localize a seção data_directory. Ele aparece conforme mostrado a seguir, antes de editá-lo. O caminho pode ser diferente dependendo da versão do PostgreSQL instalada em seu sistema.

Altere o caminho para direcionar para o contêiner criptografado que criamos na etapa 4. No nosso caso, o novo caminho é o seguinte:

Etapa 7: salvar, sair e reiniciar

Salve e saia do arquivo de configuração do PostgreSQL. Em seguida, inicie ou reinicie o PostgreSQL. Você conseguiu configurar a criptografia de dados em repouso no PostgreSQL.

É isso! Você pode continuar usando o PostgreSQL com segurança e aproveitar a nova criptografia no nível do sistema de arquivos.

Conclusão

Configurar a criptografia de dados em repouso no PostgreSQL envolve determinar qual método de criptografia usar e, em seguida, configurá-lo. Selecionamos a criptografia TDE usando LUKS para configurar uma criptografia em nível de sistema de arquivos. Além disso, detalhamos cada passo a seguir para configurá-lo. É isso! Experimente e siga as etapas fornecidas.