LoginSignup
8
1

More than 1 year has passed since last update.

GLPI on CentOS(インストール方法)

Last updated at Posted at 2022-08-29

GLPIは資産管理やチケット管理、運用管理など情報システムの管理に役立つWebアプリケーション(OSS)です。以前よりGitからインストールを実施して使っていたのですが最新版の10.台がrpmパッケージとしてリリースされたのでインストール方法をあらためて記事にしてみました。

ちなみに、ラックとかも管理できます(ネットワークエンジニア的にはちょっと熱いですw)
image.png

1.環境

OS:CentOS 7.9
Kernel: 3.10.0-1160.76.1.el7.x86_64
GLPI:10.0.2
PHP:7.4

2.OS最新化

いつも通りですが、OSを最新化します。

yum -y update
timedatectl set-timezone Asia/Tokyo
timedatectl  # 確認
      Local time: 月 2022-08-29 17:56:45 JST
  Universal time: 月 2022-08-29 08:56:45 UTC
        RTC time: 月 2022-08-29 08:56:45
       Time zone: Asia/Tokyo (JST, +0900)
     NTP enabled: yes
NTP synchronized: yes
 RTC in local TZ: no
      DST active: n/a

reboot  #再起動

3.パッケージインストール

各種パッケージをインストールしましょう。

yum -y install epel-release vim wget
yum -y remove cronie-anacron
yum -y install cronie-noanacron

curl -sS https://downloads.mariadb.com/MariaDB/mariadb_repo_setup | bash
yum -y install MariaDB-server

4.MariaDB設定

MariaDBのサービスをスタートさせて最低限の設定を実施しておきます。

systemctl start mariadb
systemctl enable mariadb

mariadb-secure-installation  #すべてYes

5.DB設定

GLPI用のデータベースを作成しましょう。(ユーザ・パスワードは適時変えてください)

mysql -u root -p
create user 'glpi'@'localhost' identified by 'glpi';
grant usage on *.* to 'glpi'@'localhost' identified by 'glpi';
create database if not exists `glpi`;
grant all privileges on `glpi`.* to 'glpi'@'localhost';
flush privileges;
exit

mysql -u glpi -p  #ログイン確認
exit

6.PHPインストール

GLPIはPHPで書かれています。今回はPHP7.4を使います。各種パッケージをインストールします。

yum -y install https://dl.fedoraproject.org/pub/epel/epel-release-latest-7.noarch.rpm
yum -y install http://rpms.remirepo.net/enterprise/remi-release-7.rpm
yum -y install yum-utils
yum-config-manager --enable remi-php74
yum-config-manager --enable remi

yum -y install httpd php php-opcache php-apcu
yum -y install php-pear-CAS php-mbstring php-gd php-mysqlnd php-intl php-ldap php-zip php-xmlrpc

systemctl enable --now httpd

7.firewalld 設定変更

ブラウザからアクセスできるようfirewalldの設定を変更しておきます。

vim /etc/firewalld/firewalld.conf
AllowZoneDrifting=yesAllowZoneDrifting=no
:wq

firewall-cmd --zone=public --add-service=http --permanent
firewall-cmd --zone=public --add-service=https --permanent
firewall-cmd --reload
iptables -L -n  #結果を確認

8.SeLinux 設定

下記設定を実施しておきます。

setsebool -P httpd_can_network_connect on
setsebool -P httpd_can_network_connect_db on
setsebool -P httpd_can_sendmail on

9.GLPIリポジトリ追加

GLPIのrpmパッケージをインストールできるようリポジトリを登録します。以前記載した記事を参考に実施してください。

10.GLPI インストール

それでは、いざGLPIのインストールへ!!

yum -y install glpi

11.エラー回避のための処理

GLPIをインストールすると、cron.d配下にファイルが生成されます。このまま放置しておくと、rootユーザ宛てにメールが届きますので一旦無効に置きます。(この内容については後日別記事で取り上げます)

vim /etc/cron.d/glpi
* * * * * apache /usr/bin/php /usr/share/glpi/front/cron.php
↓
#* * * * * apache /usr/bin/php /usr/share/glpi/front/cron.php

:wq

12.Apache設定変更

Apacheに設定を追加して、ローカルセグメントからアクセスできるよう変更します。

vim /etc/httpd/conf.d/glpi.conf
 26     <IfModule mod_authz_core.c>
 27         # Apache 2.4
 28         Require local
 29         Require ip 10.2.0.0/24  # ← ローカルからアクセスできるよう追加
 30         # Require ip ##.##.##.##

:wq

systemctl restart httpd

13.ブラウザ操作

ここからはブラウザによる操作にとなります。
http://xxx.xxx.xxx.xxx/glpi/install/install.php にアクセスします。日本語を選択しましょう。
image.png

続行をクリックしましょう。(licenseには何も表示されていませんが、気にせず)
image.png

インストールをクリックします。
image.png

互換性検査がすべてOKになっていれば、画面下にある続行をクリックしましょう。
image.png

DB設定をいれて続行をクリックします。
image.png

glpiを選んで続行をクリックします。
image.png

テーブルなどが作成されます。続行をクリックします。
image.png

チェックを外して続行をクリックします。
image.png

続行をクリックします。
image.png

GLPIを使用をクリックします。
image.png

ログインしましょう。
image.png

ログイン後に、セキュリティ警告のバナーが表示されますので
指示に従って対応しましょう。
image.png

14.サーバタイムスタンプの変更

13番までの操作でGLPIは利用できるようになっていますが、このままだと何かしら操作した際の記録(ログ)が9時間ずれてしまうので以下の対応を実施しておきます。

mysql_tzinfo_to_sql /usr/share/zoneinfo | mysql -u root mysql
mysql -u root mysql
grant all privileges on `mysql`.time_zone to 'glpi'@'localhost';
grant all privileges on `mysql`.time_zone_name to 'glpi'@'localhost';
flush privileges;
show grants for 'glpi'@'localhost';  #権限確認
exit

vim /etc/my.cnf.d/server.cnf
[mysqld]
default-time-zone='Asia/Tokyo'
:wq

systemctl restart mariadb

vim /etc/php.ini
date.timezone = "Asia/Tokyo"
:wq

systemctl restart httpd

試しに何かしらオブジェクトを登録してみましょう。下記画面のように現在時刻になっていればOKです。
image.png

GLPIは本当に色々な事ができるツールです。デフォルトの機能だけでもかなり有益なものですが、プラグインも実装可能で利用者が比較的簡単に実装できます。

運用を請け負っている方、情シスの方向けのツールだと思いました。

次回は基本機能についてご紹介します。

8
1
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
8
1