如何在Ubuntu 18.04上使用OTRS设置帮助台系统

OTRS,也称为开源票务请求系统,是一个服务台和IT服务管理系统。在本教程中,您将在Ubuntu 18.04服务器上安装OTRS Community Edition并设置一个简单的帮助台系统,该系统允许您使用Web界面和电子邮件接收和处理来自客户的请求。

作者选择自由软件基金会作为Write for DOnations计划的一部分接受捐赠。

介绍

OTRS ,也称为O pen source T icket R equest S ystem,是一个服务台和IT服务管理系统。 它为用户,客户,IT人员,IT服务和任何外部组织提供单点联系。 该程序是用Perl编写的,支持各种数据库( MySQLPostgreSQL等),并且可以与LDAP目录集成。

在本教程中,您将在Ubuntu 18.04服务器上安装OTRS Community Edition并设置一个简单的帮助台系统,该系统允许您使用Web界面和电子邮件接收和处理来自客户的请求。

先决条件

要完成本教程,您需要具备以下条件:

  • 按照Ubuntu 18.04的初始服务器设置指南设置Ubuntu 18.04服务器,包括具有sudo权限的非root用户和使用ufw配置的防火墙。

  • 在您的Ubuntu服务器上安装Apache和MySQL。 按照本指南的第1步和2进行配置。

  • 完全注册的域名。 本教程将始终使用example.com 您可以在Namecheap上购买域名,在Freenom上免费获取一个域名,或使用您选择的域名注册商。

  • 为您的服务器设置了以下两个DNS记录。 您可以按照DigitalOcean DNS的介绍了解有关如何添加它们的详细信息。

    • 带有example.com的A记录,指向服务器的公共IP地址。
    • 带有www. example.com的A记录www. example.com www. example.com指向您服务器的公共IP地址。
  • 您的域的Ubuntu 18.04服务器上安装了TLS / SSL证书。 您可以按照Ubuntu 18.04上Let's Encrypt指南获取免费的TLS / SSL证书。

  • Postfix邮件传输代理按照我们的教程如何在Ubuntu 18.04上安装和配置Postfix进行设置

  • (可选) 启用IMAP访问权限的专用Gmail帐户2步验证以及使用其他(自定义名称)选项生成的应用程序密码 生成应用程序密码时,请将其写下来以便在第5步中使用它。您将使用Gmail在OTRS中配置入站邮件票证,并将Gmail作为您的IMAPS邮箱。 这只是为OTRS配置入站邮件的一种方法; 如果您想探索其他选项,请查看OTRS文档

警告:请勿使用您自己的任何有效Gmail帐户为OTRS配置入站邮件。 imap.gmail.com将电子邮件转发给OTRS时,Gmail帐户中的所有电子邮件都将被删除。 因此,创建一个专门用于OTRS的新Gmail帐户是一个更好的选择。

第1步 - 安装OTRS包和Perl模块

在此步骤中,您将安装OTRS和一组将增加系统功能的Perl模块。

OTRS可以在Ubuntu的软件包管理器中找到,但官方文档建议从源代码安装OTRS。

要执行此操作,请首先以非root用户身份登录Ubuntu服务器:

ssh sammy@Ubuntu_Server_IP

然后使用wget命令下载源存档。 在本教程中,您将下载6.0.19版; 您可以在OTRS 下载页面上找到最新版本。

wget http://ftp.otrs.org/pub/otrs/otrs-6.0.19.tar.gz

接下来,使用tar解压缩压缩文件:

tar xzf otrs-6.0.19.tar.gz

将存档的内容移动到/opt/otrs目录:

sudo mv otrs-6.0.19 /opt/otrs

因为OTRS是用Perl编写的,所以它使用了许多Perl模块。 使用OTRS附带的CheckModules.pl脚本检查缺少的模块:

sudo /opt/otrs/bin/otrs.CheckModules.pl

您将看到这样的输出,列出您已下载的模块以及您缺少的模块:

  o Apache::DBI......................FAILED! Not all prerequisites for this module correctly installed.
  o Apache2::Reload..................ok (v0.13)
. . .
  o XML::LibXML......................Not installed! Use: 'apt-get install -y libxml-libxml-perl' (required - Required for XML processing.)
  o XML::LibXSLT.....................Not installed! Use: 'apt-get install -y libxml-libxslt-perl' (optional - Required for Generic Interface XSLT mapping module.)
  o XML::Parser......................Not installed! Use: 'apt-get install -y libxml-parser-perl' (optional - Recommended for XML processing.)
  o YAML::XS.........................Not installed! Use: 'apt-get install -y libyaml-libyaml-perl' (required - Required for fast YAML processing.)

