开源ITIL管理软件iTop 2.5-2.6安装

环境说明 :

操作系统centos 7、itop版本 iTop-2.5.0-3935、数据库:mariadb

iTop 2.5只支持PHP5.6以上版本,本例安装的是php72w版本

1、下载链接:

  2.5.1版本:https://jaist.dl.sourceforge.net/project/itop/itop/2.5.1/iTop-2.5.1-4123.zip 这里找到一个汉化比较全的包:https://pan.baidu.com/s/1u-UEJC84Xm2svKdNcSf0iQ 安装完成后替换掉/env-production/dictionaries/zh-cn.dict.php

  2.6.0版本:https://nchc.dl.sourceforge.net/project/itop/itop/2.6.0/iTop-2.6.0-4294.zip 中文比较全,不需要换字典

  2.6.1版本:https://jaist.dl.sourceforge.net/project/itop/itop/2.6.1/iTop-2.6.1-4463.zip 中文比较全,不需要换字典

  2.7.0版本:https://nchc.dl.sourceforge.net/project/itop/itop/2.7.0-1/iTop-2.7.0-1-5541.zip 中文比较全,不需要换字典

 

 2、安装lamp及相关软件

yum -y install epel-release

rpm -Uvh https://mirror.webtatic.com/yum/el7/webtatic-release.rpm

curl -sS https://downloads.mariadb.com/MariaDB/mariadb_repo_setup | sudo bash

 yum -y install httpd graphviz unzip mod_ssl mariadb-server php72w php72w-gd php72w-mysql php72w-imap php72w-soap php72w-ldap php72w-mbstring php72w-pecl-zendopcache php72w-xml php72w-cli

3、开启防火墙、关闭SELinux

firewall-cmd --permanent --add-service=http

firewall-cmd --permanent --add-service=https

firewall-cmd --reload

vi /etc/selinux/config

#修改为SELINUX=disabled,重启后生效

SELINUX=disabled

4、创建PHP会话目录,配置目录权限。

mkdir -p /var/lib/php/session
chown apache:apache -R /var/lib/php/session/

5、启动httpd、mariadb服务

systemctl start httpd

systemctl start mariadb

systemctl enable httpd

systemctl enable mariadb

6、创建数据库、创建库用户、用户授权、修改数据配置(密码请根据需求自行修改)

create database itop DEFAULT CHARACTER SET utf8;

create user itop@localhost identified by 'itop';

grant all privileges on *.* to itop@'localhost' identified by 'itop';

flush privileges;

exit

vi /etc/my.conf

max_allowed_packet=1048576

7、上传iTop网站程序 /var/www/iTop目录(可以通过xftp或者直接在此目录wget)

mkdir -p /var/www/html/{conf,data,log,env-production}

chown -R apache:apache /var/www/html

cd /var/www/html

unzip iTop-2.5.1-4123.zip

