使用 Let's Encrypt 在 CentOS 7/RHEL 7 上安装 osTicket使用 Let's Encrypt 在 CentOS 7/RHEL 7 上安装 osTicket使用 Let's Encrypt 在 CentOS 7/RHEL 7 上安装 osTicket使用 Let's Encrypt 在 CentOS 7/RHEL 7 上安装 osTicket
  • 业务
  • 目标
  • 支持
  • 登录
找到的结果: {phrase} (显示: {results_count} 共: {results_count_total})
显示: {results_count} 共: {results_count_total}

加载更多搜索结果...

搜索范围
模糊匹配
搜索标题
搜索内容

使用 Let's Encrypt 在 CentOS 7/RHEL 7 上安装 osTicket

发表 admin at 2025年2月28日
类别
  • 未分类
标签

本指南是为想要在 CentOS 7/RHEL 7 Linux 计算机上安装和配置 osTicket 的用户创建的。本文还将介绍使用 Let’s Encrypt SSL 证书设置后保护 osTicket 的内容。 osTicket 是一个开源且功能强大的票务系统,可与商业解决方案竞争。它的一系列功能将使您放弃商业软件并选择 osTicket。该软件是用PHP编程语言编写的。

osTicket 的功能

osTicket 中提供的一些主要功能包括:

  • 工单过滤器:定义规则,将收到的工单路由到正确的部门、代理,并触发操作。
  • 自定义字段:自定义提交票证时从用户收集的数据,以帮助直接解决问题。
  • 自定义列和队列:自定义队列是基于您指定的自定义条件的工单视图。自定义列是一个附加字段,在查看票证选项卡时最初不会显示
  • 帮助主题:可配置的网络票证帮助主题使您可以将查询发送到正确的部门,以便快速解决。
  • 避免代理冲突:工单锁定机制,允许工作人员在响应期间锁定工单,以避免冲突或双重响应。
  • 分配、转移和推荐:在部门之间转移工单,以确保由正确的代理处理,或将工单分配给特定代理或代理团队。
  • 自动回复:打开新工单或收到消息时发送可配置的自动回复。
  • 线程操作:代理能够从工单的线程条目或任务的线程条目创建工单或任务。
  • 服务级别协议:所有支持请求和响应均在线存档以供最终用户使用。
  • 高级搜索:使用高级搜索缩小搜索条件。
  • 任务:为客服人员创建内部待办事项列表。

有关更多详细信息,请查看官方 osTicket 功能页面。

在 CentOS 7/RHEL 7 上安装 osTicket

按照以下步骤在 CentOS 7/RHEL 7 Linux 系统上安装和配置 osTicket。此设置的唯一先决条件是具有 sudo 权限的用户以及可以从服务器访问 Internet 的用户。

第1步:更新CentOS/RHEL 7系统

我们始终建议您在更新的 Linux 系统上执行安装。

sudo yum -y update

升级后设置正确的服务器主机名:

sudo hostnamectl set-hostname osticket.computingforgeeks.com

配置正确的时区并与 NTP 同步:

sudo timedatectl set-timezone Africa/Nairobi
sudo timedatectl set-ntp yes

升级后重启系统:

sudo reboot -f

第 2 步:安装并配置 MariaDB、httpd 和 PHP

我们需要 MySQL 数据库服务器、Apache httpd Web 服务器和 PHP 来在 CentOS 7/RHEL 7 系统上运行 osTicket。

1)安装并配置MariaDB数据库服务器

安装 MariaDB 数据库服务器的稳定版本:

curl -LsS https://downloads.mariadb.com/MariaDB/mariadb_repo_setup | sudo bash -s --
sudo yum -y install MariaDB-server MariaDB-client MariaDB-backup

如果安装成功,启动数据库服务。

sudo systemctl enable --now mariadb

设置root用户密码并在服务器上执行其他加固步骤。

$ sudo mariadb-secure-installation
Switch to unix_socket authentication [Y/n] n
Change the root password? [Y/n] y
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

创建 osTicket 数据库和用户

$ mysql -u root -p
CREATE DATABASE osticket;
GRANT ALL PRIVILEGES ON osticket.* TO osticket@localhost IDENTIFIED BY "Str0ngDBPassw0rd";
FLUSH PRIVILEGES;
QUIT;

以 osticket 用户身份验证与数据库的连接:

$ mysql -u osticket -p'Str0ngDBPassw0rd'
Your MariaDB connection id is 13
Server version: 10.7.3-MariaDB MariaDB Server

Copyright (c) 2000, 2018, Oracle, MariaDB Corporation Ab and others.

Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.

MariaDB [(none)]> EXIT
Bye

2) 安装和配置Httpd Web服务器

运行以下命令在 CentOS/RHEL 7 服务器中安装 Apache Web 服务器:

sudo yum -y install httpd

安装后,您可以使用以下命令启动该服务:

sudo systemctl enable --now httpd

确认服务状态:

$ systemctl status httpd
● httpd.service - The Apache HTTP Server
   Loaded: loaded (/usr/lib/systemd/system/httpd.service; enabled; vendor preset: disabled)
   Active: active (running) since Thu 2022-03-24 23:54:09 EAT; 8s ago
     Docs: man:httpd(8)
           man:apachectl(8)
 Main PID: 2090 (httpd)
   Status: "Processing requests..."
   CGroup: /system.slice/httpd.service
           ├─2090 /usr/sbin/httpd -DFOREGROUND
           ├─2091 /usr/sbin/httpd -DFOREGROUND
           ├─2092 /usr/sbin/httpd -DFOREGROUND
           ├─2093 /usr/sbin/httpd -DFOREGROUND
           ├─2094 /usr/sbin/httpd -DFOREGROUND
           └─2095 /usr/sbin/httpd -DFOREGROUND

