Instalação
Abaixo segue o passo a passo a ser executado para concluir a instalação do GLPI. Foram seguidas orientações do portal oficial do GLPi que pode ser acessado no link: https://glpi-install.readthedocs.io/pt/latest/
- Atualizar o Sistema Operacional
sudo apt update && sudo apt dist-upgrade -y - Reconfigurar o timezone
sudo dpkg-reconfigure tzdata - Reiniciar para aplicar as configurações
sudo shutdown -r now - Instalar Apache, PHP e MySQL e dependências necessárias
apt install -y \
apache2 \
mariadb-server \
mariadb-client \
libapache2-mod-php \
php-dom \
php-fileinfo \
php-json \
php-simplexml \
php-xmlreader \
php-xmlwriter \
php-curl \
php-gd \
php-intl \
php-mysqli \
php-bz2 \
php-zip \
php-exif \
php-ldap \
php-opcache \
php-mbstring - Criar banco de dados do glpi
mysql -e "CREATE DATABASE glpi"
mysql -e "GRANT ALL PRIVILEGES ON glpi.* TO 'glpi'@'localhost' IDENTIFIED BY 'senha'"
mysql -e "GRANT SELECT ON mysql.time_zone_name TO 'glpi'@'localhost'"
mysql -e "FLUSH PRIVILEGES" - Carregar timezones no MySQL
mysql_tzinfo_to_sql /usr/share/zoneinfo | sudo mysql -u root mysql - Desabilitar o site padrão do apache2
a2dissite 000-default.conf - Criar o virtualhost do glpi
cat << EOF | sudo tee /etc/apache2/sites-available/suporte.conf
<VirtualHost *:80>
ServerName suporte.ti.srt.ifsp.edu.br
DocumentRoot /var/www/glpi/public
<Directory /var/www/glpi/public>
Require all granted
RewriteEngine On
# Ensure authorization headers are passed to PHP.
# Some Apache configurations may filter them and break usage of API, CalDAV, ...
RewriteCond %{HTTP:Authorization} ^(.+)$
RewriteRule .* - [E=HTTP_AUTHORIZATION:%{HTTP:Authorization}]
# Redirect all requests to GLPI router, unless file exists.
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^(.*)$ index.php [QSA,L]
</Directory>
</VirtualHost>
EOF -
Configuração de segurança para sessões
Para aumentar a segurança, é recomendável configurar sessões PHP com as seguintes configurações:session.cookie_secure: deve ser definido on quando o GLPI puder ser acessado somente no protocolo HTTPS;
session.cookie_httponly: deve ser definido on para impedir que scripts do lado do cliente acessem valores de cookies;
session.cookie_samesite: deve ser definido, pelo menos, como Lax, para evitar que cookies sejam enviados em solicitações POST de origem cruzada (entre domínios).
Acesso o arquivo /etc/php/8.3/apache2/php.ini, procure os parâmetros acima e altere conforme orientação. - Habilitar o virtualhost
sudo a2ensite glpi.conf -
Habilitar módulos do Apache necessários
sudo a2enmod rewrite - Reinicia o apache para entrar em vigor
sudo systemctl restart apache2 - Download do glpi
wget -q https://github.com/glpi-project/glpi/releases/download/10.0.18/glpi-10.0.18.tgz
ou ultima versão disponivel no github - Descompactar a pasta do GLPI
tar -zxf glpi-* - Mover a pasta do GLPI para a pasta htdocs
sudo mv glpi /var/www/glpi - Configurar a permissão na pasta www/glpi
sudo chown -R www-data:www-data /var/www/glpi/ - Finalizar setup do glpi pela linha de comando
sudo php /var/www/glpi/bin/console db:install \
--default-language=pt_BR \
--db-host=localhost \
--db-port=3306 \
--db-name=glpi \
--db-user=glpi \
--db-password=senha -
Remover o arquivo de instalação
sudo rm /var/www/glpi/install/install.php -
Mover pastas do GLPI de forma segura
O GLPI armazena alguns dados no filesdiretório, a configuração de acesso ao banco de dados é armazenada no configdiretório, etc. Mesmo que o GLPI forneça algumas maneiras de impedir que os arquivos sejam acessados diretamente pelo servidor web, a prática recomendada é armazenar os dados fora da raiz web. Dessa forma, arquivos confidenciais não podem ser acessados diretamente do servidor web.
mv /var/www/glpi/files /var/lib/glpi
mv /var/www/glpi/config /etc/glpi
mkdir /var/log/glpi
chown -R www-data:www-data /var/lib/glpi
chown -R www-data:www-data /etc/glpi
chown -R www-data:www-data /var/log/glpi - Mover pastas do GLPI de forma segura | conf-dir
cat << EOF | sudo tee /var/www/glpi/inc/downstream.php
<?php
define('GLPI_CONFIG_DIR', '/etc/glpi/');
if (file_exists(GLPI_CONFIG_DIR . '/local_define.php')) {
require_once GLPI_CONFIG_DIR . '/local_define.php';
}
EOF - Mover pastas do GLPI de forma segura | data dir
cat << EOF | sudo tee /etc/glpi/local_define.php
<?php
define('GLPI_VAR_DIR', '/var/lib/glpi');
define('GLPI_LOG_DIR', '/var/log/glpi');
EOF -
Pós-instalação
Depois que o GLPI estiver instalado, você estará quase pronto.Uma etapa extra seria proteger o diretório de instalação. Como exemplo, você pode considerar adicionar o seguinte à configuração do seu host virtual Apache (ou ao glpi/install/.htaccessarquivo):
<IfModule mod_authz_core.c>
Require local
</IfModule>
<IfModule !mod_authz_core.c>
order deny, allow
deny from all
allow from 127.0.0.1
allow from ::1
</IfModule>
ErrorDocument 403 "<p><b>Restricted area.</b><br />Only local access allowed.<br />Check your configuration or contact your administrator.</p>"Neste exemplo, o acesso ao diretório de instalação será limitado apenas ao host local e exibirá uma mensagem de erro caso contrário
- Primeiros Passos
4.1. Acessar o GLPI via web browser
4.2. Criar um novo usuário com perfil super-admin
4.3. Remover os usuários glpi, normal, post-only, tech.
4.3.1. Enviar os usuários para a lixeira
4.3.2. Remover permanentemente
4.3.4. Configurar a url de acesso ao sistema em: Configurar -> Geral -> Configuração Geral -> URL da aplicação.
No Comments