本页内容

  • 准备工作
  • 开始之前
  • 安装 Apache 和 MariaDB 服务器
  • 配置 MariaDB 服务器
  • 在 Ubuntu 22.04 上安装 OTRS
  • 为 OTRS 配置 Apache
  • 访问 OTRS Web 界面
  • 总结

OTRS 是一款免费、开源且最受欢迎的服务管理或工单请求系统(Ticket Request System)应用之一,用于跟踪通用的 IT 相关问题。它使用 Perl 编写,支持包括 PostgreSQL、MySQL 在内的多种数据库。它为用户、客户、IT 人员、IT 服务以及任何外部组织提供了一个统一联络点。它提供了丰富的功能集,是帮助台、呼叫中心和 IT 服务管理的最佳选择。

本文将介绍如何在 Ubuntu 22.04 服务器上安装 OTRS。

准备工作

  • 一台运行 Ubuntu 22.04 的服务器。
  • 所有服务器均已配置 root 密码。

开始之前

在开始之前,建议将系统软件包更新到最新版本。您可以通过运行以下命令来完成:

apt-get update -y

接下来,您需要在服务器上安装若干 Perl 模块。您可以通过运行以下命令一次性安装它们:

apt install perl libapache2-mod-perl2 libdbd-mysql-perl libtimedate-perl libnet-dns-perl libnet-ldap-perl libio-socket-ssl-perl libpdf-api2-perl libdbd-mysql-perl libsoap-lite-perl libtext-csv-xs-perl libjson-xs-perl libapache-dbi-perl libxml-libxml-perl libxml-libxslt-perl libyaml-perl libarchive-zip-perl libcrypt-eksblowfish-perl libencode-hanextra-perl libmail-imapclient-perl libtemplate-perl libmoo-perl libauthen-ntlm-perl libjavascript-minifier-xs-perl libdbd-odbc-perl libcss-minifier-xs-perl libdbd-pg-perl libdatetime-perl -y

所有软件包安装完成后,您就可以进入下一步了。

安装 Apache 和 MariaDB 服务器

接下来,您必须在系统上安装 Apache 和 MariaDB 服务器。您可以通过运行以下命令来安装这两个软件包:

apt install apache2 mariadb-server mariadb-client -y

两个软件包安装完成后,启动 Apache 和 MariaDB 服务,并将其设置为开机自启:

systemctl start apache2 mariadb
systemctl enable apache2 mariadb

配置 MariaDB 服务器

默认情况下,MariaDB 是不安全的。因此,您需要先对其进行安全加固。您可以通过运行以下脚本来完成:

mysql_secure_installation

按如下所示回答所有问题:

    Enter current password for root (enter for none):
    Set root password? [Y/n]: N
    Remove anonymous users? [Y/n]: Y
    Disallow root login remotely? [Y/n]: Y
    Remove test database and access to it? [Y/n]:  Y
    Reload privilege tables now? [Y/n]:  Y

接下来,编辑 MariaDB 配置文件并调整一些设置:

nano /etc/mysql/mariadb.conf.d/50-server.cnf

在 [mysqld] 段落内添加以下行:

max_allowed_packet=256M
character-set-server=utf8
collation-server=utf8_general_ci
innodb_buffer_pool_size=4G
innodb_log_file_size=1G

保存并关闭文件,然后重启 MariaDB 服务使更改生效:

systemctl restart mariadb

在 Ubuntu 22.04 上安装 OTRS

将 OTRS 作为独立用户运行是个好主意。您可以使用以下命令为 OTRS 添加一个用户:

useradd -r -m -d /opt/otrs -c "OTRS User" -s /usr/sbin/nologin otrs

接下来,使用以下命令将 OTRS 用户添加到 Apache 用户组:

usermod -aG www-data otrs

接下来,从官方站点下载 OTRS:

wget https://otrscommunityedition.com/download/otrs-community-edition-6.0.35.tar.gz

下载完成后,将下载的文件解压到 OTRS 目录:

tar xvfz otrs-community-edition-6.0.35.tar.gz -C /opt/otrs --strip-components=1

接下来,更改 OTRS 目录的所有者:

chown -R otrs:otrs /opt/otrs

接下来,使用以下命令检查所有必需的 Perl 模块:

perl /opt/otrs/bin/otrs.CheckModules.pl

您应该会看到类似以下的输出:

 o Archive::Zip.....................ok (v1.68)
  o Crypt::Eksblowfish::Bcrypt.......ok (v0.009)
  o CSS::Minifier::XS................ok (v0.13)
  o Date::Format.....................ok (v2.24)
  o DateTime.........................ok (v1.55)
    o DateTime::TimeZone.............ok (v2.51)
  o DBI..............................ok (v1.643)
  o DBD::mysql.......................ok (v4.050)
  o DBD::ODBC........................ok (v1.61)
  o DBD::Oracle......................Not installed! (optional - Required to connect to a Oracle database.)
  o DBD::Pg..........................ok (v3.15.1)
  o Digest::SHA......................ok (v6.02)
  o Encode::HanExtra.................ok (v0.23)
  o IO::Socket::SSL..................ok (v2.074)
  o JSON::XS.........................ok (v4.03)
  o JavaScript::Minifier::XS.........ok (v0.15)
  o List::Util::XS...................ok (v1.55)
  o LWP::UserAgent...................ok (v6.64)
  o Mail::IMAPClient.................ok (v3.43)
    o IO::Socket::SSL................ok (v2.074)
    o Authen::SASL...................ok (v2.16)
    o Authen::NTLM...................ok (v1.09)
  o ModPerl::Util....................ok (v2.000012)
  o Moo..............................ok (v2.005004)
  o Net::DNS.........................ok (v1.33)
  o Net::LDAP........................ok (v0.68)
  o Net::SMTP........................ok (v3.13)
  o Template.........................ok (v2.27)
  o Template::Stash::XS..............ok (undef)
  o Text::CSV_XS.....................ok (v1.47)
  o Time::HiRes......................ok (v1.9767)
  o XML::LibXML......................ok (v2.0134)
  o XML::LibXSLT.....................ok (v1.99)
  o XML::Parser......................ok (v2.46)
  o YAML::XS.........................ok (v0.83)