mv /var/www/html/web/* /var/www/html

8、WEB安装过程:

浏览器打开 http://IP/setup/

环境检查,警告可以忽略,但如何处理这个警告还有等研究,因为安装的时候没有找到php72w-mcrypt模块

点击安装模式,全新安装还是升级安装

接受Licenses

         

配置数据库

设置管理员密码

设置URL和安装模式

安装就绪,点击install!

安装完成

自动登录到欢迎界面

9、配置ldap集成:

vi /etc/hosts

#添加ladp Server的解析

172.17.10.143 2012r2core.mct.com

#修改配置文件

vi /var/www/html/conf/production/config-itop.php

#user和pwd是经先在AD里面建立的,用于服务器之间的验证

 

'authent-ldap' => array (
'host' => '服务器IP',
'port' => 389,
'default_user' => 'CN=Administrator,CN=Users,DC=rongtai,DC=local',
'default_pwd' => 'user的密码',
'base_dn' => '查询的根组织',
'user_query' => '(&(samaccountname=%1$s))', // 与AD域集成,这里改成samaccountname=%1$s,也就是用户名与samaccountname对应
'options' => array (
17 => 3,
8 => 0,
),
'start_tls' => false,
'debug' => false,
),

 

配置完成的事例

   

#导入AD用户

 参考链接:https://blog.51cto.com/purplegrape/1893014

#由于microsoft Active director默认最大同步用户为1000个,如果你的用户总数超过了这个限制,请在域控制器上面做哪下配置:

在DC上运行ntdsutil
ldap policies
connections
connect to domain xxx.com.hk
quit
show values  #确认maxpagesize默认值为1000
set maxpagesize to 10000
show values  #确认当前显示:1000(10000)
commit changes
show values  #确认当前值为10000
两次quit

10、启用HTTPS

#建立证书存放目录,并上传经申请的公网证书

mkdir -p /etc/httpd/cert

chown apache:apache -R /etc/httpd/cert

chmod 700 /etc/httpd/cert

chmod 600 /etc/httpd/cert/*

#修改ssl.conf配置文件,修改第60、100、107行,修改为域名和正确的证书文件路径即可

vi /etc/httpd/conf.d/ssl.conf

vi /var/www/html/conf/production/config-itop.php

# 如果安装的时候写的IP地址,后面要变更为域名,请在此修改

vi /etc/httpd/conf/httpd.conf

#配置http强制跳转至https,完成以以上步骤如果不强制跳转,则HTTP和HTTPS都可以访问

RewriteEngine on

RewriteCond %{HTTPS} !=on

RewriteRule ^(.*) https://%{SERVER_NAME}$1 [L,R]

配置完成需要重启httpd服务:

systemctl restart httpd

11、去掉左下角的combodo广告logo

vi /var/www/html/application/itopwebpage.class.inc.php

#注释掉1083和1084行,即可

vi /var/www/html/core/config.class.inc.php

# 修改第113和349行,添加自己想要的链接,或者直接注释掉

vi /var/www/html/conf/production/config-itop.php

#修改第172和173行,添加在线帮助的链接,默认的https://www.combodo/itop网页无法打开

12、性能优化:

 12.1、修改php文件大小限制
       vi /etc/php.ini
  ;找到:max_execution_time = 30 ,这个是每个脚本运行的最长时间,单位秒,修改为:
  max_execution_time = 1200
  ;找到:max_input_time = 60,这是每个脚本可以消耗的时间,单位也是秒,修改为:
  max_input_time = 2400
  ;找到:memory_limit = 128M,这个是脚本运行最大消耗的内存,根据你的需求更改数值,这里修改为:
  memory_limit = 512M
  ;找到:post_max_size = 8M,表单提交最大数据为 8M,此项不是限制上传单个文件的大小,而是针对整个表单的提交数据进行限制的。限制范 围包括表单 提交的所有内容.例如:发表贴子时,贴子标题,内容,附件等…这里修改为:
  post_max_size = 100M
  ;找到:upload_max_filesize = 2M,上载文件的最大许可大小 ,请根据业务需要自行修改,我这里修改为:
  upload_max_filesize = 25M
 12.2.修改apache上传文件大小限制
     vi /etc/httpd/conf.d/php.conf
  # LimitRequestBody 524288将524288(=512x1024)改大,比如30M(=30x1024x1024)(如果没有,可以添加到配置文件末尾)
  LimitRequestBody 31457280

13、常用维护处理:

 13.1 清空缓存 rm -rf /var/www/html/data/cache-production/*

 13.2 汉化包文件路径:/var/www/html/env-production/dictionaries/zh-cn.dict.php

 13.3 角色用户描述翻译 :修改数据库的priv_urp_profiles表:

14、与zabbix集成,实现接入zabbix的报警邮件,自动创建服务单:

 14.1 插件安装:

  方法1:离线安装:

   cd /var/www/html/extensions

   wget https://store.itophub.io/serve-uploaded-file/120 /v

   http://ip/setup #根据向导一路下一步,到插件选择界面,选择插件再一路点一步即可。

  方法2:在线安装(需要有itop hub账号):

    https://store.itophub.io/en_US/

 14.2. 插件配置:

这是设置好的,按照这个设置即可,

需要特别说明的地方:

(1)这里的邮件password是163邮箱申请的POP/IMAP的授权码,不能填你登录网页邮箱的密码。

(2)这里的邮箱地址要和admin的用户的邮箱地址一致。

(3)用户发邮件过来的邮箱地址,必须要是在ITOP用户配置里面存在的邮箱,我这里设置的不存在就丢掉,你也可以设置成创建账号,但不建议这么做。

在此界面收到邮件说明插件链接配置成功

如果邮件收不下来,登录网页邮箱查看你的邮箱里面是否收到了下面这封邮件:

解决办法是:http://config.mail.163.com/settings/imap/index.jsp?uid=xxxxxx@163.com 把UID=后面的邮件地址修改为你自己的邮箱地址,根据页面提示解除禁止即可。

14.3 脚本及定时任务的创建:

 14.3.1 创建运行脚本:

 vi /var/www/html/webservices/exce_mail_import.sh

#下面的用户名和密码是在itop系统里面具有管理员权限的账号和密码

 php /var/www/html/webservices/cron.php --auth_user=admin --auth_pwd=admin --verbose=1

 14.3.2 为脚本添加执行权限(建议此脚本不要用root运行,用apache运行即可。):

 chmod +x /var/www/html/webservices/exce_mail_import.sh

 chown -R apache:apache /var/www/html/webservices/exce_mail_import.sh

 14.3.3 创建计划任务,我这里是每5分钟执行一次收邮件的运作,如果你对crontab不熟,请参考:https://www.cnblogs.com/aminxu/p/5993769.html

  crontab -e

  */5 * * * * /var/www/html/webservices/exce_mail_import.sh

 14.3.4配置成功后,你将会看到debug信息和已经创建的工单情况:

