网站搜索

如何在 CentOS 和 Ubuntu 上安装 Snipe-IT(IT 资产管理)


Snipe-IT 是一个免费、开源、跨平台、功能丰富的 IT 资产管理系统,使用名为 Laravel 的 PHP 框架构建。它是一款基于 Web 的软件,使大中型企业的 IT 人员、管理员能够在一个地方跟踪物理资产、软件许可证、附件和消耗品。

查看最新版本的 Snipe-IT 资产管理工具:https://snipeitapp.com/demo

Snipe-IT 特点:

  1. 它是跨平台的——适用于 Linux、Windows 和 Mac OS X。
  2. 它适合移动设备,可轻松更新资产。
  3. 轻松与 Active Directory 和 LDAP 集成。
  4. 用于签入/签出的 Slack 通知集成。
  5. 支持一键(或cron)备份和自动备份。
  6. 支持使用 Google 身份验证器的可选双因素身份验证。
  7. 支持生成自定义报告。
  8. 支持自定义状态标签。
  9. 支持不同级别访问的批量用户操作和用户角色管理。
  10. 支持多种语言,方便本地化等等。

在本文中,我将解释如何使用 LAMP(Linux、Apache、MySQL 和 PHP)堆栈在 上安装名为 Snipe-IT 的 IT 资产管理系统基于 CentOSDebian 的系统。

第 1 步:安装 LAMP 堆栈

1. 首先,更新系统(意味着更新需要升级的软件包列表并添加已进入系统上启用的存储库的新软件包)。

sudo apt update        [On Debian/Ubuntu]
sudo yum update        [On CentOS/RHEL] 

2. 系统更新后,现在您可以安装 LAMP(Linux、Apache、MySQL 和 PHP)堆栈以及所有需要的 PHP 模块,如图所示。

在 Debian/Ubuntu 上安装 LAMP

sudo apt-get install software-properties-common
sudo add-apt-repository ppa:ondrej/php
sudo apt-get update
sudo apt install apache2 apache2-utils libapache2-mod-php mariadb-server mariadb-client php7.3 php7.3-pdo php7.3-mbstring php7.3-tokenizer php7.3-curl php7.3-mysql php7.3-ldap php7.3-zip php7.3-fileinfo php7.3-gd php7.3-dom php7.3-mcrypt php7.3-bcmath 

在 CentOS/RHEL 上安装 LAMP

3. Snipe-IT 需要 PHP 大于 7.x,而 PHP 5.x 已达到生命周期,因此要使用 PHP 7.x,您需要启用 Epel 和 Remi 存储库,如图所示。

sudo yum install epel-release
sudo rpm -Uvh http://rpms.remirepo.net/enterprise/remi-release-7.rpm
sudo yum -y install yum-utils
sudo yum-config-manager --enable remi-php71   [Install PHP 7.1]
sudo yum-config-manager --enable remi-php72   [Install PHP 7.2]
sudo yum-config-manager --enable remi-php73   [Install PHP 7.3]

4. 接下来,在 CentOS 7 上安装 PHP 7.x 以及 Snipe-IT 所需的模块。

sudo yum install httpd mariadb mariadb-server php php-openssl php-pdo php-mbstring php-tokenizer php-curl php-mysql php-ldap php-zip php-fileinfo php-gd php-dom php-mcrypt php-bcmath

5. LAMP 堆栈安装完成后,暂时启动 Web 服务器,并使用以下命令使其在下次系统启动时启动。

sudo systemctl start enable status apache2       [On Debian/Ubuntu]
sudo systemctl start enable status httpd         [On CentOS/RHEL]

6. 接下来,从 Web 浏览器验证 Apache 和 PHP 安装及其所有当前配置,让我们在 Apache DocumentRoot (/var /www/html)使用以下命令。

sudo echo "<?php  phpinfo(); ?>" | sudo tee -a /var/www/html/info.php

现在打开 Web 浏览器并导航到以下 URL 以验证 Apache 和 PHP 配置。

http://SERVER_IP/
http://SERVER_IP/info.php 

7. 接下来,您需要使用以下命令来保护和强化 MySQL 安装。

sudo mysql_secure_installation     

系统会要求您为 MariaDB 设置强 root 密码,并对所有其他问题回答 Y(不言自明)。

8.最后启动MySQL服务器并使其在下次系统启动时启动。

sudo systemctl start mariadb            
OR
sudo systemctl start mysql

步骤2:在MySQL上创建Snipe-IT数据库

9. 现在登录 MariaDB shell 并为数据库用户 Snipe-IT 创建数据库,并为该用户设置合适的密码,如下所示。

mysql -u root -p

提供 MariaDB root 用户的密码。

