会员

新闻

博问

闪存

班级

AI培训

所有博客

当前博客

我的博客我的园子账号设置简洁模式 ... 退出登录

注册登录

kjifds

博客园

首页

新随笔

联系

订阅

管理

随笔 - 1  文章 - 0  评论 - 0  阅读 - 318

自建IT资产管理系统-GLPI 10

GLPI可以提供功能全面的IT资源管理接口，你可以用它来建立数据库全面管理IT的电脑，显示器，服务器，打印机，网络设备，电话，甚至硒鼓和墨盒等。提供Helpdesk用户支持平台；联系人，合同，合作商，以及文档的管理；提供资源预定，知识库的管理等功能。 法国等欧洲国家和地区应用广泛的开源IT资产管理软件
Github：https://github.com/glpi-project/glpi/release

本文全流程超详细！

系统部署

环境 Alma Linux 9.1

删除系统自带的MariaDB数据库及配置文件 # Alma Linux 9.1最小安装不自带MariaDB

[root@localhost ~] find -H /etc/ | grep my.c #查看默认数据库配置文件
/etc/pki/tls/certs/make-dummy-cert
/etc/pki/tls/certs/renew-dummy-cert
/etc/my.cnf
/etc/my.cnf.d
/etc/my.cnf.d/mysql-clients.cnf
[root@localhost ~] rm -rf /etc/my.cnf /etc/my.cnf.d/ #删除默认数据库配置文件
[root@localhost ~] find -H /etc/ | grep my.c #再次查看默认数据库配置文件
/etc/pki/tls/certs/make-dummy-cert
/etc/pki/tls/certs/renew-dummy-cert
[root@localhost ~]
[root@localhost ~] rpm -qa|grep mariadb-libs #卸载系统自带mariadb-libs
mariadb-libs-5.5.65-1.el7.x86_64
[root@localhost ~] yum remove mariadb-libs.x86_64 -y #卸载软件包，自动解决其依赖关系

添加MariaDB yum源
MariaDB官方源：https://mariadb.org/download/?t=repo-config

[root@localhost ~] tee /etc/yum.repos.d/MariaDB.repo<<EOF
# MariaDB 10.11 RedHatEnterpriseLinux repository list - created 2023-02-22 01:51 UTC
# https://mariadb.org/download/
[mariadb]
name = MariaDB
baseurl = https://mirrors.aliyun.com/mariadb/yum/10.11/rhel/9.1/x86_64/
gpgkey=https://mirrors.aliyun.com/mariadb/yum/RPM-GPG-KEY-MariaDB
gpgcheck=1
EOF

安装MariaDB

[root@localhost ~] dnf clean all #清除dnf源缓存
[root@localhost ~] dnf makecache #更新dnf源缓存
[root@localhost ~] dnf --enablerepo=mariadb install -y mariadb-server mariadb #指定源安装服务端 客户端

开启MariaDB，并创建GLPI数据库

[root@localhost ~] systemctl start mariadb.service #开启服务
[root@localhost ~] systemctl enable mariadb.service #设置为开机自启动服务
[root@localhost ~] mysql -u root -p #登录数据库
Enter password: #输入密码

#创建GLPI_SQL数据库
MariaDB [(none)]> CREATE DATABASE GLPI_SQL;
#创建数据库角色GLPI，密码为GLPI@1234，并赋予GLPI_SQL本地权限
MariaDB [(none)]> GRANT ALL PRIVILEGES ON GLPI_SQL.* TO 'GLPI'@'localhost' IDENTIFIED BY 'GLPI@1234';
#刷新权限表
MariaDB [(none)]> FLUSH PRIVILEGES;

[root@localhost ~] vi /etc/my.cnf.d/server.cnf #指定MariaDB监听的IP地址
[mysqld]
bind-address = 0.0.0.0
[root@localhost ~] systemctl restart mariadb #重新启动MariaDB服务

设置MariaDB字符集为utf-8