15、配置邮件通知:

 15.1 修改配置文件

    vi /var/www/html/conf/production/config-itop.php 添加如下内容:

'email_default_sender_address' => 'XXXXX@163.com',

'email_transport' => 'SMTP',

'email_transport_smtp.host' => 'smtp.163.com',

'email_transport_smtp.password' => 'XXXXX',

'email_transport_smtp.username' => 'xxxx@163.com',

'forgot_password_from' => xxxx@163.com',

 15.2 测试邮件配置是否正常:http://IP/setup/email.test.php

 15.3 新建操作(这里可以理解为动作,即做什么事情)

     

这里的发件人地址必须要是 /conf/production/config-itop.php配置文件里面的邮件通知的邮件地址

下面几个参数描述

邮件通知主题:$this->ref$ 这里是在UserRequest表里面的工单号过来,

工单发起人: $this->html(caller_id_friendlyname)$

工单标题: $this->html(title)$

服务请求描述: $this->html(description)$

15.4 新建触发器(这里可以理解为满足什么条件触发动作):

     

工单状态可以在数据模型里去查询:

发送自动审批邮件的URL字段名称:$approval_link$

发达工单号的URL链接:$this->hyperlink()$

16、修改解决方案代码:

16.1 修改/var/www/html/datamodels/2.x/itop-request-mgmtg下的两个文件:

16.2 第一个文件插入自己想的解决方案代码,

16.3 第二个文件是汉化包,插入第一个文件对应的中文代码(请注意对应关系),如果你的环境还有用到其它语言,也要一并修改。

16.4 toolkit的安装 :

mkdir /var/www/html/env-toolkit

mkdir /var/www/html/toolkit

压缩文件解压后,直接上传至/var/www/html/toolkit

安装完成访问方式:http://172.17.10.233/toolkit/index.php

16.5 修改完成后,要使用 toolkit更新代码、否则不会生效。

 

17、时间控件不能选择时间:

   

需要修改网站根目录下application目录下的itopwebpage.class.incportalwebpage.class.inc两个文件

搜索

if ($sJSLangShort != '"en"')

改为

if ($sJSLangShort == 'NULL')

修改完成后,清空一下缓存。

18、自动关闭工单:

18.1安装Autoclose Ticket 插件:

18.2 查看配置文件是否有以下配置(默认是7天):前提是工单已标记为已解决

18.3 创建任务和支持脚本,请参考14.3

18.4 检查此服务是否正常,请运行

php /var/www/html/webservices/cron.php --auth_user=admin --auth_pwd=admin --verbose=1

posted @ 2018-08-14 21:09  蓉城浪子  阅读(15856)  评论(0编辑  收藏  举报