Segurança básica no MySQL

Publicado por darth_acf em 03/08/2018

[ Hits: 6.245 ]

Blog: https://kernel.org/

 


Segurança básica no MySQL



1. Importância da segurança no banco de dados

Restrição de acesso ao banco de dados é fundamental para a saúde do banco, pois não somente hackers mal intencionados, mas o próprio erro humano pode causar grandes transtornos, alem da necessidade de manter os dados do banco sob sigilo. Ações necessárias:

1.1 Mínimo privilégio possível

Todos os usuários devem possuir acessos o mais restrito possível, pois quando um usuário acessa dados que não há necessidade, pode abrir espaço para que níveis de segurança sejam mais explorados no banco de dados.

1.2 Utilização de senha simples Senhas como “teste123”, “nomedaempresa”, “nome_do_usuario” etc são senhas vulneráveis e podem ser facilmente burladas. Assim, mesmo restringindo o acesso ao banco, isso não ira impedir o acesso indevido aos dados.

1.3 Um usuário por administrador

Usuários não devem ser compartilhados, pois dificulta a auditoria quando necessário.

2. Comandos

  • CREATE USER 'usuario'@'ip' IDENTIFIED BY 'senha' [OPCÕES]
  • Opções: PASSWORD EXPIRE | MAX_QUERIES_PER_HOUR | etc
  • ALTER USER 'usuario'@'ip' ACCOUNT LOCK;
  • SET PASSWORD FOR 'usuario'@ip' = PASSWORD('senha');

3. Criação de usuários

A criação de usuários no MySQL é feita indicando-se o nome do usuário seguido do IP origem do acesso. Quando o IP de origem não é informado, o MySQL considera que o usuário pode acessar de qualquer rede, qualquer IP, o que deixa o MySQL mais vulnerável.

Portanto, a recomendação de criação de usuário é 'nomeuser'@'ipouhostname'. Durante a criação, se houve mais do que um IP de origem, criar vários usuários ou informar range. Exemplo: 'nomedeusuario'@'192.168.%.%'.

4. Lock de conta de usuário

Recomendada a utilização quando um usuário precisa ter o acesso suspenso temporariamente como, por exemplo, um usuário afastado da empresa temporariamente, usuário de consultoria pontual, etc. Este é um recurso que facilita a gestão, dessa forma, não é necessário ficar eliminando ou criando usuários repetidamente e manterá o banco de dados menos vulnerável, pois menos usuários conseguirão fazer login na base.

Material de apoio: curso realizado na 4Linux Ead MySQL.

Outras dicas deste autor

Digital Attack Map - Mapa Iterativo de Ataques DDoS pelo Mundo

Limitando uso do comando su

Instalação do MySQL via atualização de repositório

Conheça o Kapersky Cyberthreat Real-time Map

Dicas de Tunning TCP

Leitura recomendada

Access denied for user 'root'@'localhost' no MySQL Server Community 5.7 [Resolvido] - CentOS7 x86_64

MySQL - Reset senha root e acesso localhost

MySQL: Duplicando uma tabela com apenas 1 comando SQL

Para melhorar a performance do MySQL

Recuperar senha do root do MySQL

  

Comentários

Nenhum comentário foi encontrado.



Contribuir com comentário




Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts