Segurança do phpMyAdmin contra ataque de Brute Force

Phpmyadmin Com Recaptcha

Como padrão a página de login do phpMyAdmin apresenta apenas os campos Usuário e Senha, permitindo qualquer um com o nome de um usuário e senha de banco de dados válidos em seu servidor acessar e fazer alterações no banco de dados.

Um cracker poderia se utilizar de algum script de Brute Force para executar um “ataque de dicionário” a fim de encontrar sua senha com combinações de palavras, letras e símbolos.

Neste tutorial vamos adicionar uma camada extra de segurança ao phpMyAdmin a fim de impedir este tipo de ataque. Para isso, vamos utilizar o que considero ser a melhor solução até a data deste post, o Google Recaptcha . Antes de qualquer login será preciso resolver o captcha, impedindo qualquer tipo de ataque de Brute Force ao phpMyAdmin.

Mãos a obra!

Nota – Antes de começar:
Este passo a passo foi escrito utilizando um servidor com Painel CWP Pro (CentOS Web Panel) e CentOS 6, porém já testado em servidores com CentOS, Ubuntu, com ou sem Painel de controle (foram necessárias apenas algumas adaptações lógicas).


Passo 1:

Acesse a página do Google Recaptcha , em “Register a new site” :

Configurando Recaptcha Do Google
  • Label : utilize seu dominio ou o hostname do servidor.
  • Marque reCAPTCHA v2
  • Domains: informe o IP e o nome de seu hostname
  • Clique em Register. Na tela a seguir copie o código de
    site key e secrect key . Vamos utilizá-los a seguir.

Passo 2:

Nota: os passos abaixo se referem a um servidor com o Painel CentOS Web Panel. Se não utiliza este Painel, localize o local de instalação do seu phpMyAdmin e siga os passos…

  • Acesse o local de instalação do phpMyAdmin
cd /usr/local/cwpsrv/var/services/pma/
  • Edite o arquivo de configuração
nano config.inc.php
  • Adicione as Linhas abaixo, substituindo
    Site key e Secret key pelos valores gerados no passo 1.
$cfg[‘CaptchaLoginPublicKey’] = ‘Site key’;
$cfg[‘CaptchaLoginPrivateKey’] = ‘Secret key’; 
  • Salve e saia do editor nano ( “ctrl+x “ e “y” )

Pronto, isso é tudo! Agora acesse seu phpMyAdmin. A partir de agora, você terá uma camada a mais de segurança no login :

Como alterar a porta do SSH

Ssh Secure Shell

Uma das primeiras tentativas de um cracker é identificar as portas em que os serviços como SSH, FTP, etc, estão utilizando. Identificado a porta, um cracker poderia iniciar alguns tipos de ataques como por exemplo,  força bruta, a fim de descobrir o usuário e senha para posterior invasão.

Como medida de segurança, o melhor a fazer é modificar a porta de conexão ao SSH.

1 – edite o arquivo de configuração do ssh

nano /etc/ssh/sshd_config

2 – Localize “Port 22” e modifique para a nova porta que deseja se conectar.
Procure não utilizar portas semelhantes as que já estão sendo utilizadas em seu servidor ( exemplo: 22, , 81, etc…) .

Port 36509

Salve e saia do editor nano ( “ctrl+x “ e “y” )
4 – Reinicie o sshd .

service sshd restart

ou (se utiliza CentOS 7 )

systemctl restart ssh

Na próxima vez que se conectar ao SSH , será preciso que informe a nova porta. Lembre-se de atualizar a porta de conexão em seu firewall.