某些模块仅用于可选功能,例如与其他数据库通信或处理具有特定字符集的邮件; 其他人是该计划工作所必需的。

虽然下载这些模块的建议命令使用apt-get ,但本教程将使用apt命令安装缺少的模块,这是Ubuntu 18.04的建议最佳实践。 您可以手动浏览这些模块,也可以使用以下命令:

$ sudo apt install libapache2-mod-perl2 libdbd-mysql-perl libtimedate-perl libnet-dns-perl libnet-ldap-perl \
    libio-socket-ssl-perl libpdf-api2-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 libdatetime-perl

每当您安装完这些模块时,请重新运行脚本以确保已安装所有必需的模块:

sudo /opt/otrs/bin/otrs.CheckModules.pl

您的输出现在将显示所有已安装的模块:

...
  o Text::CSV_XS.....................ok (v1.34)
  o Time::HiRes......................ok (v1.9741)
  o XML::LibXML......................ok (v2.0128)
  o XML::LibXSLT.....................ok (v1.95)
  o XML::Parser......................ok (v2.44)
  o YAML::XS.........................ok (v0.69)

现在您已在服务器上安装了OTRS及其依赖项,您可以配置OTRS以使用Apache和MySQL。

第2步 - 配置OTRS,Apache和MySQL服务器

在此步骤中,您将为OTRS创建系统用户,然后配置Apache和MySQL服务器以使用OTRS。

使用useradd命令创建名为otrs的用户以运行OTRS函数:

sudo useradd -d /opt/otrs -c 'OTRS user' otrs

-d将用户的主目录设置为/opt/otrs-c设置'OTRS user'注释以描述用户。

接下来,将otrs添加到Web服务器组:

sudo usermod -G www-data otrs

OTRS附带一个默认配置文件/opt/otrs/Kernel/Config.pm.dist 通过复制它而不使用.dist文件扩展名来激活它:

sudo cp /opt/otrs/Kernel/Config.pm.dist /opt/otrs/Kernel/Config.pm

现在,导航到/opt/otrs目录:

cd /opt/otrs

从这里,运行otrs.SetPermissions.pl脚本。 它将检测正确的用户和组设置,并为OTRS设置文件和目录权限。

sudo bin/otrs.SetPermissions.pl

这将产生以下输出:

Setting permissions on /opt/otrs

现在设置了正确的权限。

接下来,激活apache2配置文件并确保在所有其他配置之后加载它。 为此,请使用zzz_前缀创建符号链接:

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

OTRS需要一些Apache模块才能激活以实现最佳操作。 您可以通过工具a2enmod激活它们。 虽然其中一些已经启用,但最好全部检查它们:

sudo a2enmod perl
sudo a2enmod headers
sudo a2enmod deflate
sudo a2enmod filter

这些模块使Apache能够使用Perl, 控制HTTP标头压缩服务器输出以及配置输出内容过滤器

重新启动Web服务器以应用新配置:

sudo systemctl restart apache2

在进入下一步并运行Web安装程序之前,请更改一些MySQL配置设置。 在首选文本编辑器中打开MySQL配置文件。 本教程使用nano

sudo nano /etc/mysql/mysql.conf.d/mysqld.cnf

[mysqld]部分下查找以下选项。 对于max_allowed_packetquery_cache_size ,分别将值更改为64M32M ,如以下代码块中突出显示:

/etc/mysql/mysql.conf.d/mysqld.cnf
...
max_allowed_packet      = 64M
thread_stack            = 192K
thread_cache_size       = 8
# This replaces the startup script and checks MyISAM tables if needed
# the first time they are touched
myisam-recover-options  = BACKUP
#max_connections        = 100
#table_open_cache       = 64
#thread_concurrency     = 10
#
# * Query Cache Configuration
#
query_cache_limit       = 1M
query_cache_size        = 32M
...

这会调整允许的最大数据包大小和查询缓存大小,以便MySQL可以与OTRS进行交互。

然后在文件末尾的[mysqld]部分下添加以下突出显示的附加选项:

/etc/mysql/mysql.conf.d/mysqld.cnf
...
# ssl-cert=/etc/mysql/server-cert.pem
# ssl-key=/etc/mysql/server-ikey.pem
innodb_log_file_size = 256M
collation-server = utf8_unicode_ci
init-connect='SET NAMES utf8'
character-set-server = utf8

