Replicação MySQL, evita que hackers excluam o banco de dados principal e as exclusões sejam replicadas

Replicação MySQL, evita que hackers excluam o banco de dados principal e as exclusões sejam replicadas

Eu tenho uma configuração de servidores MySQL mestre/escravo. Minha preocupação é que se o banco de dados mestre for hackeado e os hackers excluírem tabelas ou descartarem completamente os bancos de dados, todas as alterações serão propagadas para o escravo, excluindo-o também.

Sem usar atrasos, qual é uma boa maneira de evitar que um hacker também destrua meu banco de dados escravo?

Responder1

Uma configuração MySQL Master/Slave funciona bem quando você deseja criar um banco de dados backend tolerante a falhas para seu aplicativo web ou site.

Se o banco de dados mestre falhar, você poderá alternar o aplicativo para usar o escravo. Portanto, esse tipo de abordagem só pode funcionar como uma solução de recuperação de desastres caso haja falha de hardware ou software no servidor que hospeda o mestre.

Porém, como você mencionou, se um hacker excluir dados do banco de dados mestre, as alterações serão rapidamente selecionadas pelo escravo.

Por segurança, aconselho você a criar backup automatizado do banco de dados no escravo. Você pode usar uma ferramenta comobackup automático do mysql.

Com o backup instalado, você pode restaurar seu banco de dados ao estado original a partir dos logs dos escravos.

Se você deseja criar sua própria ferramenta de backup personalizada, certifique-se de incluir o carimbo de data e hora do banco de dados de backup para poder identificar o backup mais recente.

Além disso, se você sentir que não tem tempo para construir um cluster de banco de dados seguro e tolerante a falhas para seu aplicativo, aconselho você a optar por soluções MySQL auto-hospedadas, como ApsaraDB. Com esse tipo de solução, seu banco de dados fica protegido contra DDoS, injeção de SQL e ataques de força bruta.

Eu espero que isso ajude.

Responder2

Remova permissões excessivas de seus aplicativos. Isso provavelmente não protegerá contra uma 'tabela DELETE FROM', a menos que você possa remover essa permissão com segurança;

Portanto, faça backups como um instantâneo pontual (mysqldump --single-transaction / lvm / xtrabackup) e salve a posição do log binário. Salve os arquivos de log binário (mapeamento para a gravação, observando que os logs mestre/relay são diferentes) e certifique-se de que o log binário não seja eliminado.

Teste o procedimento de recuperação aplicando um log binário até um ponto especificado para garantir que você tenha as informações e o procedimento corretos para quando precisar usá-lo.

informação relacionada