terça-feira, 22 de setembro de 2020

Como instalar Linux, Apache, MariaDB, PHP, MysqlAdmin no CentOS 7

Etapa um - instalar o Apache

O Apache está disponível nos repositórios de software padrão do CentOS, o que significa que você pode instalá-lo com o gerenciador de pacotes yum.

Agindo como o usuário não-root, com privilégios sudo configurado nos pré-requisitos, atualize o índice de pacotes local httpd do Apache para refletir as alterações mais recentes do upstream:

  • sudo yum update httpd

Depois que os pacotes forem atualizados, instale o pacote Apache:

  • sudo yum install httpd

Após confirmar a instalação, o yum instalará o Apache e todas as dependências necessárias. Quando a instalação estiver concluída, você estará pronto para iniciar o serviço.

Passo 2 — Verificando seu Servidor Web

O Apache não inicia automaticamente no CentOS depois que a instalação é concluída. Você precisará iniciar o processo do Apache manualmente:

  • sudo systemctl start httpd

Verifique se o serviço está sendo executado com o seguinte comando:

  • sudo systemctl status httpd

Você verá um status active quando o serviço estiver em execução:

Output
Redirecting to /bin/systemctl status httpd.service ● httpd.service - The Apache HTTP Server Loaded: loaded (/usr/lib/systemd/system/httpd.service; enabled; vendor preset: disabled) Active: active (running) since Wed 2019-02-20 01:29:08 UTC; 5s ago Docs: man:httpd(8) man:apachectl(8) Main PID: 1290 (httpd) Status: "Processing requests..." CGroup: /system.slice/httpd.service ├─1290 /usr/sbin/httpd -DFOREGROUND ├─1291 /usr/sbin/httpd -DFOREGROUND ├─1292 /usr/sbin/httpd -DFOREGROUND ├─1293 /usr/sbin/httpd -DFOREGROUND ├─1294 /usr/sbin/httpd -DFOREGROUND └─1295 /usr/sbin/httpd -DFOREGROUND ...

Como você pode ver nesta saída, o serviço parece ter sido iniciado com sucesso. No entanto, a melhor maneira de testar isso é solicitar uma página do Apache.

Você pode acessar a página inicial padrão do Apache para confirmar que o software está sendo executado corretamente através do seu endereço IP. Se você não souber o endereço IP do seu servidor, poderá obtê-lo de algumas maneiras diferentes a partir da linha de comando.

Digite isto no prompt de comando do seu servidor:

  • hostname -I
  • ou
  • ip addr show

Esse comando exibirá todos os endereços de rede do host, assim você receberá um retorno com alguns endereços IP separados por espaços. Você pode experimentar cada um em seu navegador para ver se eles funcionam.

Quando você tiver o endereço IP do seu servidor, insira-o na barra de endereços do seu navegador:

http://ip_do_seu_servidor

Você verá a página padrão do Apache do CentOS 7:

Default Apache page for CentOS 7

Esta página indica que o Apache está funcionando corretamente. Ela também inclui algumas informações básicas sobre arquivos importantes do Apache e sobre localizações de diretórios. Agora que o serviço está instalado e em execução, você pode usar diferentes comandos systemctl para gerenciar o serviço.

Se não vir a página acima poderá ser bloqueio da firewall. Se necessário abra os portos 80 e 443

  • firewall-cmd --permanent --add-port=80/tcp
  • firewall-cmd --permanent --add-port=443/tcp
  • firewall-cmd --permanent --add-port=80/tcpsystemctl start httpd

Etapa dois - instalar o MySQL (MariaDB)

Agora que nosso servidor da web está instalado e funcionando, é hora de instalar o MariaDB, um substituto imediato do MySQL. MariaDB é um fork desenvolvido pela comunidade do sistema de gerenciamento de banco de dados relacional MySQL. Basicamente, ele irá organizar e fornecer acesso aos bancos de dados onde nosso site pode armazenar informações.

Novamente, podemos usar yumpara adquirir e instalar nosso software. Desta vez, também instalaremos alguns outros pacotes "auxiliares" que nos ajudarão a fazer com que nossos componentes se comuniquem uns com os outros:

sudo yum install mariadb-server mariadb

Quando a instalação for concluída, precisamos iniciar MariaDB com o seguinte comando:

sudo systemctl start mariadb

Verifique se o serviço está sendo executado com o seguinte comando:

  • sudo systemctl status mariadb

Agora que nosso banco de dados MySQL está em execução, queremos executar um script de segurança simples que removerá alguns padrões perigosos e bloqueará um pouco o acesso ao nosso sistema de banco de dados. Inicie o script interativo executando:

sudo mysql_secure_installation

O prompt pedirá sua senha root atual. Como você acabou de instalar o MySQL, provavelmente não terá um, então deixe em branco pressionando enter. Em seguida, o prompt perguntará se você deseja definir uma senha de root. Vá em frente e entre Ye siga as instruções:

