Pesquisa de site

Como adicionar uma camada extra de segurança na interface de login do PhpMyAdmin


MySQL é o sistema de gerenciamento de banco de dados de código aberto mais usado no mundo no ecossistema Linux e, ao mesmo tempo, os novatos em Linux acham difícil gerenciar a partir do prompt do MySQL.

PhpMyAdmin foi criado, é um aplicativo de gerenciamento de banco de dados MySQL baseado na web, que fornece uma maneira fácil para iniciantes em Linux interagirem com o MySQL através de uma interface web. Neste artigo, compartilharemos como proteger a interface phpMyAdmin com proteção por senha em sistemas Linux.

Antes de prosseguir com este artigo, presumimos que você tenha concluído uma instalação do LAMP (Linux, Apache, MySQL/MariaDB e PHP) e do PhpMyAdmin em seu servidor Linux. Caso contrário, você pode seguir nossos guias abaixo para instalar a pilha LAMP em suas respectivas distribuições.

  1. Instale LAMP e PhpMyAdmin no Cent/RHEL 7
  2. Instale LAMP e PhpMyAdmin no Ubuntu 16.04
  3. Instale LAMP e PhpMyAdmin no Fedora 22-24

Se desejar instalar a versão mais recente do PhpMyAdmin, você pode seguir este guia sobre como instalar o PhpMyAdmin mais recente em sistemas Linux.

Depois de concluir todas as etapas acima, você estará pronto para começar a ler este artigo.

Apenas adicionando as seguintes linhas em /etc/apache2/sites-available/000-default.conf no Debian ou /etc/httpd/conf/httpd. conf no CentOS exigirá autenticação básica DEPOIS de confirmar a exceção de segurança, mas ANTES de acessar a página de login.

Assim, estaremos agregando uma camada extra de segurança, também protegida pelo certificado.

Leitura sugerida: Configure HTTPS (certificados SSL) para proteger o PhpMyAdmin

Adicione estas linhas ao arquivo de configuração do Apache (/etc/apache2/sites-available/000-default.conf ou /etc/httpd/conf/httpd.conf):


<Directory /usr/share/phpmyadmin>
    AuthType Basic
    AuthName "Restricted Content"
    AuthUserFile /etc/apache2/.htpasswd
    Require valid-user
</Directory>
 
<Directory /usr/share/phpmyadmin>
    AuthType Basic
    AuthName "Restricted Content"
    AuthUserFile /etc/httpd/.htpasswd
    Require valid-user
</Directory>

Em seguida, use htpasswd para gerar um arquivo de senha para uma conta que será autorizada a acessar a página de login do phpmyadmin. Usaremos /etc/apache2/.htpasswd e tecmint neste caso:


---------- On Ubuntu/Debian Systems ---------- 
htpasswd -c /etc/apache2/.htpasswd tecmint

---------- On CentOS/RHEL Systems ---------- 
htpasswd -c /etc/httpd/.htpasswd tecmint

Digite a senha duas vezes e altere as permissões e a propriedade do arquivo. Isso evita que alguém que não esteja no grupo www-data ou apache possa ler .htpasswd:


chmod 640 /etc/apache2/.htpasswd

---------- On Ubuntu/Debian Systems ---------- 
chgrp www-data /etc/apache2/.htpasswd 

---------- On CentOS/RHEL Systems ---------- 
chgrp apache /etc/httpd/.htpasswd 

Vá para http:///phpmyadmin e você verá a caixa de diálogo de autenticação antes de acessar a página de login.

Leitura sugerida: Alterar e proteger o URL de login padrão do PhpMyAdmin

Você precisará inserir as credenciais de uma conta válida em /etc/apache2/.htpasswd ou /etc/httpd/.htpasswd para continuar:

Se a autenticação for bem-sucedida, você será direcionado para a página de login do phpmyadmin.