如何在Debian 10/Debian 9上安装OCS库存服务器
如何在Debian 10/Debian 9 Linux服务器上安装OCS库存服务器?
OCS库存是一个用于以更简单和有组织的方式管理IT资产的开源软件。
它具有一个客户端 - 服务器模型,其中OCS列表NG要求其代理知道每台计算机或者服务器的软件和硬件组成。
它还能够发现网络的元素,其无法使用IP发现接收代理。
然后使用SNMP来完成从IP发现扫描检索的数据。
这对于像打印机,扫描仪,路由器等设备很有用。
以下是在Debian Linux上安装OCS Inventory Server的软件要求。
MySQL Server
Perl
Apache Web server
Apache Mod_perl
PHP with ZIP support enabled.
Apache Mod_php
Perl module XML::Simple
Perl module Compress::Zlib
Perl module DBI
Perl module DBD::Mysql
Perl module Apache::DBI
Perl module Net::IP
Perl module Archive::Zip
Perl module Apache2:SOAP
Perl module SOAP::Lite
Perl module XML::Entities
第1步:安装MySQL Server,Make和GCC
我更喜欢安装MariaDB而不是安装MySQL Server。
在Debian上安装MariaDB,请参阅下面的教程:
在Debian上安装MariaDB服务器
要安装make和gcc,请运行:
sudo apt update sudo apt -y install git make cmake gcc make build-essential
第2步:安装Apache Web服务器
要在Debian上安装Apache和所需的模块,请运行以下命令:
sudo apt -y install libapache2-mod-perl2 libapache-dbi-perl libapache-db-perl libapache2-mod-php
第3步:安装PHP和PHP-ZIP模块
我们还需要安装PHP和PHP-ZIP模块。
sudo apt -y install php php-zip php-pclzip php-gd php-mysql php-soap php-curl php-json php-xml php-mbstring
第4步:安装Perl和所有必需的模块
Perl和所有模块都可以通过运行以下命令来安装:
sudo apt -y install perl libxml-simple-perl libcompress-zlib-perl libdbi-perl libdbd-mysql-perl libnet-ip-perl libsoap-lite-perl libio-compress-perl libapache-dbi-perl libapache2-mod-perl2 libapache2-mod-perl2-dev libdbd-mysql-perl libnet-ip-perl libxml-simple-perl libarchive-zip-perl sudo cpan install XML::Entities Apache2::SOAP Net::IP Apache::DBI Mojolicious Switch Plack::Handler Archive::Zip
第5步:创建OCS库存数据库
以root用户身份登录MariaDB数据库并为OCS创建数据库:
$mysql -u root -p CREATE DATABASE ocs; GRANT ALL PRIVILEGES ON ocs.* TO Hyman@theitroad IDENTIFIED BY "StrongDBPassword"; FLUSH PRIVILEGES; QUIT;
第6步:安装OCS库存服务器
从GitHub克隆项目:
$git clone https://github.com/OCSInventory-NG/OCSInventory-Server.git Cloning into 'OCSInventory-Server'… remote: Enumerating objects: 7473, done. remote: Total 7473 (delta 0), reused 0 (delta 0), pack-reused 7473 Receiving objects: 100% (7473/7473), 52.59 MiB | 1.23 MiB/s, done. Resolving deltas: 100% (5309/5309), done.
更改为克隆目录。
$cd OCSInventory-Server/ $git clone https://github.com/OCSInventory-NG/OCSInventory-ocsreports.git ocsreports Cloning into 'ocsreports'… remote: Enumerating objects: 29, done. remote: Counting objects: 100% (29/29), done. remote: Compressing objects: 100% (20/20), done. remote: Total 28646 (delta 9), reused 22 (delta 9), pack-reused 28617 Receiving objects: 100% (28646/28646), 81.96 MiB | 1.06 MiB/s, done. Resolving deltas: 100% (18118/18118), done.
编辑setup.sh脚本更改MySQL凭据:
DB_SERVER_HOST="localhost" DB_SERVER_PORT="3306" DB_SERVER_USER="ocs" DB_SERVER_PWD="StrongDBPassword"
如果我们使用远程数据库服务器,请将db_server_host更改为它。
随意修改我们喜欢的其他更改,并启动安装过程我运行脚本。
$sudo ./setup.sh +----------------------------------------------------------+ | | | Welcome to OCS Inventory NG Management server setup ! | | | +----------------------------------------------------------+ Trying to determine which OS or Linux distribution you use +----------------------------------------------------------+ | Checking for Apache web server binaries ! | +----------------------------------------------------------+ CAUTION: If upgrading Communication server from OCS Inventory NG 1.0 RC2 and previous, please remove any Apache configuration for Communication Server! Do you wish to continue ([y]/n)? y .... Which host is running database server [localhost] ? <Enter> On which port is running database server [3306] ?
同意所有选项以完成设置。
确保所有Perl检查都成功。
..................... +----------------------------------------------------------+ | Checking for required Perl Modules… | +----------------------------------------------------------+ Checking for DBI PERL module… Found that PERL module DBI is available. Checking for Apache::DBI PERL module… Found that PERL module Apache::DBI is available. Checking for DBD::mysql PERL module… Found that PERL module DBD::mysql is available. Checking for Compress::Zlib PERL module… Found that PERL module Compress::Zlib is available. Checking for XML::Simple PERL module… Found that PERL module XML::Simple is available. Checking for Net::IP PERL module… Found that PERL module Net::IP is available. Checking for SOAP::Lite Perl module… Found that PERL module SOAP::Lite is available. Checking for Archive::Zip Perl module… Found that PERL module Archive::Zip is available. +----------------------------------------------------------+ | Checking for optional Perl Modules… | +----------------------------------------------------------+ Checking for Apache2::SOAP PERL module… Found that PERL module SOAP::Apache2 is available. Checking for XML::Entities PERL module… Found that PERL module XML::Entities is available. Do you wish to setup Rest API server on this computer ([y]/n)? y +----------------------------------------------------------+ | Checking for REST API Dependencies … | +----------------------------------------------------------+ Found that PERL module Mojolicious::Lite is available. Found that PERL module Switch is available. Found that PERL module Plack::Handler is available. +----------------------------------------------------------+ | Configuring REST API Server files … | +----------------------------------------------------------+ If the installation was successful, you should get a message: +----------------------------------------------------------+ | Installing files for Administration server… | +----------------------------------------------------------+ Creating PHP directory /usr/share/ocsinventory-reports/ocsreports. Copying PHP files to /usr/share/ocsinventory-reports/ocsreports. Fixing permissions on directory /usr/share/ocsinventory-reports/ocsreports. Creating database configuration file /usr/share/ocsinventory-reports/ocsreports/dbconfig.inc.php. Creating IPDiscover directory /var/lib/ocsinventory-reports/ipd. Fixing permissions on directory /var/lib/ocsinventory-reports/ipd. Creating packages directory /var/lib/ocsinventory-reports/download. Fixing permissions on directory /var/lib/ocsinventory-reports/download. Creating snmp mibs directory /var/lib/ocsinventory-reports/snmp. Fixing permissions on directory /var/lib/ocsinventory-reports/snmp. Creating Administration server log files directory /var/lib/ocsinventory-reports/logs. Fixing permissions on directory /var/lib/ocsinventory-reports/logs. Creating Administration server scripts log files directory /var/lib/ocsinventory-reports/scripts. Fixing permissions on directory /var/lib/ocsinventory-reports/scripts. Configuring IPDISCOVER-UTIL Perl script. Installing IPDISCOVER-UTIL Perl script. Fixing permissions on IPDISCOVER-UTIL Perl script. Writing Administration server configuration to file /etc/apache2/conf-available/ocsinventory-reports.conf +----------------------------------------------------------------------+ | OK, Administration server installation finished ;-) | | | | Please, review /etc/apache2/conf-available/ocsinventory-reports.conf | to ensure all is good and restart Apache daemon. | | | | Then, point your browser to http://server//ocsreports | to configure database server and create/update schema. | +----------------------------------------------------------------------+ Setup has created a log file /root/OCSInventory-Server/ocs_server_setup.log. Please, save this file. If you encounter error while running OCS Inventory NG Management server, we can ask you to show us its content ! DON'T FORGET TO RESTART APACHE DAEMON ! Enjoy OCS Inventory NG ;-)
第7步:配置OCS库存服务器
安装OCS时,它会为我们生成Apache配置文件。
我们需要通过创建别名来启用此项:
sudo ln -s /etc/apache2/conf-available/ocsinventory-reports.conf /etc/apache2/conf-enabled/ocsinventory-reports.conf sudo ln -s /etc/apache2/conf-available/z-ocsinventory-server.conf /etc/apache2/conf-enabled/z-ocsinventory-server.conf
如果我们需要REST API,还会添加:
sudo ln -s /etc/apache2/conf-available/zz-ocsinventory-restapi.conf /
重新启动Apache服务器
sudo chown -R www-data:www-data /var/lib/ocsinventory-reports sudo systemctl restart apache2
编辑/usr/share/ocsinventory-reports/ocsreports/dbconfig.inc.php并为为mysql创建的用户添加名称和密码。
如果我们已使用正确的凭据修改setup.sh,则会出现它们。
在浏览器中打开以下URL,检查信息,然后单击"发送:
提供前面创建的数据库凭据,然后单击"发送"。
单击"在此处输入ocs-ng gui"链接以获取仪表板。
确认"执行更新"消息。
出于安全原因,将以下内容移动到某些网络无法访问的位置
sudo mv /usr/share/ocsinventory-reports/ocsreports/install.php \ /usr/share/ocsinventory-reports/ocsreports/install.php.bak
要由客户端编辑/etc/apache2/conf.d/z-ocsinventory-server.conf可更新管理标签,并更改以下指令从0到1
PerlSetEnv OCS_OPT_ACCEPT_TAG_UPDATE_FROM_CLIENT 1
步骤8:访问Web界面
安装成功后,访问Web仪表板。
http://$server_ip_address/ocsreports
默认登录凭据是:
Username: admin Password: admin
通过导航到设置>我的帐户>密码来更改管理员密码。
提供新密码,然后单击"确定"按钮。
从其中我们可以探索OCS库存并开始将数据送到它。