Enter current password for root (enter for none):
OK, successfully used password, moving on...

Setting the root password ensures that nobody can log into the MariaDB
root user without the proper authorization.

New password: password
Re-enter new password: password
Password updated successfully!
Reloading privilege tables..
 ... Success!

Para o resto das perguntas, você deve simplesmente pressionar a tecla “ENTER” em cada prompt para aceitar os valores padrão. Isso removerá alguns usuários e bancos de dados de amostra, desabilitará logins de root remotos e carregará essas novas regras para que o MySQL respeite imediatamente as alterações que fizemos.

A última coisa que você vai querer fazer é habilitar o MariaDB para iniciar na inicialização. Use o seguinte comando para fazer isso:

sudo systemctl enable mariadb.service

Neste ponto, seu sistema de banco de dados está configurado e podemos seguir em frente.

Etapa três - instalar o PHP

PHP é o componente de nossa configuração que processará o código para exibir conteúdo dinâmico. Ele pode executar scripts, conectar-se aos nossos bancos de dados MySQL para obter informações e entregar o conteúdo processado ao nosso servidor web para exibição.

Podemos mais uma vez alavancar o yumsistema para instalar nossos componentes. Vamos incluir o pacote php-mysql também:

sudo yum install php php-mysql

Isso deve instalar o PHP sem problemas. Precisamos reiniciar o servidor web Apache para que funcione com PHP. Você pode fazer isso digitando:

sudo systemctl restart httpd.service

Instalar Módulos PHP

Para aprimorar a funcionalidade do PHP, podemos instalar opcionalmente alguns módulos adicionais.

Para ver as opções disponíveis para módulos e bibliotecas PHP, você pode digitar isso em seu sistema:

yum search php-

Os resultados são todos os componentes opcionais que você pode instalar. Ele fornecerá uma breve descrição para cada um:

php-bcmath.x86_64 : A module for PHP applications for using the bcmath library
php-cli.x86_64 : Command-line interface for PHP
php-common.x86_64 : Common files for PHP
php-dba.x86_64 : A database abstraction layer module for PHP applications
php-devel.x86_64 : Files needed for building PHP extensions
php-embedded.x86_64 : PHP library for embedding in applications
php-enchant.x86_64 : Enchant spelling extension for PHP applications
php-fpm.x86_64 : PHP FastCGI Process Manager
php-gd.x86_64 : A module for PHP applications for using the gd graphics library
. . .

Para obter mais informações sobre o que cada módulo faz, você pode pesquisar na internet ou pode consultar a longa descrição do pacote digitando:

yum info package_name

Haverá muita saída, com um campo chamado Descriptionque terá uma explicação mais longa da funcionalidade que o módulo fornece.

Por exemplo, para descobrir o que o php-fpmmódulo faz, podemos digitar o seguinte:

yum info php-fpm

Junto com uma grande quantidade de outras informações, você encontrará algo parecido com isto:

. . .
Summary     : PHP FastCGI Process Manager
URL         : http://www.php.net/
License     : PHP and Zend and BSD
Description : PHP-FPM (FastCGI Process Manager) is an alternative PHP FastCGI
            : implementation with some additional features useful for sites of
            : any size, especially busier sites.

Se, após pesquisar, você decidir que deseja instalar um pacote, poderá fazê-lo usando o yum installcomando como temos feito para o nosso outro software.

Se decidirmos que php-fpmé algo de que precisamos, poderíamos digitar:

sudo yum install php-fpm

Se você deseja instalar mais de um módulo, pode fazer isso listando cada um, separados por um espaço, seguindo o yum installcomando, assim:

sudo yum install package1 package2 ...

Neste ponto, sua pilha LAMP está instalada e configurada. Devemos ainda testar nosso PHP.

Etapa quatro- atualizar para PHP 7.2 no CentOS 7 

Ative o repo EPEL em um servidor CentOS e RHEL 7.x digitando o seguinte comando:

$ sudo yum install epel-release

Transforme o remi repo também:
$ sudo yum install http://rpms.remirepo.net/enterprise/remi-release-7.rpm

Instale os pacotes yum-utils também:
$ sudo yum install yum-utils

Habilite remi repo, execute: Procure por pacotes e módulos do PHP 7.2 com mais command / grep command / egrep command : Exemplos de resultados
$ sudo yum-config-manager --enable remi-php72
$ sudo yum update


$ sudo yum search php72 | more
$ sudo yum search php72 | egrep 'fpm|gd|mysql|memcache'