这将设置数据库日志文件大小,确定字符集和排序规则 ,并创建init_connect字符串以在启动MySQL服务器时设置字符集。

CTRL + X保存并关闭mysqld.cnf ,然后按Y ,然后按ENTER 然后,重新启动MySQL服务器以应用新参数:

sudo systemctl restart mysql.service

现在您已经创建了otrs用户并配置了Apache和MySQL以使用OTRS,您就可以使用Web安装程序了。

第3步 - 使用Web安装程序

在此步骤中,您将在Web浏览器中配置OTRS的数据库设置,并在命令行上启动OTRS守护程序进程。

在您喜欢的网络浏览器中打开https:// example.com /otrs/installer.pl ,将example.com替换为您的域名。 您将找到一个欢迎屏幕,其中包含欢迎使用OTRS 6的消息以及有关OTRS办公室的信息。

OTRS欢迎屏幕

单击下一步 下一个屏幕将拥有OTRS的许可证,这是开源程序常用的GNU通用公共许可证 单击接受许可证接受并在阅读后继续

在下一个屏幕上,系统将提示您选择数据库类型。 默认设置( MySQL为OTRS创建新数据库 )适用于您的设置,因此单击下一步继续。

数据库选择

在下一个屏幕上,输入您在MySQL服务器安装期间设置的MySQL凭据。 使用root作为User字段,然后输入您创建的密码。 保留默认主机值。

单击“ 检查数据库设置”以确保其有效。 安装程序将为新数据库生成凭据。 无需记住此生成的密码。

数据库检查结果

单击“ 下一步”继续。

将创建数据库,您将看到成功的结果:

数据库设置成功

单击下一步

接下来,提供以下必需的系统设置:

  • 系统FQDN :完全限定的域名。 example.com替换为您自己的域名。
  • AdminEmail :系统管理员的电子邮件地址。 有关OTRS错误的电子邮件将在这里发布。
  • 组织 :您组织的名称。

将所有其他选项保留为默认值:

系统设置

单击下一步

现在,您将登陆“ 邮件配置”页面。 为了能够发送和接收电子邮件,您必须配置邮件帐户。 本教程稍后将在第5步中处理此问题,因此单击“ 跳过此步骤”

OTRS安装现已完成; 您将在“ 开始”页面后看到一个“ 完成”页面,其中包含指向管理面板的链接,之后会显示 OTRS超级用户的凭据。 确保记下root @ localhost用户生成的密码和Start页面的URL。

成功安装后唯一剩下的就是启动OTRS守护程序并激活其cronjob

打开您用来访问Ubuntu 18.04服务器的终端。 OTRS守护程序负责处理OTRS中的任何异步和重复任务。 otrs用户启动它:

sudo su - otrs -c "/opt/otrs/bin/otrs.Daemon.pl start"

您将看到以下输出:

Manage the OTRS daemon process.

Daemon started

/opt/otrs/var/cron/目录中有两个默认的cron文件。 进入此目录。

cd /opt/otrs/var/cron

这些cron文件用于确保OTRS守护程序正在运行。 通过复制它们而不使用.dist文件扩展名来激活它们。

sudo cp aaa_base.dist aaa_base
sudo cp otrs_daemon.dist otrs_daemon

要安排这些cron作业,请使用脚本Cron.shotrs用户:

sudo su - otrs -c "/opt/otrs/bin/Cron.sh start"

您现在已经使用Web安装程序安装了OTRS并设置了与MySQL数据库的连接。 您还在服务器上启动了OTRS守护程序。 接下来,您将登录管理员Web界面并保护OTRS。

第4步 - 保护OTRS

目前,您拥有功能齐全的应用程序,但使用OTRS的超级用户帐户并不安全。 相反,您将创建一个新代理 在OTRS中,代理是具有系统各种功能的权限的用户。 在此示例中,您将使用可以访问系统所有功能的单个代理。

要开始使用,请以root @ localhost身份登录。 打开您在上一步中收到的“ 开始页面”链接。 输入root @ localhost作为从第3步复制的用户名和密码,然后单击Login

您将看到主仪表板。 它包含几个小部件,显示有关票证,统计信息,新闻等的不同信息。您可以通过拖动或切换设置中的可见性来自由重新排列它们。

主屏幕

首先,创建一个新的代理。 要执行此操作,请单击屏幕顶部显示为“不使用超级用户帐户以使用OTRS 6”的红色消息来链接该链接 创建新代理并使用这些帐户。 这将带您进入“ 代理管理”屏幕。

