GLPI – Configurando ambiente

Essa página descreve a configuração básica para montar um servidor web para hospedar o GLPI V10.

Se você curtir esse artigo, e ele der um adianto no seu trampo, não esqueça de dar uns cliques nos anúncios para ver o que os anunciantes tem para te oferecer. Vou ficar muito contente.

O que precisa ser configurado:

  • Portas 80, 443, 636, 3306 e 62354 devem estar abertas na instância EC2
  • Ter um banco de dados MariaDB ou MYSQL
  • Servidor Apache
  • Serviço PHP

Instalando o Maria DB ou o MySQL:

  • Instalar o MariaDB ou o MySQL normalmente.
  • Criar um banco de dados glpi_db
  • Acessar o banco de dados com o usuário e senha do GLPI e dar um use no banco, para ele ficar selecionado.

Instalando o Apache2:

Acessar o servidor GLPI e executar os seguintes comandos no terminal:

sudo apt update
sudo apt upgrade
sudo apt install build-essential 
sudo apt-get install apache2
sudo apt-get install net-tools
sudo timedatectl set-timezone America/Sao_Paulo
sudo apt-get install stunnel

Verificando se o Apache foi instalado:

  • Abrir o navegador de sua máquina,
  • Digitar o endereço de IP do servidor GLPI.
  • Verificar se a tela do apache é exibida, conforme figura abaixo.
  • Caso não apareça a imagem abaixo, não prossiga até resolver ou entender o que está acontecendo. Ao término da configuração do GLPI, essa página DEVE ser removida e ou desabilitada.
Tele de abertura do servidor Apache

Comandos úteis do Apache:

sudo systemctl start apache2
sudo systemctl restart apache2
sudo systemctl stop apache2
sudo systemctl status apache2

Acertando a configuração do apache2.conf:

Essa configuração serve para proteger o acesso ao diretório de arquivos. O acesso Web ao diretório var do GLPI deve ser desabilitado pela edição do arquivo apache2.conf, conforme indicado a seguir:

sudo vim /etc/apache2/apache2.conf

Vai abrir o editor. Procure o texto indicado abaixo:

<Directory /var/www/>
        Options Indexes FollowSymLinks
        AllowOverride None
        Require all granted
</Directory>

Altere o valor indicado acima, conforme indicado abaixo:

<Directory /var/www/>
        Options Indexes FollowSymLinks
        AllowOverride All
        Require all granted
</Directory>

Salve, feche o arquivo e reinicie o Apache com o comando abaixo:

sudo systemctl restart apache2

Acertando a propriedade e grupo do diretório /var/www/html:

  • Adicionar no grupo www-data o usuário “ubuntu”.
  • Mudar o grupo diretório /var/www/html de root para www-data.
  • Dar permissão de escrita no diretório /var/www/html para quem é do grupo www-data
  • Note que essas permissões são iniciais e o script de instalação do GLPI as irá alterar durante a instalação.
  • Reinicia o sistema para as permissões surtirem efeito (há outros modos de fazer isso).
sudo usermod -a -G www-data ubuntu
sudo chgrp -R www-data /var/www/html
sudo chmod -R 775 /var/www/html
sudo shutdown -r now
;Aguardar reiniciar o sistema para as alterações surtirem efeito.

Proceder com a instalação do PHP:

Assim que o serviço do Apache2 estiver funcionando, proceder com a instalação do PHP.

sudo apt install software-properties-common
sudo add-apt-repository ppa:ondrej/php
sudo apt update
sudo apt upgrade
sudo apt-get install php8.0 libapache2-mod-php8.1 php8.1-mbstring

Verificando se o PHP foi instalado:

Para testes e verificar as dependências do PHP, criar um um arquivo tst.php com o código abaixo e salvar no diretório /var/www/html. Note que após a instalação do GLPI, esse arquivo DEVE ser removido.

<?php phpinfo();?> 

Ao digitar no navegador Web o endereço <endereço_do_servidor>/tst.php, deve vir uma tela semelhante à abaixo:

Caso não apareça a imagem acima, não prossiga até entender e resolver o que está lhe impedindo de acessar essa tela.

Instalando as dependências do PHP:

A partir desse momento deve-se instalar as seguintes dependências do PHP:

  • JSON : Formato de suporte a dados estruturados JSON.
  • Mbstring : Gerenciamento de cadeia de caracteres multi-byte.
  • MySQL : Conexão com o banco de dados.
  • Session : Suporte à sessão de usuários. Vem habilitado por padrão.
  • CLI : Permite o uso do PHP pela linha de comando, para automação de ações.
  • CURL : CAS para autenticação.
  • DOMXML : CAS para autenticação.
  • GD : Geração de imagem.
  • IMAP : Serviço de servidor de e-mail para coletar tickets e autenticação de usuário.
  • LDAP : Serviço de autenticação externo de usuário.
  • OpenSSL : Serviço de comunicação criptografada.
  • Zip : Pacote para tratar arquivos compactados
  • bz2 : Suporte ao formato bzip2
sudo apt-get install php-apcu
sudo apt-get install libapache2-mod-php
sudo apt-get install php-ldap
sudo apt-get install php-xmlrpc 
sudo apt-get install php8.x-ldap
sudo apt-get install php-mbstring
sudo apt-get install php8.x-bz2
sudo apt-get install php8.x-cli
sudo apt-get install php8.x-curl
sudo apt-get install php8.x-gd
sudo apt-get install php8.x-imap
sudo apt-get install php8.x-intl
sudo apt-get install php8.x-mysql
sudo apt-get install php8.x-xml
sudo apt-get install php8.x-zip

Depois de instalar os pacotes necessários, o arquivo php.ini deve ser editado.

O arquivo php.ini fica no diretório /etc/php/8.x/apache2/php.ini e ele deve ser editado para seus parâmetros ficarem como indicado abaixo:

extension=curl
extension=fileinfo
extension=gd
extension=intl
extension=json.so
extension=mbstring
extension=php_mbstring.dll
extension=exif 
extension=mysqli
extension=openssl
extension=php_mysqli.so
extension=php_gd2.dll
extension=php_ldap.dll
extension=xmlrpc

memory_limit = 128M  
file_uploads = on 
max_execution_time = 600  
#register_globals = off   
#magic_quotes_sybase = off 
session.auto_start = 0 
session.use_trans_sid = 0 
zlib.output_compression = On

Caso o arquivo php.ini não contenha a chave indicada acima, ela deve ser criada e o comentário deve ser removido da chave caso necessário.

Feitas as alterações no arquivo php.ini, é salvar sair e reiniciar o servidor Apache com o comando abaixo:

sudo systemctl restart apache2

Acessar a página <endereço_do_servidor>/tst.php e assegurar que os módulos foram propriamente configurados.

Publicado por Renato de Pierri

Data: 24/07/2022

Last updated by at .