作者选择了自由软件基金会作为 写给捐款计划的一部分接受捐款。
介绍
OTRS,也被称为 Open 源 Ticket Request Ssystem,是一个帮助桌和IT服务管理系统. 它为用户,客户,IT人员,IT服务和任何外部组织提供一个单一的接触点。 该程序以 Perl编写,支持各种数据库(MySQL, PostgreSQL,等等),并可以与 LDAP 目录集成。
在本教程中,您将安装OTRS Community Edition在Ubuntu 18.04服务器上,并设置一个简单的帮助台系统,允许您使用Web界面和电子邮件接收和处理客户的请求。
前提条件
要完成本教程,您将需要以下内容:
- 根据我们的Ubuntu 18.04初始服务器设置指南建立的Ubuntu 18.04服务器,包括一个具有sudo权限的非根基用户和一个配置有 " ufw " 的防火墙* Apache 和 MySQL 安装在您的 Ubuntu 服务器上 。 遵循本指南第1和第2步来配置这些.() ( )* 一个完全注册的域名. 该教程将始终使用`example.com'。 您可以在 [Namecheap] (https://namecheap.com 上购买域名, 在 [Freenom] (http://www.freenom.com/en/index.html) 上免费获取域名, 或者使用您选择的域名注册员. () ( )* 为您的服务器设置了以下两个 DNS 记录 。 您可以跟随[这个对 DigitalOcean DNS (https://andsky.com/tech/tutorials/an-introduction-to-digitalocean-dns)的介绍来了解如何添加它们的细节.
- 一个带有‘example.com'的唱片,指向您的服务器的公开IP地址. () ) - 有"www.example.com"的唱片,指向您服务器的公开IP地址. ( ( )* 在您的 Ubuntu 18.04 服务器上为您域安装了 TLS/ SSL 证书 。 您可以遵循 [让我们在 Ubuntu 18.04 指南上加密] (https://andsky.com/tech/tutorials/how-to-secure-apache-with-let-s-encrypt-on-ubuntu-18-04) 获取免费的 TLS/SSL 证书 。 () ( )* 通过遵循我们的教程[如何在Ubuntu 18.04 (https://andsky.com/tech/tutorials/how-to-install-and-configure-postfix-on-ubuntu-18-04)上安装并配置后缀]而设置的后缀邮件传输代理(Postfix mail transfer). (- ) * (可选) A 专用 [Gmail account (https://accounts.google.com/), 并启用 [IMAP 访问 (https://support.google.com/mail/answer/7126229?hl=en), [2-step 校验 (https://support.google.com/accounts/answer/185839?co=GENIE.Platform%3DDesktop&hl=en), 以及使用 ** 其他(海关名称) ** 选项生成的 [App 密码 (https://support.google.com/mail/answer/185833?hl=en. 当生成 App 密码时,将其写下,以便在第5步中使用. 您将在 OTRS 中使用 Gmail 配置入境邮件票的创建, Gmail 作为您的 IMAPS 邮箱 。 这只是为OTRS配置入境邮件的一种方法;如果你想探索其他选项,请查看OTRS文档. () (英语)
<$>[警告] 警告: 不要使用您自己的活跃的 Gmail 帐户来配置 OTRS 的入口邮件。当 `imap.gmail.com 向 OTRS 发送电子邮件时, Gmail 帐户中的所有电子邮件都将被删除。
步骤 1 – 安装 OTRS 包和 Perl 模块
在此步骤中,您将安装OTRS和一组Perl模块,这将增加系统的功能。
OTRS在Ubuntu的包管理器中可用,但 官方文档建议从源头安装OTRS。
要做到这一点,先登录您的Ubuntu服务器,作为您的非根用户:
1[environment local]
2ssh sammy@Ubuntu_Server_IP
然后用wget
命令下载源档案. 对于本教程,您将下载版本 6.0.19;您可以在OTRS 下载页面上找到最新的可用版本。
1wget http://ftp.otrs.org/pub/otrs/otrs-6.0.19.tar.gz
接下来,解包压缩文件用tar
:
1tar xzf otrs-6.0.19.tar.gz
将档案的内容移动到‘/opt/otrs’目录:
1sudo mv otrs-6.0.19 /opt/otrs
由于 OTRS 是用 Perl 编写的,它使用了一些 Perl 模块。 通过使用 OTRS 附带的CheckModules.pl
脚本检查缺少的模块:
1sudo /opt/otrs/bin/otrs.CheckModules.pl
你会看到这样的输出,列出你已经下载了哪些模块,而你错过了哪些模块:
1[secondary_label Output]
2 o Apache::DBI......................FAILED! Not all prerequisites for this module correctly installed.
3 o Apache2::Reload..................ok (v0.13)
4. . .
5 o XML::LibXML......................Not installed! Use: 'apt-get install -y libxml-libxml-perl' (required - Required for XML processing.)
6 o XML::LibXSLT.....................Not installed! Use: 'apt-get install -y libxml-libxslt-perl' (optional - Required for Generic Interface XSLT mapping module.)
7 o XML::Parser......................Not installed! Use: 'apt-get install -y libxml-parser-perl' (optional - Recommended for XML processing.)
8 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的建议最佳实践。
1$ sudo apt install libapache2-mod-perl2 libdbd-mysql-perl libtimedate-perl libnet-dns-perl libnet-ldap-perl \
2 libio-socket-ssl-perl libpdf-api2-perl libsoap-lite-perl libtext-csv-xs-perl \
3 libjson-xs-perl libapache-dbi-perl libxml-libxml-perl libxml-libxslt-perl libyaml-perl \
4 libarchive-zip-perl libcrypt-eksblowfish-perl libencode-hanextra-perl libmail-imapclient-perl \
5 libtemplate-perl libdatetime-perl
当您完成安装这些模块时,请重新启动脚本,以确保安装所有所需的模块:
1sudo /opt/otrs/bin/otrs.CheckModules.pl
您的输出现在将显示所有安装的模块:
1[secondary_label Output]
2...
3 o Text::CSV_XS.....................ok (v1.34)
4 o Time::HiRes......................ok (v1.9741)
5 o XML::LibXML......................ok (v2.0128)
6 o XML::LibXSLT.....................ok (v1.95)
7 o XML::Parser......................ok (v2.44)
8 o YAML::XS.........................ok (v0.69)
现在您已经在服务器上安装了 OTRS 及其依赖,您可以配置 OTRS 以使用 Apache 和 MySQL。
步骤 2 – 配置 OTRS、Apache 和 MySQL 服务器
在此步骤中,您将创建 OTRS 的系统用户,然后配置 Apache 和 MySQL 服务器以与 OTRS 工作。
创建一个名为otrs
的用户以使用useradd
命令运行 OTRS 函数:
1sudo useradd -d /opt/otrs -c 'OTRS user' otrs
-d
将用户的主目录设置为 /opt/otrs
,而 -c
会设置 `'OTRS 用户' 评论来描述用户。
接下来,将otrs
添加到 Web 服务器组:
1sudo usermod -G www-data otrs
OTRS 附有默认配置文件 /opt/otrs/Kernel/Config.pm.dist
. 通过复制它而不使用 .dist
文件名扩展来激活此功能:
1sudo cp /opt/otrs/Kernel/Config.pm.dist /opt/otrs/Kernel/Config.pm
现在,导航到‘/opt/otrs’目录:
1cd /opt/otrs
从这里运行otrs.SetPermissions.pl
脚本.它会检测正确的用户和组设置,并为OTRS设置文件和目录权限。
1sudo bin/otrs.SetPermissions.pl
这将产生以下产出:
1[secondary_label Output]
2Setting permissions on /opt/otrs
现在已经设置了正确的许可证。
接下来,激活apache2
配置文件,并确保它在所有其他配置之后被加载。
1sudo ln -s /opt/otrs/scripts/apache2-httpd.include.conf /etc/apache2/sites-enabled/zzz_otrs.conf
OTRS 需要几个 Apache 模块才能进行最佳操作. 您可以通过a2enmod
工具激活它们. 虽然其中一些已经启用,但最好检查它们:
1sudo a2enmod perl
2sudo a2enmod headers
3sudo a2enmod deflate
4sudo a2enmod filter
这些模块允许 Apache 与 Perl, 控制 HTTP 标题, 压缩服务器输出和 配置输出内容过滤器一起工作。
重新启动您的 Web 服务器以应用新的配置:
1sudo systemctl restart apache2
在您进入下一步并运行 Web 安装程序之前,请更改一些 MySQL 配置设置。在您喜爱的文本编辑器中打开 MySQL 配置文件。本教程使用nano
:
1sudo nano /etc/mysql/mysql.conf.d/mysqld.cnf
对于 max_allowed_packet
和 query_cache_size
,分别将值更改为 64M
和 32M
,如下代码块所示:
1[label /etc/mysql/mysql.conf.d/mysqld.cnf]
2...
3max_allowed_packet = 64M
4thread_stack = 192K
5thread_cache_size = 8
6# This replaces the startup script and checks MyISAM tables if needed
7# the first time they are touched
8myisam-recover-options = BACKUP
9#max_connections = 100
10#table_open_cache = 64
11#thread_concurrency = 10
12#
13# * Query Cache Configuration
14#
15query_cache_limit = 1M
16query_cache_size = 32M
17...
这调整了允许的最大包大小和查询缓存大小,以便MySQL可以与OTRS交互。
然后在文件末尾的[mysqld]
部分中添加以下突出附加选项:
1[label /etc/mysql/mysql.conf.d/mysqld.cnf]
2...
3# ssl-cert=/etc/mysql/server-cert.pem
4# ssl-key=/etc/mysql/server-ikey.pem
5innodb_log_file_size = 256M
6collation-server = utf8_unicode_ci
7init-connect='SET NAMES utf8'
8character-set-server = utf8
这会设置数据库日志文件的大小,确定 字符集和集合,并创建一个 init_connect
字符串来设置 MySQL 服务器启动时的字符集。
保存并关闭mysqld.cnf
,按CTRL
+X
,然后按Y
,然后按ENTER
。
1sudo systemctl restart mysql.service
现在你已经创建了otrs
用户,并配置了Apache和MySQL以与OTRS工作,你已经准备好使用Web安装程序。
步骤 3 – 使用 Web 安装程序
在此步骤中,您将在 Web 浏览器中配置 OTRS 数据库设置,并在命令行上启动 OTRS daemon 过程。
在您最喜欢的网页浏览器中打开https://example.com/otrs/installer.pl
,以您的域名取代example.com
。您将找到一个欢迎的屏幕,包含消息 欢迎来到OTRS 6和有关OTRS办公室的信息。
下一个屏幕将包含OTRS的许可证,这是开放源代码程序中常见的 GNU General Public License。
在下一个屏幕上,您将被提示选择一个数据库类型. 默认设置(MySQL和 Create a new database for OTRS)对您的设置是好的,所以单击 Next继续。
在下一个屏幕上,输入您在 MySQL 服务器安装过程中设置的 MySQL 凭证. 使用 root为 用户字段,然后输入您创建的密码. 留下默认主机值。
点击 ** 检查数据库设置** 以确保它工作. 安装程序将为新数据库生成身份证件. 无需记住生成的密码。
点击下一步
继续。
数据库将创建,您将看到成功的结果:
点击下一步
。
接下来,提供以下所需的系统设置:
- 系统FQDN:一个完全合格的域名. 用自己的域名替换
example.com
- AdminEmail:您的系统管理员的电子邮件地址. 有关 OTRS 错误的电子邮件将到这里
- 组织:您的组织名称
将所有其他选项留在其默认值:
点击下一步
。
现在你将降落在 邮件配置页面上. 为了能够发送和接收电子邮件,你必须配置一个邮件帐户。
现在 OTRS 安装完成了;您将看到一个 ** 已完成** 页面,在 ** 开始页面** 之后将链接到管理面板,然后将 OTRS 超级用户的身份证件。
成功安装后,唯一剩下的就是启动OTRS DAEMON并激活其cronjob
。
带上你正在使用的终端来访问你的 Ubuntu 18.04 服务器. OTRS 戴蒙负责处理 OTRS 中的任何不同步和重复任务。
1sudo su - otrs -c "/opt/otrs/bin/otrs.Daemon.pl start"
您将看到以下结果:
1[secondary_label Output]
2Manage the OTRS daemon process.
3
4Daemon started
在 /opt/otrs/var/cron/
目录中有两个默认 cron 文件。
1cd /opt/otrs/var/cron
这些 cron 文件被用来确保 OTRS daemon 正在运行. 通过复制它们而不使用 .dist
文件名扩展来激活它们。
1sudo cp aaa_base.dist aaa_base
2sudo cp otrs_daemon.dist otrs_daemon
要安排这些 cron 任务,请使用Cron.sh
脚本与otrs
用户:
1sudo su - otrs -c "/opt/otrs/bin/Cron.sh start"
您现在已经安装了 OTRS 与 Web 安装程序,并将其连接到 MySQL 数据库。您还在您的服务器上启动了 OTRS 戴蒙。接下来,您将登录到管理员 Web 界面并安全 OTRS。
步骤4 - 确保其他人
目前,您有一個完全功能的應用程式,但使用超級用戶帳戶與 OTRS 並不安全. 相反,您將創建一個新的 agent。
要开始,请登录为 root@localhost. 打开您在上一步收到的 开始页面链接. 输入 root@localhost以获取您从第 3 步复制的用户名和密码,然后单击 登录。
您将看到主仪表板. 它包含几个小工具,显示有关门票,统计,新闻等的不同信息. 您可以通过拖动或在设置中更改其可见性来自由地重新安排它们。
首先,创建一个新的代理人. 要做到这一点,请按下屏幕顶部的红色消息 ** 不要使用超级用户帐户与 OTRS 6 合作! 创建新的代理人并使用这些帐户。
点击添加代理人
按钮,将您带到添加代理人
屏幕。大多数默认选项都很好。 填写姓名、姓名、用户名、密码和电子邮件字段。 记录用户名和密码以便将来登录。 通过点击保存
按钮提交表单。
接下来,更改新代理人的组关系. 因为你的代理人也将是管理员,你可以给它完整的读取和写入所有组。
最后,点击保存并完成
。
现在,使用新创建的帐户退出并再次登录,您可以通过点击左上角的 avatar 图像来找到 Logout链接。
一旦您重新登录,您可以通过点击Avatar菜单中的个人偏好
来自定义您的代理的偏好,在那里您可以更改密码,选择界面语言,配置设置通知和喜爱的队列,更改界面皮肤等。
一旦您登录为新代理,并将帐户配置为您喜欢,下一步是配置入口邮件选项,以从入口电子邮件中生成门票。
步骤5:设置入口邮件
客户有两种方式将新票发送到OTRS:通过客户前端或通过发送电子邮件。为了接收客户的消息,您需要设置POP或IMAP帐户。
在顶部菜单中,点击Admin
,然后找到PostMaster Mail Accounts
选项,然后点击Add Mail Account
按钮来设置新的邮箱。
在添加邮件帐户
屏幕上,选择Type
中的IMAPS
。Username
中,输入您的Gmail地址;Password
中,在前提条件中输入您为您的Gmail帐户生成的应用密码。
<$>[注] **注:**您可以通过为您的 Gmail 帐户启用 Less secure app access来使用 Gmail for IMAPS,而无需 2 步验证。您可以在 Google 帮助中心找到有关如何做到这一点的说明。
接下来,将测试电子邮件从外部电子邮件帐户发送到您的专用OTRS Gmail帐户. 邮件将每10分钟由OTRS示威者接收,但您可以通过点击 Fetch mail链接强制接收。
结果,你会看到新票。
现在您已经准备好通过电子邮件接收客户的门票了,接下来,您将通过客户前端进行创建门票的过程。
步骤6:与客户界面合作
客户创建门票的第二种方式是通过OTRS前端,在此步骤中,您将通过此过程来确保设置此门票创建方法。
客户端前端位于 https://example.com/otrs/customer.pl
. 在网页浏览器中导航。您可以在那里创建客户帐户并使用GUI提交门票。
使用现在注册
链接来打开注册表。
填写表格并按下创建
按钮。
你會看到這樣的訊息:
1New account created. Sent login information to [email protected]. Please check your email.
查看您的收件箱,查找来自 OTRS 的消息,您将看到包含新帐户凭证的消息:
1Hi sammy,
2
3You or someone impersonating you has created a new OTRS account for
4you.
5
6Full name: sammy
7User name: [email protected]
8Password : Sammy_Password
9
10You can log in via the following URL. We encourage you to change your password
11via the Preferences button after logging in.
12
13http://example.com/otrs/customer.pl
现在,使用所提供的凭据访问客户前端并创建另一个门票. 使用客户前端创建的所有新门票将立即出现在代理人的仪表板上:
在代理仪表板上,您可以看到所有当前机票的信息:他们的状态(新,打开,升级等),他们的年龄(从机票收到之日起的时间)和主题。
您可以点击门票号码(在 **TICKET#**列中)以查看其细节,代理人也可以在这里对门票采取行动,例如更改门票的优先级或状态,将其移到另一个队列,关闭它或添加注释。
您现在已经成功创建了 OTRS 帐户。
结论
在本教程中,您设置了OTRS并创建了测试帮助桌票,现在您可以使用Web界面和电子邮件接受和处理用户的请求。
您可以通过阅读 OTRS 管理手册来了解更多有关 OTRS 的信息。如果您想了解有关使用 MySQL 的更多信息,请参阅我们的文章 An Introduction to Queries in MySQL 或探索 DigitalOcean 的 Managed Databases 产品 。