Neste artigo, vamos guiá-lo passo a passo pelo processo de instalação da versão mais recente de PhpMyAdmin com o servidor web Apache em distribuições baseadas em RHEL como CentOS Stream, Fedora, Rocky Linux e Alma Linux.
Tabela de Conteúdos
O que é o PhpMyAdmin?
PhpMyAdmin é uma ferramenta de gerenciamento de banco de dados web baseada amplamente utilizada e poderosa, e ter a versão mais recente garante que você tenha acesso aos recursos mais atualizados e melhorias de segurança. No final deste guia, você será capaz de gerenciar seus bancos de dados MySQL ou MariaDB facilmente usando PhpMyAdmin.
Pré-requisitos
Antes de começarmos, certifique-se de ter o seguinte:
- Acesso a um RHEL, CentOS Stream, Fedora, Rocky Linux ou sistema AlmaLinux.
- Certifique-se de que você possa fazer login como o usuário root ou ter privilégios sudo para instalar software.
- Uma pilha LAMP existente, que inclui Apache, MySQL/MariaDB e PHP. Se você não tiver LAMP, pode seguir estas etapas para configurá-lo.
Passo 1: Atualizar o Sistema
Antes de instalar qualquer software, é fundamental garantir que seu sistema esteja atualizado executando o seguinte comando dnf.
sudo dnf update

Isso atualizará todos os pacotes em seu sistema para as versões mais recentes.
Passo 2: Instalar o Servidor Web Apache
PhpMyAdmin é uma ferramenta baseada na web, e para usá-la, você precisa instalar o servidor web Apache usando o seguinte comando.
sudo dnf install httpd

Uma vez instalado, inicie o serviço Apache e habilite-o para iniciar na inicialização.
sudo systemctl start httpd sudo systemctl enable httpd
Passo 3: Instalar MariaDB ou MySQL
Você também precisará de um servidor de banco de dados. Você pode optar por instalar MariaDB ou MySQL, mas neste exemplo, vamos escolher MariaDB.
sudo dnf install mariadb-server

Uma vez instalado, inicie o serviço MariaDB e habilite-o para iniciar na inicialização.
sudo systemctl start mariadb sudo systemctl enable mariadb
Em seguida, proteja sua instalação do MariaDB executando o script, que o solicitará a inserir uma senha para o usuário root, proibirá logons remotos do root e removerá usuários anônimos. Ele também removerá o banco de dados de teste, que, por padrão, pode ser acessado por usuários anônimos.
sudo mysql_secure_installation

Passo 4: Instalar o PHP
PhpMyAdmin é construído com PHP, então precisamos instalar PHP e algumas extensões necessárias usando o seguinte comando.
sudo dnf install php php-mysqlnd php-json php-mbstring

Passo 5: Instalar o PhpMyAdmin
Agora, vamos prosseguir com a instalação do PhpMyAdmin em nosso sistema Linux navegando até o diretório raiz do servidor web /var/www/html como mostrado.
cd /var/www/html
Em seguida, baixe a versão mais recente de PhpMyAdmin usando o seguinte comando wget como mostrado.
sudo wget https://www.phpmyadmin.net/downloads/phpMyAdmin-latest-all-languages.tar.gz
Após o download, extraia o arquivo baixado e renomeie o diretório para conveniência.
sudo tar -xvzf phpMyAdmin-latest-all-languages.tar.gz sudo mv phpMyAdmin-*/ phpmyadmin
Crie um arquivo de configuração para o PhpMyAdmin.
sudo cp /var/www/html/phpmyadmin/config.sample.inc.php /var/www/html/phpmyadmin/config.inc.php
Edite o arquivo de configuração:
sudo nano /var/www/html/phpmyadmin/config.inc.php
Encontre a seguinte linha e defina sua própria blowfish_secret:
$cfg['blowfish_secret'] = 'your_secret';
Salve e saia do arquivo.
Passo 6: Abrir a Porta do Apache no firewalld
Por padrão, o Apache geralmente usa as portas 80 e 443 para HTTP e HTTPS, respectivamente. Para abrir as portas do Apache e permitir o acesso ao PhpMyAdmin no seu servidor, execute:
sudo firewall-cmd --zone=public --add-port=80/tcp --permanent sudo firewall-cmd --zone=public --add-port=443/tcp --permanent sudo firewall-cmd --reload
Esses comandos adicionam uma regra para permitir o tráfego de entrada na porta especificada e recarregam o firewall para aplicar as alterações.
Passo 7: Reiniciar o Servidor Web Apache
Por fim, reinicie o Apache para aplicar as alterações:
sudo systemctl restart httpd
Passo 8: Acessar o PhpMyAdmin
Agora você pode acessar o PhpMyAdmin através do seu navegador web navegando até o endereço IP do seu servidor ou nome de domínio seguido de “/phpmyadmin” na URL:
http://your_server_ip/phpmyadmin
Faça login usando suas credenciais MySQL ou MariaDB.


