RHEL/CentOS8安装itop3.0详细实践教程

1 硬件环境

主机虚拟服务器
CPUIntel® Xeon® Gold 5118 CPU @ 2.30GHz 8核心
硬盘剩余空间100G及以上
内存16GB

2 软件环境

序号项目描述备注
1服务器操作系统RHEL8.6
2Web服务器软件Apache2.4
3PHP服务器软件PHP7.4
4数据库软件Mariadb10.3

3 关闭防火墙及selinux

安装操作系统后,需要关闭防火墙及selinux,后期可根据实际情况开放防火墙端口

	systemctl stop firewalld
	systemctl disable firewalld
	getenforce    #查看状态
	vi /etc/sysconfig/selinux    #设置开机不启动
	SELINUX=disabled

4 更新yum源

	yum -y install epel-release
	yum update -y

5 安装Apache

	yum install -y httpd httpd-devel
	service httpd start
	systemctl enable httpd

6 安装PHP及依赖

	sudo dnf module reset -y php
	sudo dnf module install -y php:7.4
	sudo dnf install php-{mysqlnd,gd,intl,ldap,apcu,xmlrpc,opcache,zip,xmlrpc,soap} graphviz

7 安装Mariadb,创建iTop数据库

	#配置阿里云源
	vim /etc/yum.repos.d/mariadb.rep
	配置文件:[mariadb]
	name = MariaDB
	baseurl = http://mirrors.aliyun.com/mariadb/yum/10.3/centos7-amd64/
	gpgkey =  http://mirrors.aliyun.com/mariadb/yum/RPM-GPG-KEY-MariaDB
	gpgcheck = 1

安装mariadb并配置开机启动

	yum -y install MariaDB-server MariaDB-client   # yum安装MariaDB
	systemctl start mariadb.service    #启动mariadb
	systemctl enable mariadb.service   #设置开机启动

创建itop数据库

	mysql_secure_installation   #创初始化数据库
	          #创建数据库
	          mysql -uroot -p
	mysql> use mysql;
	mysql> CREATE USER 'itop'@'%' IDENTIFIED BY 'itop';   #用户名 密码
	mysql> GRANT USAGE ON *.* TO 'itop'@'%' IDENTIFIED BY 'itop';
	mysql> create database itop character set utf8 collate utf8_bin;
	mysql>grant select,insert,update,delete,create,drop,alter,trigger on itop.* to 'itop'@'%';
	mysql>ALTER DATABASE itop CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;
	FLUSH PRIVILEGES;
	mysql> quit 


8 上传iTop安装包并配置权限

上传itop安装包到 /var/www/html目录
解压安装包并赋权

	unzip iTop-3.0.2-1-9957.zip
	chown -R apache.apache /var/www/html/
	chmod 755 -R /var/www/html/itop

重启apache服务

systemctl restart httpd

9 进入web端,安装GLPI系统

浏览器输入:http://IP/itop/web,打开安装向导;
浏览器输入:http://IP/itop/web,打开安装向导;

选择全新安装
在这里插入图片描述
接受许可协议
在这里插入图片描述
数据库配置
在这里插入图片描述
设置管理员密码:pwd
在这里插入图片描述
选择安装生产实例
在这里插入图片描述
配置管理选项
在这里插入图片描述
选择企业服务管理
在这里插入图片描述
工单管理选项
在这里插入图片描述
变更管理选项
在这里插入图片描述]
额外的票证,FAQ
在这里插入图片描述
确认开始安装
在这里插入图片描述

10 配置文件修改

10.1修改时区为上海

vim /var/www/html/itop/web/conf/production/config-itop.php


时区修改为上海
//'timezone' => 'Europe/Paris',
// 修改为 
'timezone' => 'Asia/Shanghai',

10.2修改中文乱码

//'csv_file_default_charset' => 'ISO-8859-1',
//修改为 
'csv_file_default_charset' => 'UTF-8',

11 iTop 后台任务 cron配

itop后台定时任务默认关闭,需要手动启动

新建参数文件

vim /opt/iTop/params
    auth_user = admin
    auth_pwd = xxhbLOCAL.
    email_asynchronous = 1
    cron_sleep = 10

