最近由于平台清查软件资产,所以需要搭建一套资产(软、硬)管理系统,但是根据2年前的部署经验发现,开源的OCS版本升级后依赖库发生了一些变化,这也导致我用以前的记忆重新部署失败,折腾了2天终于在今天大功告成了。

劳动成果还是用文字的形式记录保留比较好!非常鄙视网上那些作者写的文章到处埋坑,通常你只看一个作者的教程根本就不可能部署成功,NOW!你只要看这一篇就够了!保证成品!

>>>>OCSNG官网:https://www.ocsinventory-ng.org/en/

主要功能盘点:

  • 每日自动盘点安装有agent的IT资产,列出资产总数,今日上线数,今日资产信息更新数。

  • 资产台帐,列出软硬件详细信息。

  • TAG分类,安装agent时可根据资产属性自定义TAG,在台帐页面中一目了然。

  • 硬件报表,使管理员简单明了得了解PC资产的性能,指定报废更新计划。

  • OS报表,使管理员简单明了得了解公司内的OS版本,排除低版本OS风险。

  • 软件报表,在某些公司内有大用,可监控各员工是否有私自安装IT制度禁用的软件。

以上是我使用到现在用到的功能,还有些我没用过的功能有待各位自己发觉。下面给大家介绍下具体安装方法。

OCSNG有windows端的服务端,而且是一键傻瓜式安装,但我就是喜欢挑战,所以心一横就在centos上装了个,应该也会比windows端稳定很多。(不用怀疑,我真是微软粉)

实验环境:

    Centos 7.10| Mysql 5.7 | PHP 7.3 | OCSNG 2.6

 


关闭防火墙

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

 

  • 关闭防火墙的开机自启 

[root@localhost ~]# systemctl disable firewalld.service
  Removed symlink /etc/systemd/system/dbus-org.fedoraproject.FirewallD1.service.
  Removed symlink /etc/systemd/system/basic.target.wants/firewalld.service.

 

  • 替换防火墙参数

[root@localhost ~]# sed -i 's/SELINUX=enforcing/SELINUX=disabled/' /etc/selinux/config

 

  • 查看防火墙状态 

[root@localhost ~]# grep SELINUX=disabled /etc/selinux/config
  SELINUX=disabled

 

  • 关闭当前防火墙

[root@localhost ~]# setenforce 0

 

  • 系统更新

[root@localhost ~]# yum update

 

  • 安装epel包 

[root@localhost ~]# rpm -ivh https://dl.fedoraproject.org/pub/epel/epel-release-latest-7.noarch.rpm

 

  • 安装webtatic包 

[root@localhost ~]# rpm -ivh https://mirror.webtatic.com/yum/el7/webtatic-release.rpm

 

  • 安装以下两个包 

[root@localhost ~]# yum install mod_perl php-pclzip

 

  • 安装MySQL数据库YUM源 

[root@localhost ~]# rpm -ivhl https://dev.mysql.com/get/mysql80-community-release-el7-3.noarch.rpm

 

  • 配置数据库YUM源 

[root@localhost ~]# vi /etc/yum.repos.d/mysql-community.repo
# Enable to use MySQL 5.7
[mysql57-community]
name=MySQL 5.7 Community Server
baseurl=http://repo.mysql.com/yum/mysql-5.7-community/el/7/$basearch/
enabled=1
gpgcheck=1
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-mysql
[mysql80-community]
name=MySQL 8.0 Community Server
baseurl=http://repo.mysql.com/yum/mysql-8.0-community/el/7/$basearch/
enabled=0
gpgcheck=1
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-mysql

 

  • 安装MySQL数据库Client  

[root@localhost ~]# yum -y install mysql

 

  • 创建远程数据库文件  

[root@localhost ~]#  mysql -u root -p
mysql> CREATE DATABASE ocs;
Query OK, 1 row affected (0.00 sec)
mysql> GRANT ALL PRIVILEGES ON ocs.* to ocs@10.1.1.10 IDENTIFIED BY 'ocs&123';
Query OK, 0 rows affected (0.00 sec)
mysql> FLUSH PRIVILEGES;
Query OK, 0 rows affected (0.00 sec)

 

  • 安装remi包 

[root@localhost ~]# rpm -ivh http://rpms.famillecollet.com/enterprise/remi-release-7.rpm

 

  • 更新PHP 

[root@localhost ~]# yum repolist all
[root@localhost ~]# yum search yum-config-manager
[root@localhost ~]# yum -y install yum-utils
[root@localhost ~]# yum-config-manager --enable remi
[root@localhost ~]# yum-config-manager --enable remi-php73
[root@localhost ~]# yum update php*

 

  • 继续安装各种包 