Passo 9: Permitir Acesso Externo no PhpMyAdmin
Abra o arquivo de configuração do PhpMyAdmin.
sudo vi /etc/httpd/conf/httpd.conf
Encontre a seção <Directory "/var/www/html">
ou a seção onde seu PhpMyAdmin está configurado e atualize a diretiva Require
para permitir que todos os endereços IP acessem o PhpMyAdmin.
<Directory "/var/www/html/phpmyadmin"> ... Require all granted ... </Directory>
A configuração acima permite o acesso de qualquer endereço IP, mas se você deseja restringir o acesso a IPs específicos, substitua Require all granted
por Require ip seu_ip
.
Reinicie o Apache para aplicar as alterações.
sudo systemctl restart httpd
Agora, você deve ser capaz de acessar PhpMyAdmin do mundo exterior usando o endereço IP do seu servidor ou domínio.
http://your_server_ip/phpmyadmin
Lembre-se, abrir o acesso a PhpMyAdmin do mundo exterior pode representar riscos de segurança. Certifique-se de ter um mecanismo de autenticação forte em vigor e considere o uso de HTTPS para comunicação criptografada. Além disso, restrinja o acesso apenas a endereços IP confiáveis, se possível, ou proteja a URL de login do PhpMyAdmin.
Alterar a URL de login do phpMyAdmin
A URL de login padrão para phpMyAdmin é previsível e comumente alvo de atores mal-intencionados que tentam explorar vulnerabilidades. Alterar a URL de login adiciona uma camada extra de segurança, tornando mais difícil para usuários não autorizados ganharem acesso à sua interface de gerenciamento de banco de dados.
Para fazer isso, crie um arquivo de configuração /etc/httpd/conf.d/phpMyAdmin.conf.
vi /etc/httpd/conf.d/phpMyAdmin.conf
Em seguida, adicione a seguinte configuração.
#Alias /phpMyAdmin /var/www/html/phpmyadmin Alias /my /var/www/html/phpmyadmin <Directory /var/www/htm/lphpmyadmin> AddDefaultCharset UTF-8 <IfModule mod_authz_core.c> # Apache 2.4 <RequireAny> Require all granted # Additional IP or hostname-based access control can be added here </RequireAny> </IfModule> <IfModule !mod_authz_core.c> # Apache 2.2 Order Deny,Allow Deny from All Allow from 127.0.0.1 Allow from ::1 # Additional IP or hostname-based access control can be added here </IfModule> </Directory>
Substitua /my
pela URL de login personalizada desejada. Salve as alterações e saia do editor de texto.
Após fazer alterações nos arquivos de configuração, reinicie o Apache para aplicar as modificações:
systemctl restart httpd
Abra seu navegador da web e navegue até a nova URL de login phpMyAdmin.
http://yourdomain.com/my/

Configurando SSL para phpMyAdmin
Proteger a comunicação entre o servidor web Apache e o phpMyAdmin é crucial para proteger informações sensíveis, como credenciais de login e conteúdo do banco de dados. Uma maneira eficaz de alcançar isso é configurando SSL (Secure Socket Layer) para phpMyAdmin em um servidor web Apache.
Para fazer isso, primeiro instale o módulo mod_ssl no seu servidor.
yum install httpd mod_ssl openssl
Em seguida, crie um diretório para armazenar o certificado e gere um certificado SSL autoassinado e uma chave privada como mostrado.
mkdir /etc/httpd/ssl openssl req -x509 -nodes -days 365 -newkey rsa:2048 -keyout /etc/httpd/ssl/apache.key -out /etc/httpd/ssl/apache.crt

Após a criação do certificado SSL e da chave, abra o arquivo de configuração SSL do Apache.
vi /etc/httpd/conf.d/ssl.conf
Em seguida, adicione as seguintes linhas ao arquivo de configuração.
SSLEngine on SSLCertificateFile /etc/httpd/ssl/apache.crt SSLCertificateKeyFile /etc/httpd/ssl/apache.key
Salve as alterações e reinicie o servidor web Apache.
systemctl restart httpd
Agora, abra o arquivo de configuração do phpMyAdmin.
vi /var/www/html/phpmyadmin/config.inc.php
Adicione as seguintes linhas para forçar o SSL para o phpMyAdmin.
$cfg['ForceSSL'] = true;
Salve as alterações e feche o editor de texto.
Finalmente, abra seu navegador e navegue até a seguinte URL para acessar o phpMyAdmin por meio de uma conexão SSL segura.
https://yourdomain.com/my/
Tenha em mente que a mensagem indicando uma conexão insegura é devido ao uso de um certificado autoassinado. Para prosseguir, clique em “Avançado” e confirme a exceção de segurança.


Conclusão
Parabéns! Você instalou com sucesso o PhpMyAdmin com o Apache em seu sistema RHEL, CentOS Stream, Rocky Linux ou AlmaLinux. Essa ferramenta baseada na web simplifica a gestão de seus bancos de dados, tornando tarefas como criação de banco de dados, consultas e gerenciamento de dados uma brisa.
Source:
https://www.tecmint.com/install-phpmyadmin-rhel-centos-fedora-linux/