创建计划任务 itop安装目录自己注意一下

	crontab -e
 */10 * * * * /usr/bin/php /var/www/html/itop/web/webservices/cron.php --param_file=/opt/iTop/params --verbose=1 >> /var/log/itop-cron.log 2>&1
crontab -l  #查看一下
        crontab -l 

/var/log/itop-cron.log是执行日志

下面命令可以看到itop后台任务具体情况

php /var/www/html/itop/web/webservices/cron.php --auth_user=admin --auth_pwd=xxhbLOCAL. --status_only=1

在这里插入图片描述

12 修改UI登录样式

在这里插入图片描述

编辑 itop\css\login.css

#login-title {
	width: 70%;
	margin-left: 15%;
    /* 修改红色与字体大小 */
	color: #d71345;
font-size: 1.4rem;
}

13 修改文字内容

编辑 itop\dictionaries\zh_cn.dictionary.itop.ui.php
根据需求修改

14 安装toolkit

上面修改需要通过lookit工具更新后才能生效

将压缩包解压,修改文件夹名为toolkit,放置到itop目录下
输入网址 http://ip/toolkit,点击iTop update
在这里插入图片描述

15 LDAP配置

  • AD域同步分为两部分
    person同步(联系人)
    User同步(账户)
    在这里插入图片描述
  • 注意:
    PHP版本需要7.3以上
    同步账户需要rest角色 新建rest账户,角色分配REST Services User
    上传Data collector for LDAP 1.2.7.zip到/opt/itop目录
  • ldap-data-collector文件如下
     ldap-data-collector文件
  • ldap-data-collector,需要编辑的文件如下:
    /opt/itop/ldap-data-collector/collectors/params.distrib.xml
    /opt/itop/ldap-data-collector/conf/params.distrib.xml
    /opt/itop/ldap-data-collector/conf/params.local.xml
  • 其中conf/params.local.xml由conf/params.distrib.xml复制得到,当配置参数相同时,params.local.xml优先级高于params.distrib.xml
#解压ldap收集器
mkdir /opt/itop/ && cd /opt/itop/
unzip Data-collector-for-LDAP.zip
#复制配置文件
cd ldap-data-collector/conf
cp params.distrib.xml params.local.xml
  • 配置单AD域同步:
    编辑配置文件conf/params.local.xml
 vim conf/params.local.xml
<?xml version="1.0" encoding="UTF-8"?>
<!-- conf/params.local.xml - 用于配置个性化参数 -->
<parameters>
  <itop_url>http://localhost/itop/web/</itop_url>
  <itop_login>rest</itop_login>
  <itop_password>1234@Abcd</itop_password>
  <contact_to_notify>123@abc.com</contact_to_notify>
  <synchro_user>rest</synchro_user>
 <!--  BUG1 <ldapuri>ldap://localhost:389</ldaphost> -->
  <ldapuri>ldap://IP:389</ldapuri>
  <ldapdn>OU=test_users,DC=TESTAD,DC=LOCAL</ldapdn>
 <!--  BUG2 <ldaplogin>CN=ITOP-LDAP,DC=company,DC=com</ldaplogin> -->
  <ldaplogin> TESTAD \admin</ldaplogin>
  <ldappassword>1234@abcd</ldappassword>
  <page_size>1000</page_size>
  <prefix></prefix>
  <json_placeholders>
    <full_load_interval>604800</full_load_interval><!-- 7 days (in seconds): 7*24*60*60 -->
    <users_target_class>UserLDAP</users_target_class>
    <synchro_status>production</synchro_status>
  </json_placeholders>
</parameters>

在这里插入图片描述

  • 编辑配置文件collectors/params.distrib.xml
 vim collectors/params.distrib.xml