[root@localhost ~] vi /etc/my.cnf
[mysqld]
init_connect='SET collation_connection = utf8_unicode_ci'
init_connect='SET NAMES utf8'
character-set-server=utf8
collation-server=utf8_unicode_ci
skip-character-set-client-handshake
#按i编辑，按esc后输入:wq!保存退出
[root@localhost ~]
[root@localhost ~] vi /etc/my.cnf.d/mysql-clients.cnf
[mysql]
default-character-set=utf8
#按i编辑，按esc后输入:wq!保存退出
[root@localhost ~]
[root@localhost ~] systemctl restart mariadb #重启服务
[root@localhost ~] mysql -u root -p #进入数据库
Enter password: #输入密码
MariaDB [(none)]> show variables like 'character_set_%'; #查看默认字符集
+--------------------------+----------------------------+
| Variable_name | Value |
+--------------------------+----------------------------+
| character_set_client | utf8mb3 |
| character_set_connection | utf8mb3 |
| character_set_database | utf8mb3 |
| character_set_filesystem | binary |
| character_set_results | utf8mb3 |
| character_set_server | utf8mb3 |
| character_set_system | utf8mb3 |
| character_sets_dir | /usr/share/mysql/charsets/ |
+--------------------------+----------------------------+

dnf安装PHP8.1

[root@localhost ~] dnf install -y epel-release #安装EPEL仓库
[root@localhost ~] dnf install -y https://rpms.remirepo.net/enterprise/remi-release-9.rpm #安装Remi仓库
[root@localhost ~] dnf module -y reset php #将php模块重置为默认状态
[root@localhost ~] dnf module -y enable php:remi-8.1 #启用Remi存储库提供的PHP8.1模块，也告诉dnf从Remi中安装PHP8.1版本
[root@localhost ~] dnf install -y php #安装php
[root@localhost ~] php -v #检查php版本
[root@localhost ~] dnf install -y php-mysqli php-gd php-ldap php-intl php-zip php-bz2 #安装更多php模块

配置PHP8.1

#PHP 配置文件 (/etc/php.ini) 调整如下
[root@localhost ~] vi /etc/php.ini
memory_limit = 128M #设置PHP脚本可用的最大内存
file_uploads = on #指定是否允许通过HTTP上传文件
max_execution_time = 60 #指定PHP脚本执行的最大时间（以秒为单位）。如果脚本执行时间超过了这个限制，PHP会自动终止脚本执行。
session.auto_start = off #指定是否自动启动Session，如果设置为on，则Session会在每次请求时自动启动。
session.use_trans_sid = off #指定是否允许使用基于URL的Session ID。如果设置为on，则可以通过URL参数传递Session ID，这可能会带来一些安全风险。
session.cookie_httponly = on #指定是否将Session ID作为HTTP cookie发送给客户端。如果设置为on，则Session ID只能通过HTTP传输，不能通过JavaScript访问，这可以提高Session的安全性。

安装apache

[root@localhost ~] dnf install -y httpd httpd-devel #安装httpd服务器和开发包
[root@localhost ~] systemctl start httpd.service #启动httpd服务器
[root@localhost ~] systemctl enable httpd.service #设置httpd服务器开机自启

修改httpd.conf文件

[root@localhost ~] vi /etc/httpd/conf/httpd.conf

#在AddType application......后面加如下一行
AddType application/x-httpd-php .php .html

#在DirectoryIndex index.html加上index.php
DirectoryIndex index.php index.html

#将AllowOverride None都改成AllowOverride All

#在Include conf.modules.d/*.conf后面加如下一行
LoadModule rewrite_module modules/mod_rewrite.so

下载glpi系统并解压至/var/www/html/目录下 并设置apache用户权限

[root@localhost ~] dnf install -y wget #安装wget工具
[root@localhost ~] wget (下载直连) -O (文件名)
#github：https://github.com/glpi-project/glpi/releases
[root@localhost ~] tar -xf (文件名) -C /var/www/html/
[root@localhost ~] chown -R apache:apache /var/www/html/
[root@localhost ~] chmod -R 775 /var/www/html/glpi

关闭防火墙

[root@localhost ~] systemctl stop firewalld.service
[root@localhost ~] systemctl disable firewalld.service

配置SELinux