代理管理

单击“ 添加代理”按钮。 这将带您进入“ 添加代理”屏幕。 大多数默认选项都很好。 填写名字,姓氏,用户名,密码和电子邮件字段。 记录用户名和密码以备将来登录。 单击“ 保存”按钮提交表单。

接下来,更改新代理的组关系。 由于您的代理也将是管理员,因此您可以为其提供对所有组的完全读写访问权限。 要执行此操作,请单击“ 更改组代理关系”下右侧RW旁边的复选框。

改变群体关系

最后,单击“ 保存”并完成

现在,注销并使用新创建的帐户重新登录。 您可以通过单击左上角的头像图片找到Logout链接。

退出位置

重新登录后,您可以通过单击头像菜单中的个人首选项来自定义代理的首选项。 在那里,您可以更改密码,选择界面语言,配置设置通知和收藏夹队列,更改界面皮肤等。

一旦您以新代理身份登录并根据自己的喜好配置了帐户,下一步就是配置入站邮件选项以从传入电子邮件生成票证。

第5步 - 配置入站邮件

客户有两种方式将新门票转发给OTRS:通过客户前端或发送电子邮件。 要接收客户的消息,您需要设置POP或IMAP帐户。 在本教程中,您将使用您创建的专用OTRS Gmail帐户作为先决条件。

单击顶部菜单中的“ 管理” ,导航到“管理”选项卡。 然后找到PostMaster邮件帐户选项并单击它。 添加邮件帐户按钮以设置新邮箱。

添加邮件帐户

在“ 添加邮件帐户”屏幕上,选择“ IMAPS”作为“ 类型” 对于“ 用户名” ,键入您的Gmail地址,对于“ 密码” ,请输入您在先决条件中为Gmail帐户生成的应用程序密码。 将所有其他选项保留为默认值。 单击保存

注意:您可以通过为Gmail帐户启用不太安全的应用访问权限 ,而无需两步验证即可使用Gmail for IMAPS。 您可以在Google帮助中心找到有关如何执行此操作的说明 但是,此方法不太安全,并且可能需要长达24小时才能使安全性较低的应用程序访问生效。 建议您使用App密码方法。

接下来,将外部电子邮件帐户中的测试电子邮件发送到您的专用OTRS Gmail帐户。 邮件将由OTRS守护程序每10分钟提取一次,但您可以通过单击“ 获取邮件”链接强制接收。

结果,您将看到新票证。

电子邮件票

现在您已准备好通过电子邮件接收客户的门票。 接下来,您将完成通过客户前端创建故障单的过程。

第6步 - 使用客户界面

客户创建票证的第二种方式是通过OTRS前端。 在此步骤中,您将完成此过程以确保设置此故障单创建方法。

客户前端位于https:// example.com /otrs/customer.pl 在Web浏览器中导航到它。 您可以在那里创建客户帐户并使用GUI提交票证。

使用立即注册链接打开注册表单。

创建帐号

填写表格并按“ 创建”按钮。

您将看到如下消息:

New account created. Sent login information to sammy@gmail.com. Please check your email.

检查收件箱中是否有来自OTRS的消息。 您将看到包含新帐户凭据的消息:

Hi sammy,

You or someone impersonating you has created a new OTRS account for
you.

Full name: sammy
User name: sammy@email.com
Password : Sammy_Password

You can log in via the following URL. We encourage you to change your password
via the Preferences button after logging in.

http://example.com/otrs/customer.pl

现在,使用提供的凭据访问客户前端并创建另一个故障单。 使用客户前端创建的所有新故障单将立即显示在代理的仪表板上:

客户票

在代理仪表板上,您可以查看有关所有当前故障单的信息:其状态(新建,已打开,已升级等),其年龄(从收到故障单开始经过的时间)和主题。

您可以单击故障单编号(在TICKET#列中)以查看其详细信息。 代理还可以在此处对故障单执行操作,例如更改其优先级或状态,将其移至另一个队列,关闭它或添加注释。

您现在已成功设置OTRS帐户。

结论

在本教程中,您将设置OTRS并创建测试帮助台票证。 现在,您可以使用Web界面和电子邮件接受和处理来自用户的请求。

您可以通过阅读OTRS管理员手册了解有关OTRS的更多信息。 如果您想了解有关如何使用MySQL的更多信息,请参阅MySQL 中的查询简介文章,或浏览DigitalOcean的托管数据库产品