[root@localhost ~]# yum -y install php php-mbstring php-gd php-xml php-pecl-memcached php-mysql php-soap
[root@localhost ~]# yum -y install perl-XML-Simple perl-Compress-Zlib perl-DBI perl-DBD-MySQL perl-Net-IP perl-SOAP-Lite mod_perl perl-Digest-SHA1 perl-Test-Simple perl-Archive-Zip perl-Mojolicious perl-Plack perl-XML-Entities perl-Switch

 

  • 设置httpd开机自启 

[root@localhost ~]# systemctl enable httpd

 

  • 启动httpd 

[root@localhost ~]# systemctl start httpd

 

  • 安装perl相关包 

[root@localhost ~]# yum install mod_perl perl-CPAN perl-SOAP-Lite.noarch perl-ExtUtils-Embed
[root@localhost ~]# yum install perl-XML-SAX perl-Apache-DBI perl-Apache2-SOAP
[root@localhost ~]# yum install httpd-devel
[root@localhost ~]# cpan
[local::lib] sudo
              cpan[1]> install YAML
              cpan[2]> install ModPerl::MM
              cpan[3]> install Apache2::SOAP
              cpan[4]> install Apache::DBI
              cpan[5]> exit

 

  • 下载OCS软件包 

[root@localhost ~]# cd /tmp
[root@localhost tmp]# wget https://github.com/OCSInventory-NG/OCSInventory-ocsreports/releases/download/2.6/OCSNG_UNIX_SERVER_2.6.tar.gz 
[root@localhost tmp]# tar -zxvf /tmp/OCSNG_UNIX_SERVER_2.6.tar.gz

 

  • 安装OCSInventory 

[root@localhost tmp]# cd OCSNG_UNIX_SERVER_2.6
[root@localhost OCSNG_UNIX_SERVER_2.6]# ./setup.sh

 

  • 一路回车即可,只在以下一处需手动指定路径 

Where to copy Administration Server static files for PHP Web Console
[/usr/share/ocsinventory-reports] ? /var/www/html/

 

  • 重启Apache 

[root@localhost tmp]# systemctl restart httpd

 

  •  修改z-ocsinventory-server.conf

 [root@localhost OCSNG_UNIX_SERVER_2.6]# vi /etc/httpd/conf.d/z-ocsinventory-server.conf
  # Master Database settings
  # Replace 192.169^H by hostname or ip of MySQL server for WRITE
  PerlSetEnv OCS_DB_HOST 192.168.0.44  #Mysql数据库地址
  # Replace 3306 by port where running MySQL server, generally 3306
  PerlSetEnv OCS_DB_PORT 3306
  # Name of database
  PerlSetEnv OCS_DB_NAME ocs     #数据库名字
  PerlSetEnv OCS_DB_LOCAL ocs    
  # User allowed to connect to database
  PerlSetEnv OCS_DB_USER ocs    #数据库用户名
  # Password for user
  PerlSetVar OCS_DB_PWD ocs&123 #数据库密码

 

  • 修改zz-ocsinventory-restapi.conf

[root@localhost OCSNG_UNIX_SERVER_2.6]# vi /etc/httpd/conf.d/zz-ocsinventory-restapi.conf
  PerlOptions +Parent
<Perl>
  $ENV{PLACK_ENV} = 'production';
  $ENV{MOJO_HOME} = '/usr/lib64/perl5/vendor_perl';
  $ENV{MOJO_MODE} = 'deployment';
  $ENV{OCS_DB_HOST} = '192.168.0.44';
  $ENV{OCS_DB_PORT} = '3306';
  $ENV{OCS_DB_LOCAL} = 'ocs';
  $ENV{OCS_DB_USER} = 'ocs';
  $ENV{OCS_DB_PWD} = 'ocs&123';
</Perl>
<Location /ocsapi>
  SetHandler perl-script
  PerlResponseHandler Plack::Handler::Apache2
  PerlSetVar psgi_app '/usr/lib64/perl5/vendor_perl/Api/Ocsinventory/Restapi/Loader.pm'
</Location>

至此服务器端安装基本完成,可在浏览器上打开该地址进行web配置:http://ocsserverIP/ocsreports/ (ocsserverIP为你的服务器IP地址)

进入页面需要配置四项:

Mysql login:ocs

Mysql password: (根据你自定义的密码填)

Name of database : ocs

Mysql Hostname:192.168.0.44

点击send后刷新网页即可登录(默认用户名密码都是admin),页面如下:

 

《完整部署 OCS-NG》_OCS《完整部署 OCS-NG》_OCSNG_02

 

中间的两项告警可无视。

 《完整部署 OCS-NG》_OCSNG_03

备注:

 

        1.Apache配置文件位置:/etc/httpd/conf.modules.d  /etc/httpd/conf

 

        2.测试PHP是否正常

 

[root@localhost ~]# vi /var/www/html/phpinfo.php
<?php
phpinfo();
?>
:wq! #保存退出

       2.MySql的安装与配置请参考本人以前的教程《Linux部署Nginx+Mysql+PHP+PHPMyAdmin4环境