[root@localhost ~] chcon -R -t httpd_sys_content_t /var/www/html/glpi/
[root@localhost ~] chcon -R -t httpd_sys_rw_content_t /var/www/html/glpi/
[root@localhost ~] setsebool -P httpd_can_network_connect=1
[root@localhost ~] setsebool -P httpd_can_network_connect_db=1
[root@localhost ~] setsebool -P httpd_can_sendmail=1
[root@localhost ~] sudo setenforce 1

重启服务

[root@localhost ~] systemctl restart httpd.service mariadb.service php-fpm.service

访问GLPI：/glpi
同意协议后会自检环境是否正常，按照上面的设置，自检界面如下图

使用

默认管理员帐号是 glpi/glpi

默认群组

Super-Admin: 拥有所有的权限。注意如果super-admin profile被删除或者它的"配置界面"选择了简单界面，会无法进入GLPI的设置。

Admin: 拥有对GLPI的全部设置权限。在规则(rules)、实体和其他可能影响GLPI运行的配置上有所限制。

Supervisor: 包含了Technician的权限，增加了管理的权限（如修改工单属性） ，但授权能力是有限的（例如只能为用户授予Technician、Hotliner、Self-Service和Supervisor四种权限）。操作范围是所属实体，授权时递归可以看到子实体。

Technician: 此配置文件用于运维技术人员。可以处理工单，可以读写数据和用户配置，但授权能力是有限的（例如只能为用户授予Self-Service和Technician两种权限）。操作范围是所属实体，授权时递归可以看到子实体。

Hotliner: 适用于热线部门。可以创建和追踪工单，但不能像technician一样处理工单。操作范围是所属实体，授权时递归可以看到子实体。

Observer: 对所有资产和管理数据（资产、工单、文档、project、用户、群组等）有阅读权限。可以创建工单，但不能管理和处理工单（分配工单等）。操作范围是所属实体，授权时递归可以看到子实体。

Self-Service: 是默认配置文件。是权限最小的配置文件。只有Self-Service使用了简单界面而不是标准界面。可以创建和追踪工单、预定设备、查阅知识库。 操作范围是与自己相关的工单。

好文要顶关注我收藏该文

kjifds
粉丝 - 0 关注 - 1

+加关注

0

0

升级成为会员

posted @ 2023-02-27 15:43  kjifds  阅读(318)  评论(0)  编辑  收藏  举报

会员救园
刷新页面返回顶部

登录后才能查看或发表评论，立即 登录 或者逛逛 博客园首页

【推荐】编程路上的催化剂：大道至简，给所有人看的编程课
【推荐】阿里云热销爆款云服务器，新老同享一口价99元/年
【推荐】天翼云S3云主机年度精选低至9.5元/月，立即抢购

编辑推荐：
· MySQL 分组排序后，如何取前N条或倒数N条
· 「布局技巧」Flex 布局下居中溢出滚动截断问题
· 记一次奇怪的文件句柄泄露问题
· .NET8 极致性能优化 AOT
· 优化接口设计的思路系列：接口防抖的一些方式

阅读排行：
· ASP.NET Core 8 在 Windows 上各种部署模型的性能测试
· 一个程序猿的2023总结：《寻找》
· 程序员的精力管理
· 又有新框架上线了，测试、AI 通通有「GitHub 热点速览」
· 自己写个网盘系列：① 来学习开启这个项目吧

公告

昵称： kjifds
园龄： 4年
粉丝： 0
关注： 1
+加关注

< | 2023年12月 | >

日 | 一 | 二 | 三 | 四 | 五 | 六
26 | 27 | 28 | 29 | 30 | 1 | 2
3 | 4 | 5 | 6 | 7 | 8 | 9
10 | 11 | 12 | 13 | 14 | 15 | 16
17 | 18 | 19 | 20 | 21 | 22 | 23
24 | 25 | 26 | 27 | 28 | 29 | 30
31 | 1 | 2 | 3 | 4 | 5 | 6

搜索

常用链接

我的随笔

我的评论

我的参与

最新评论

我的标签

随笔档案

2023年2月(1)

阅读排行榜

1. 自建IT资产管理系统-GLPI 10(318)

Copyright © 2023 kjifds
Powered by .NET 8.0 on Kubernetes

点击右上角即可分享