接下来,使用以下命令重命名 OTRS 配置文件:

cp /opt/otrs/Kernel/Config.pm{.dist,}

接下来,运行以下 Perl 脚本以安装所需的依赖项:

perl -cw /opt/otrs/bin/cgi-bin/index.pl
perl -cw /opt/otrs/bin/cgi-bin/customer.pl
perl -cw /opt/otrs/bin/otrs.Console.pl
perl /opt/otrs/bin/otrs.SetPermissions.pl

为 OTRS 配置 Apache

接下来,您需要将 Apache 配置文件链接到 Apache 网站根目录,以便通过 Apache 提供 OTRS 服务。您可以使用以下命令完成:

ln -s /opt/otrs/scripts/apache2-httpd.include.conf /etc/apache2/sites-enabled/

接下来,使用以下命令禁用默认的 Apache 站点:

a2dissite 000-default.conf

接下来,使用以下命令启用所需的 Apache 模块:

a2enmod perl version deflate filter headers

接下来,使用以下命令修复 Apache 权限:

/opt/otrs/bin/otrs.SetPermissions.pl --web-group=www-data

最后,重启 Apache 服务使配置生效:

systemctl restart apache2

您现在可以使用以下命令查看 Apache 服务的状态:

systemctl status apache2

您将在此次输出中看到 Apache 的状态:

? apache2.service - The Apache HTTP Server
     Loaded: loaded (/lib/systemd/system/apache2.service; enabled; vendor preset: enabled)
     Active: active (running) since Mon 2022-07-11 10:00:02 UTC; 4s ago
       Docs: https://httpd.apache.org/docs/2.4/
    Process: 60332 ExecStart=/usr/sbin/apachectl start (code=exited, status=0/SUCCESS)
   Main PID: 60339 (/usr/sbin/apach)
      Tasks: 83 (limit: 2242)
     Memory: 100.8M
        CPU: 1.696s
     CGroup: /system.slice/apache2.service
             ??60339 /usr/sbin/apache2 -k start
             ??60342 /usr/sbin/apache2 -k start
             ??60343 /usr/sbin/apache2 -k start
             ??60344 /usr/sbin/apache2 -k start

Jul 11 10:00:01 ubuntu2204 systemd[1]: Starting The Apache HTTP Server...
Jul 11 10:00:01 ubuntu2204 apachectl[60336]: AH00558: apache2: Could not reliably determine the server's fully qualified domain name, using 2>
Jul 11 10:00:02 ubuntu2204 systemd[1]: Started The Apache HTTP Server.

访问 OTRS Web 界面

现在,打开您的 Web 浏览器,使用 URL http://your-server-ip/otrs/installer.pl 访问 OTRS Web 界面。您应该会看到如下界面:

在 Ubuntu 22.04 上安装 OTRS 工单管理系统

点击“下一步”按钮。您应该会看到许可协议界面:

在 Ubuntu 22.04 上安装 OTRS 工单管理系统

阅读许可协议后点击“接受许可并继续”按钮。您应该会看到数据库选择界面:

在 Ubuntu 22.04 上安装 OTRS 工单管理系统

选择您的数据库并点击“下一步”按钮。您应该会看到 MySQL 配置界面:

在 Ubuntu 22.04 上安装 OTRS 工单管理系统

输入您的 MySQL root 密码并点击“检查数据库设置”。您应该会看到如下界面:

在 Ubuntu 22.04 上安装 OTRS 工单管理系统

输入新的数据库用户和密码,然后点击“下一步”按钮。您应该会看到如下界面:

在 Ubuntu 22.04 上安装 OTRS 工单管理系统

点击“下一步”按钮。您应该会看到系统设置界面:

在 Ubuntu 22.04 上安装 OTRS 工单管理系统

设置所需的配置,然后点击“下一步”按钮。您应该会看到电子邮件配置界面:

在 Ubuntu 22.04 上安装 OTRS 工单管理系统

设置您的 SMTP 服务器,或留空并点击“跳过此步骤”按钮。安装完成后,您应该会在如下界面看到带有登录用户名和密码的服务器 URL:

在 Ubuntu 22.04 上安装 OTRS 工单管理系统

点击提供的 URL。您将被重定向到 OTRS 登录界面:

在 Ubuntu 22.04 上安装 OTRS 工单管理系统

输入管理员凭据并点击“登录”按钮。您应该会在如下界面看到 OTRS 仪表盘:

在 Ubuntu 22.04 上安装 OTRS 工单管理系统

在上述界面中,您应该会看到“OTRS 守护进程未运行”的错误。

要解决此错误,请在您的服务器终端上运行以下命令:

sudo -Hiu otrs /opt/otrs/bin/otrs.Daemon.pl start
cp /opt/otrs/var/cron/otrs_daemon{.dist,}
sudo -Hiu otrs /opt/otrs/bin/Cron.sh start

现在,刷新 OTRS 界面。您应该会看到错误已经消失。

在 Ubuntu 22.04 上安装 OTRS 工单管理系统

总结

恭喜!您已成功在 Ubuntu 22.04 服务器上安装了 OTRS。希望您现在已经掌握了足够知识,能够使用 OTRS 部署属于自己的工单系统。如果您有任何疑问,欢迎随时向我提问。