MariaDB [(none)]> CREATE DATABASE snipeit_db;
MariaDB [(none)]> CREATE USER 'tecmint'@'localhost' IDENTIFIED BY 't&cmint@190root';
MariaDB [(none)]> GRANT ALL PRIVILEGES ON snipeit_db.* TO 'tecmint'@'localhost';
MariaDB [(none)]> FLUSH PRIVILEGES;
MariaDB [(none)]> exit

第 3 步:安装 Composer – PHP 管理器

10. 现在您需要使用以下命令安装 Composer - PHP 的依赖项管理器。

sudo curl -sS https://getcomposer.org/installer | php
sudo mv composer.phar /usr/local/bin/composer

步骤 4:安装 Snipe-IT 资产管理

11. 首先,安装 Git 以在 Apache Web 根目录下获取并克隆最新版本的 Snipe-IT

sudo apt -y install git      [On Debian/Ubuntu]
sudo yum -y install git      [On CentOS/RHEL]

cd  /var/www/
sudo git clone https://github.com/snipe/snipe-it.git

12. 现在进入 snipe-it 目录并将 .env.example 文件重命名为 .env

cd snipe-it
ls
sudo mv .env.example .env

步骤 5:配置 Snipe-IT 资产管理

13.接下来,配置 snipe-it 环境,在这里您将提供数据库连接设置等。

首先,打开 .env 文件。

sudo vi .env

然后根据给出的说明查找并更改以下变量。

APP_TIMEZONE=Africa/Kampala                                   #Change it according to your country
APP_URL=http://10.42.0.1/setup                                #set your domain name or IP address
APP_KEY=base64:BrS7khCxSY7282C1uvoqiotUq1e8+TEt/IQqlh9V+6M=   #set your app key
DB_HOST=localhost                                             #set it to localhost
DB_DATABASE=snipeit_db                                        #set the database name
DB_USERNAME=tecmint                                           #set the database username
DB_PASSWORD=password                                          #set the database user password

保存并关闭文件。

14.现在您需要对某些目录设置适当的权限,如下所示。

sudo chmod -R 755 storage 
sudo chmod -R 755 public/uploads
sudo chown -R www-data:www-data storage public/uploads   [On Debian/Ubuntu]
sudo chown -R apache:apache storage public/uploads         [On CentOS/RHEL]

15. 接下来,使用 Composer 依赖项管理器安装 PHP 所需的所有依赖项,如下所示。

sudo composer install --no-dev --prefer-source

16. 现在您可以使用以下命令生成“APP_KEY”值(这将在 .env 文件中自动设置)。

sudo php artisan key:generate

17. 现在,您需要在网络服务器上为 Snipe-IT 创建一个虚拟主机文件。

sudo vi /etc/apache2/sites-available/snipeit.example.com.conf     [On Debian/Ubuntu]
sudo vi /etc/httpd/conf.d/snipeit.example.com.conf                [On CentOS/RHEL]

然后在您的 Apache 配置文件中添加/修改以下行(此处使用您的服务器 IP 地址)。

<VirtualHost 10.42.0.1:80>
    ServerName snipeit.tecmint.lan
    DocumentRoot /var/www/snipe-it/public
    <Directory /var/www/snipe-it/public>
        Options Indexes FollowSymLinks MultiViews
        AllowOverride All
        Order allow,deny
        allow from all
    </Directory>
</VirtualHost>

保存并关闭文件。

18. 在 Debian/Ubuntu 上,您需要使用以下命令启用虚拟主机、mod_rewrite 和 mcrypt。

sudo a2ensite snipeit.conf
sudo a2enmod rewrite
sudo php5enmod mcrypt

19.最后,重新启动 Apache Web 服务器以使新更改生效。

sudo systemctl restart apache2       [On Debian/Ubuntu]
sudo systemctl restart httpd         [On CentOS/RHEL]

第6步:Snipe-IT Web安装

20. 现在打开网络浏览器并输入 URL:http://SERVER_IP 以查看 Snipe-IT 网络安装界面。

首先,您将看到下面的 Pre-Flight Check 页面,单击下一步:创建数据库表

21.您现在将看到创建的所有表,单击下一步:创建用户

22. 在此提供所有管理员用户信息,然后单击下一步:保存用户

23.最后,使用如下所示的 URL http://SERVER_IP/login 打开登录页面并登录以查看 Snipe-IT 仪表板。

Snipe-IT 主页:https://snipeitapp.com/

在本文中,我们讨论了如何在基于 CentOS 和 Debian 的系统上使用 LAMP (Linux Apache MySQL PHP) 堆栈设置 Snipe-IT。如果有任何问题,请使用下面的评论表与我们分享。