Servidor Ubuntu 18.04 / Como Instalar o phpMyAdmin
Para instalar o phpMyAdmin no Servidor Ubuntu 18.04, prepare o Apache, PHP e MySQL ou MariaDB, depois instale o pacote phpmyadmin e faça login com uma conta de banco de dados. Antes da instalação, restrinja os caminhos de acesso para que a ferramenta de administração não fique exposta externamente, e não altere as configurações de autenticação do root do banco de dados.
Coisas a Verificar Antes da Instalação
phpMyAdmin é uma ferramenta para gerenciar bancos de dados e tabelas MySQL ou MariaDB através de um navegador da web. Este artigo descreve o caso de uso do Apache em um servidor Ubuntu 18.04 existente. Se você estiver usando servidores web e de banco de dados separados ou utilizando Nginx, o caminho de conexão e as configurações serão diferentes.
A manutenção de segurança padrão para o Ubuntu 18.04 LTS terminou em maio de 2023. Para sistemas existentes, recomenda-se atualizar para uma versão suportada do Ubuntu. Se não puder atualizar imediatamente, verifique se a manutenção de segurança do Ubuntu Pro está aplicada e o escopo de atualização para phpMyAdmin, PHP e pacotes de banco de dados. Para mais detalhes, consulte Guia de Manutenção de Segurança do Ubuntu.
O exemplo a seguir assume que você possui privilégios de sudo e já instalou Apache, PHP e MySQL ou MariaDB, e que pode acessar o servidor via SSH. Faça backup do seu banco de dados e verifique os repositórios de pacotes e as configurações de sites existentes antes da instalação. Como as configurações do Apache podem ser aplicadas automaticamente durante a instalação, restrinja o acesso de fontes externas primeiro usando um firewall ou rede privada.
Restringindo o Caminho de Administração no Apache
O exemplo a seguir mostra como conectar-se diretamente ao Apache e permitir apenas conexões locais ao servidor. Primeiro, crie o arquivo /etc/apache2/conf-available/phpmyadmin-local.conf e salve o seguinte conteúdo.
<Location /phpmyadmin>
Require local
</Location>
Após ativar as configurações, verifique a sintaxe e recarregue o Apache apenas se ela passar com sucesso.
sudo a2enconf phpmyadmin-local
sudo apache2ctl configtest
Quando Syntax OK for exibido, execute o seguinte comando. Se houver erros, modifique as configurações e verifique novamente.
sudo systemctl reload apache2
Esta configuração se aplica ao caminho de exemplo. Se você tiver outros aliases ou hosts virtuais, verifique esses caminhos também. Se houver um proxy reverso à frente, o Apache pode ver o endereço do proxy como o endereço do cliente, portanto, restrições de acesso não podem ser garantidas apenas com este exemplo. Revise o tratamento dos endereços reais dos clientes pelos proxies confiáveis e pelo firewall separadamente. Você pode verificar a diretiva Require na documentação de controle de acesso do Apache.
Instalando phpMyAdmin
Atualize a lista de pacotes e instale-o. A disponibilidade e versões dos pacotes podem variar dependendo do repositório e das configurações de manutenção de segurança.
sudo apt update
sudo apt install phpmyadmin
Quando for exibida uma tela de instalação interativa, verifique o seguinte:
- Na tela de seleção do servidor web, escolha Apache2. Certifique-se de que ele esteja marcado antes de prosseguir. Apenas pressionar Enter pode não selecionar o item.
- Se for perguntado sobre a configuração do
dbconfig-common, selecione Sim se quiser que o pacote configure um banco de dados para os recursos adicionais do phpMyAdmin. Este banco de dados é diferente dos bancos de dados da aplicação que você está gerenciando. Se você planeja gerenciar as configurações existentes por conta própria, pode escolher Não. - Na tela que solicita a senha, verifique a conta exibida e o propósito, e insira uma senha segura. A autenticação do administrador do banco de dados exigida durante o processo de configuração pode variar dependendo do método de autenticação do servidor existente.
Após a instalação, verifique os arquivos de configuração e se o serviço Apache está ativo. As configurações para o pacote do Ubuntu estão principalmente em /etc/phpmyadmin e podem variar dependendo da configuração do pacote.
ls /etc/phpmyadmin
systemctl status apache2 --no-pager
Acesso via túnel SSH
Abra o cliente SSH no PC do administrador e execute o seguinte comando. Substitua user e server pelo usuário SSH e endereço do servidor reais. Isso conecta a porta 8080 no PC do administrador à porta local 80 do servidor e pode ser usado enquanto a conexão SSH estiver ativa.
ssh -L 127.0.0.1:8080:127.0.0.1:80 user@server
Abra http://127.0.0.1:8080/phpmyadmin no navegador do mesmo PC. O navegador e o cliente SSH devem estar em execução no mesmo PC, e o Apache no servidor deve servir o caminho na porta local 80. Quando a tela de login aparecer, insira o nome de usuário e a senha do banco de dados permitidos. Encerrar a sessão SSH também fechará o túnel.
Se o seu ambiente estiver configurado para acessar diretamente via HTTPS, é necessário um certificado TLS válido e restrições de acesso separadas. Defina os IPs permitidos no seu firewall ou Apache de acordo com o endereço real do administrador, e verifique os resultados de acesso tanto de endereços permitidos quanto de endereços não permitidos. É recomendável não expor a página de administração para toda a internet.
Contas de login e permissões
O login do phpMyAdmin é autenticado usando uma conta MySQL ou MariaDB. Use uma conta dedicada com permissões apenas para os bancos de dados e operações necessárias para suas operações. O host e as permissões da conta devem corresponder às configurações do servidor de banco de dados real. Verifique cuidadosamente o destino e o backup antes de enviar arquivos ou fazer alterações nos dados.
A conta root do Linux e a conta root do banco de dados são diferentes. Se o root do banco de dados estiver configurado para autenticação via socket local, pode não ser utilizável para login web. Não tente resolver isso modificando diretamente as tabelas do sistema ou esvaziando o plugin de autenticação root. Crie uma conta separada com as permissões necessárias e siga a documentação de gerenciamento de contas para esse produto de banco de dados.
Quando não for possível conectar
- 403 Proibido: Verifique se restrições de acesso estão aplicadas e se você está usando um túnel SSH. Além disso, verifique o endereço do cliente reconhecido pelo proxy e pelo Apache.
- 404 Não Encontrado: Verifique se o Apache2 foi selecionado durante a instalação e se a configuração do Apache do phpMyAdmin está habilitada. Se você estiver usando outros hosts virtuais ou aliases, verifique essas configurações também.
- Falha no Login: Verifique o nome de usuário do banco de dados, senha, host de conexão e permissões. A conta do servidor web ou a conta SSH pode ser diferente da conta do banco de dados.
- Erro na Página PHP: Verifique a integração do Apache e PHP, as extensões PHP necessárias e os logs de erros do Apache. Os caminhos de instalação e configuração podem variar dependendo do pacote de distribuição.
Se você precisar reverter alterações de configuração, restaure a partir de um backup existente e verifique novamente a sintaxe. Desativar as configurações de restrição local neste artigo pode expor o caminho de administração a acesso externo devido a outras configurações, então primeiro certifique-se de que controles de acesso alternativos estão aplicados. Para a instalação e configurações de segurança do phpMyAdmin, consulte a documentação oficial de instalação.




