Para instalar o phpMyAdmin é necessário que a sua instalação LAMP esteja completa, incluindo a ativação do certificado digital, é necessário também, ter um usuário diferente do usuário raiz (não root). Se você está seguindo essa sequencia de tutoriais, sua VPS já está pronta para receber o phpMyAdmin, agora falta criar o usuário não root.
1 – Instalando o phpMyAdmin
Execute um comando de cada vez.
sudo apt-get update sudo apt-get install phpmyadmin php-mbstring php-gettext
1.1 – Durante o processo de instalação, haverá alguns questionamentos, responda conforme abaixo:
1.1.1 – Seleção do Servidor, escolha apache2 teclado a barra de espaço para selecionar, depois TAB e Enter.
1.1.2 – Em configurações do phpMyAdmin, escolha Yes
1.1.3 – Será solicitado que forneça a senha do administrador. Essa senha é a mesma que você guardou quando criou a sua VPS Essencial Lamp.
Na tela seguinte confirme com a mesma senha.
1.2 – Habilite as extensões PHP mcrypt e mbstring, com os comandos abaixo.
sudo phpenmod mcrypt sudo phpenmod mbstring
1.3 – Reinicie o apache para efetivar as alterações
sudo systemctl restart apache2
1.4 – Agora já é possível acessar o phpMyAdmin pela url, utilizando o seu domínio ou ip, seguido de /phpmyadmin.
https://domínio /phpmyadmin
1.4.1 – Acesse o painel do phpMyAdmin, o usuário será o root e utilize a senha padrão de instalação.
2 – Criando Novo Usuário no Banco de Dados
Após a migração do MySql para MariaDB, não será mais possível, acessar o banco de dados pelo phpMyAdmin utilizando o usuário root, porém, o acesso pelo terminal continuará funcionado normalmente. Isso ocorre devido a uma diretiva de segurança adicional do MariaDB. Para acessar o banco de dados pelo phpMyAdmin, será necessário criar um novo usuário e conceder as devidas permissões.
Para criar um novo usuário siga os passos abaixo:
1 – Acesse o banco de dados com o usuário root e entre com a senha;
mysql -u root -p
2 – Acesse o banco de dados mysql
use mysql;
Crie um novo usuário:
CREATE USER 'novousuario'@'localhost' IDENTIFIED BY 'password';
3 – Conceda permissão total a esse usuário:
GRANT ALL PRIVILEGES ON * . * TO 'novousuario'@'localhost';
Obs.: Mesmo concedendo permissões totais a qualquer usuário, o mesmo não terá acesso a criar novas contas de usuário pelo painel do phpMyAdmin.
4 – Após concluir o processo de criação e concessão de acesso dos novos usuários, recarregue todos os privilégios do banco de dados.
FLUSH PRIVILEGES;
Agora seu acesso pelo phpMyAdmin, já está criado.
3 – Protegendo o phpMyAdmin
Até aqui foi fácil e rápido a instalação do phpMyAdmin, entretanto, ele esta vulnerável a ataques por acesso não autorizado. Vamos torna-lo mais seguro com as modificações a seguir:
3.1 – Habilitando o uso do htaccess
Acesse o arquivo de configuração do phpMyAdmin
sudo nano /etc/apache2/conf-available/phpmyadmin.conf
E adicione a informação “AllowOverride All” logo após o DirectoryIndex index.php, conforme abaixo:
<Directory /usr/share/phpmyadmin> Options FollowSymLinks DirectoryIndex index.php AllowOverride All
Salve e feche o editor nano.
3.2 – Reinicie o apache
sudo systemctl restart apache2
3.3 – Crie um arquivo htaccess
sudo nano /usr/share/phpmyadmin/.htaccess
3.3.1 – Adicione as informações abaixo, salve e saia.
AuthType Basic AuthName "Restricted Files" AuthUserFile /etc/phpmyadmin/.htpasswd Require valid-user
Sobre as configurações acima:
AuthType Basic:
Determina um tipo de autenticação por um arquivo de senhas.
AuthName “Restricted Files”:
Define qual mensagem irá aparecer para o usuário ao tentar acessar o phpMyAdmin, aqui você pode personalizar como desejar.
AuthUserFile /etc/phpmyadmin/.htpasswd:
Aqui irá apontar o local do arquivo de senhas, que deverá estar fora dos arquivos principais no qual se quer acessar
Require valid-user
Esse é o parâmetro que impede que usuários não autenticados acessem os arquivos.
3.4 – Criando um arquivo de autenticação
Para criar o arquivo de autenticação .htpasswd, precisaremos de um pacote adicional, instale com o comando abaixo:
sudo apt-get install apache2-utils
3.4.1 – Após a instalação crie o arquivo de autenticação:
sudo htpasswd -c /etc/phpmyadmin/.htpasswd nomedousuario
Durante o processo, você deverá fornecer uma senha de acesso exclusiva para essa finalidade.
Para inserir mais usuários, execute o comando anterior com o nome do novo usuário, porém sem o modificador –c.
Agora, ao acessar novamente o endereço do seu phpMyAdmin, antes de aparecer a tela de autenticação tradicional, irá aparecer também uma caixa de dialogo para efetuar o login. Se o login não for efetuado com sucesso, não será possível acessar o phpMyAdmin.
Acesse e teste: https://seudominio/phpmyadmin
Agora o phpMyAdmin já esta instalado, pronto para uso!
Veja mais sobre como configurar sua VPS aqui.