Mar 24 23:54:09 osticket.computingforgeeks.com systemd[1]: Starting The Apache HTTP Server...
Mar 24 23:54:09 osticket.computingforgeeks.com systemd[1]: Started The Apache HTTP Server.

3)安装PHP和所需的扩展

启用 EPEL 存储库:

### CentOS 7 ###
sudo yum -y install https://dl.fedoraproject.org/pub/epel/epel-release-latest-7.noarch.rpm

### RHEL 7 ###
sudo subscription-manager repos --enable=rhel-7-server-rpms \
  --enable=rhel-7-server-extras-rpms \
  --enable=rhel-7-server-optional-rpms
sudo yum -y install https://dl.fedoraproject.org/pub/epel/epel-release-latest-7.noarch.rpm

还添加提供 PHP 8.0 包的 REMI:

sudo yum -y install https://rpms.remirepo.net/enterprise/remi-release-7.rpm

启用 PHP 8.0 Remi 存储库:

sudo yum -y install yum-utils
sudo yum-config-manager --disable remi-php54
sudo yum-config-manager --enable remi-php80

安装 PHP 和运行 osTicket 所需的所有扩展:

sudo yum -y install php
sudo yum -y install php-{fpm,mysqlnd,pear,cgi,common,curl,gettext,zip,opcache,apcu,imap,intl,gd,bcmath,mbstring}

检查系统中 PHP 的默认版本。应该是8.0

$ php -v
PHP 8.0.17 (cli) (built: Mar 15 2022 08:24:20) ( NTS gcc x86_64 )
Copyright (c) The PHP Group
Zend Engine v4.0.17, Copyright (c) Zend Technologies
    with Zend OPcache v8.0.17, Copyright (c), by Zend Technologies

步骤 3:在 CentOS 7/RHEL 7 上下载 osTicket

您可以从官方产品页面找到最新版本的 osTicket。

sudo yum -y install curl wget unzip vim

使用curl和过滤来拉取最新版本

curl -s https://api.github.com/repos/osTicket/osTicket/releases/latest \
  | grep browser_download_url \
  | grep "browser_download_url" \
  | cut -d '"' -f 4 \
  | wget -i -

解压下载的存档文件

unzip osTicket-v*.zip -d osTicket

将创建的文件夹 osTicket 移动到 /var/www 目录:

sudo mv osTicket /var/www/

通过复制示例一创建配置文件

sudo cp /var/www/osTicket/upload/include/ost-sampleconfig.php /var/www/osTicket/upload/include/ost-config.php 

为目录设置正确的权限

sudo chown -R apache:apache /var/www/osTicket

如果强制执行 SELinux,请设置正确的文件上下文。

sudo setsebool -P httpd_can_network_connect 1
sudo semanage fcontext -a -t httpd_sys_rw_content_t "/var/www/osTicket(/.*)?"
sudo restorecon -Rv /var/www/osTicket/

步骤 4:在 httpd Web 服务器上创建 osTicket 配置

为 osTicket 创建新的 VirtualHost 配置文件

sudo vim /etc/httpd/conf.d/osticket.conf

添加并修改以下内容以适合您的设置环境。

<VirtualHost *:80>
     DocumentRoot /var/www/osTicket/upload
     ServerAdmin [email 
     ServerName osticket.example.com
     ServerAlias www.osticket.example.com
     <Directory /var/www/osTicket/>
          Options FollowSymlinks
          AllowOverride All
          Require all granted
     </Directory>

     ErrorLog /var/log/httpd/osticket_error.log
     CustomLog /var/log/httpd/osticket_access.log combined
</VirtualHost>

在哪里 :

  • /var/www/osTicket/upload 是 osTicket Web 根目录的路径
  • [电子邮件受保护]替换为您的网站管理员电子邮件地址
  • osticket.example.com 是您的 osTicket FQDN 网站管理员电子邮件地址

确保 Httpd 服务器中没有配置语法错误。

$ sudo apachectl configtest
Syntax OK

删除 apache 欢迎页面:

 sudo rm /etc/httpd/conf.d/welcome.conf

重新启动您的 httpd 服务。

sudo systemctl restart httpd

如果您的防火墙处于活动状态,请打开 http 和 https 端口。

sudo firewall-cmd --add-service={http,https} --permanent
sudo firewall-cmd --reload

步骤 5:在 CentOS 7/RHEL 7 上完成 osTicket 安装

访问 http://osticket.example.com 上的 Web 服务器 IP 地址或 FQDN,完成 osTicket 的 Web 配置。

确认所有检查均成功。

填写所需信息:

在“数据库设置”下提供数据库连接详细信息

  • MySQL 数据库:osticket
  • MySQL 用户名:osticket
  • MySQL 密码:Str0ngDBPassw0rd

然后点击“立即安装”按钮开始安装。完成后,会显示不同功能的访问 URL。

更新 ost-config.php 文件的权限

sudo chmod 0644 /var/www/osTicket/upload/include/ost-config.php

在 CentOS 7 | RHEL 7 服务器上成功安装 osTicket 后删除 setup 文件夹。

sudo rm -rf /var/www/osTicket/upload/setup/

保存访问 URL,因为您将需要它们。

员工控制面板是osticketfqdn/scp

登录后您应该会看到类似于下面的仪表板

第 6 步 – 使用 Let’s Encrypt SSL 证书保护 osTicker

按照以下链接中的指南保护您的服务器安装;

  • 如何使用 Let's Encrypt SSL 证书保护 osTicket

类似文章:

  • 在 Ubuntu 上安装 attendize 票务和活动管理系统
  • 在 Ubuntu 上设置 UVdesk 票务系统
©2015-2025 Norria support@alaica.com