php72-php-fpm.x86_64: Gerenciador de processos PHP FastCGI
php72-php-gd.x86_64: Um módulo para aplicativos PHP para usar os gráficos gd
php72-php-mysqlnd.x86_64: Um módulo para aplicativos PHP que usam MySQL
php72-php-pecl-mysql.x86_64: funções de acesso ao banco de dados MySQL
php72-php-pecl-mysql-xdevapi.x86_64: funções de acesso ao banco de dados MySQL

Finalmente instale o php 7.2 no CentOS 7.2:
$ sudo yum install php72

Você deve instalar o “PHP FastCGI Process Manager” chamado php72-php-fpm junto com os módulos comumente usados:
$ sudo yum install php72-php-fpm php72-php-gd php72-php-json php72-php-mbstring php72-php-mysqlnd php72-php-xml php72-php-xmlrpc php72-php-opcache

Etapa cinco- teste o processamento de PHP em seu servidor web

Para testar se nosso sistema está configurado corretamente para PHP, podemos criar um script PHP muito básico.

Vamos chamar isso de script info.phpPara que o Apache encontre o arquivo e o exiba corretamente, ele deve ser salvo em um diretório muito específico, que é chamado de “raiz da web”.

No CentOS 7, esse diretório está localizado em /var/www/html/Podemos criar o arquivo nesse local digitando:

sudo vi /var/www/html/info.php

Isso abrirá um arquivo em branco. Queremos colocar o seguinte texto, que é um código PHP válido, dentro do arquivo:

<?php phpinfo(); ?>

Quando terminar, salve e feche o arquivo.

Se você estiver executando um firewall, execute os seguintes comandos para permitir o tráfego HTTP e HTTPS:

sudo firewall-cmd --permanent --zone=public --add-service=http 
sudo firewall-cmd --permanent --zone=public --add-service=https
sudo firewall-cmd --reload

Agora podemos testar se nosso servidor da web pode exibir corretamente o conteúdo gerado por um script PHP. Para tentar fazer isso, basta visitar esta página em nosso navegador. Você precisará do endereço IP público do seu servidor novamente.

O endereço que você deseja visitar será:

http://your_server_IP_address/info.php

A página que você acessa deve ser semelhante a esta:

Informações de PHP padrão do CentOS 7

Esta página basicamente fornece informações sobre o seu servidor da perspectiva do PHP. É útil para depurar e garantir que suas configurações estejam sendo aplicadas corretamente.

Se isso foi bem-sucedido, seu PHP está funcionando conforme o esperado.

Você provavelmente deseja remover este arquivo após este teste porque ele pode fornecer informações sobre o seu servidor para usuários não autorizados. Para fazer isso, você pode digitar:

sudo rm /var/www/html/info.php

Você sempre pode recriar esta página se precisar acessar as informações novamente mais tarde.

Etapa seis- Instalar PhpMyadmin

1. Instalar o Repositório EPEL

O phpMyAdmin vem no repositório EPEL (Extra Packages for Enterprise Linux – Pacotes Adicionais para Enterprise Linux).

Para aceder ao EPEL, você precisa instalar um pacote especial, o epel-release. Use o comando a seguir para fazer a instalação dele no seu CentOS:

sudo yum install epel-release

Agora que o repositório EPEL está disponível, podemos proceder com a instalação do phpMyAdmin no CentOS 7.

2.  Instalação – Install phpMyAdmin CentOS 7

Coloque o seguinte comando:

sudo yum install phpmyadmin

Assim que a instalação terminar, você terá que editar o arquivo de configuração do phpMyAdmin.

3. Configurar o Arquivo phpMyAdmin.conf

Essa edição vai garantir que você possa acessar o cliente do phpMyAdmin remotamente. Vamos abrir o arquivo phpMyAdmin.conf localizado no diretório /etc/httpd/conf.d/ usando o editor vim.

Use o comando abaixo:

vim /etc/httpd/conf.d/phpMyAdmin.conf

Aqui você vai ver quatro linhas obrigatórias (require) de IP junto com seus números de IP. O valor padrão é 127.0.0.1.  

Substitua esse valor com o IP da máquina (192.168.100.15) ou ips da sua rede (192.168.100) que você está usando para aceder ao phpMyAdmin. Você pode usar uma ferramenta como o WhatsMyIP para descobrir qual é o seu IP.

Salve e saia do arquivo apertando escape e digitando: wq.

Você pode ver um exemplo do arquivo phpMyAdmin.conf abaixo.



4. Reiniciar o Servidor Web Apache

Agora, vamos reiniciar o servidor web Apache usando o código abaixo na linha de comando.

systemctl restart httpd

5. Verificar se o phpMyAdmin Está Funcionando

Finalmente, podemos abrir o utilitário do phpMyAdmin inserindo o IP do seu servidor na barra do seu navegador. Use junto com a terminologia /phpmyadmin.

Ficará assim (no nosso exemplo): ipServidor/phpmyadmin. Logo em seguida, você vai ver a tela de login.