<?xml version="1.0" encoding="UTF-8"?>
<parameters>
        <!--  填写LDAP信息账号信息 -->
        <ldapuri>ldap://IP:389</ldapuri>
        <ldapdn>OU=test_users,DC=TESTAD,DC=LOCAL</ldapdn>
        <ldaplogin> TESTAD\admin</ldaplogin>
        <ldappassword>1234@abcd</ldappassword>
        <!-- Parameters for Person synchronization -->
        <ldappersonfilter>(objectClass=person)</ldappersonfilter>
        <itop_group_pattern>/^CN=itop-(.*),OU=.*/</itop_group_pattern>
        <person_fields>
                <!-- 重要: 映射LDAP用户与联系人 ,后续如果增加字段映射也在这里改  -->
                <primary_key>samaccountname</primary_key>
                <name>givenname</name>
                <first_name>sn</first_name>
                <email>mail</email>
                <phone>telephonenumber</phone>
                <mobile_phone>mobile</mobile_phone>
                <function>title</function>
                <employee_number>employeenumber</employee_number>
        </person_fields>
    	<person_defaults>
			<!--  同步到iTop的组织名称,不是组织ID ,请完整填写-->
			<org_id>Demo</org_id>
			<status>active</status>
		</person_defaults>

        <!--重要 : 同步参数设置 -->
        <collect_person_only>no</collect_person_only>
        <ldapuserfilter>(&amp;(objectClass=person)(samaccountname=*))</ldapuserfilter>
        <synchronize_profiles>no</synchronize_profiles>
        <user_fields>
                <!--  映射LDAP用户与联系人 -->
                <primary_key>samaccountname</primary_key>
                <login>samaccountname</login>
             	 <!--  重要:关联用户与联系人 默认是mail -->
                <contactid>mail</contactid>
        </user_fields>
        <user_defaults>
                <!--  默认角色 语言 -->
                <profile>Portal user</profile>
                <language>ZH CN</language>
        </user_defaults>
        <!-- 此参数在多域或多OU环境同步时候才会用到 -->
        <prefix></prefix>
        <json_placeholders>
                <!-- 
                <prefix></prefix>
                <persons_data_table>synchro_data_PersonAD</persons_data_table>
                <users_data_table></users_data_table>
                 -->
                <prefix>$prefix$</prefix>
                <persons_data_table>synchro_data_$prefix$ldap_persons</persons_data_table>
            <users_target_class>UserLDAP</users_target_class>
                <users_data_table>synchro_data_$prefix$ldap_users</users_data_table>
            <full_load_interval>604800</full_load_interval><!-- 7 days (in seconds): 7*24*60*60 -->
            <synchro_status>production</synchro_status>
            <profile_list_update_policy>write_if_empty</profile_list_update_policy>
        </json_placeholders>
</parameters>
  • 测试iTop REST API连接
php toolkit/testconnection.php

成功后会提示如下界面,如果未出现,请检查以上配置文件
在这里插入图片描述

  • 测试LDAP 同步用户
 php collectors/bin/ldap-test.php

能返回如下信息则配置成功
在这里插入图片描述

测试正常,运行同步命令

php exec.php
  • 配置定时同步任务
    以上完成同步后,需要使用crontab配置定时任务
    编写同步脚本
vim /opt/itop/cron/ldap-data-collector-cron.sh
#!/bin/bash
#用于ldap数据收集执行脚本
echo "开始进行LDAP数据同步"
php /opt/iTop/ldap-data-collector/exec.php  --config_file='/opt/iTop/ldap-data-collector/conf/params.local.xml' >> /opt/itop/cron/params.local.xml.log 2>&1
echo "LDAP同步完成"

创建定时任务

crontab -e
#每天12点30 , 23点30进行LDAP同步
30 12,23 * * * /bin/bash /opt/iTop/cron/ldap-data-collector-cron.sh
  • 开启ldap登录
    修改itop配置文件

‘authent-ldap’ => array (
‘host’ => ‘10.2.44.3’,
‘port’ => 389,
‘default_user’ => ‘admin@testad.local’,
‘default_pwd’ => ‘1234@abcd’,
‘base_dn’ => ‘OU=test_users,DC=TESTAD,DC=LOCAL’,
‘user_query’ => ‘(SamAccountName=%1$s)’,
‘options’ => array (
17 => 3,
8 => 0,
),
‘start_tls’ => false,
‘debug’ => false,
‘servers’ => array (
),
),

  • 2
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值