Linux中國

如何在 Ubuntu 16.04 上安裝 OTRS (開源問題單系統)

在本教程中,我將介紹如何在 Ubuntu 16.04 上安裝和配置 OTRS。我將使用 PostgreSQL 作為 OTRS 的資料庫,將 Apache Web 伺服器用作 Web 伺服器。

先決條件

  • Ubuntu 16.04。
  • 最小 2GB 的內存。
  • root 許可權

步驟 1 - 安裝 Apache 和 PostgreSQL

在第一步中,我們將安裝 Apache Web 伺服器以及 PostgreSQL。我們將從 ubuntu 倉庫中使用最新的版本。

使用 SSH 登錄到你的 Ubuntu 伺服器中:

ssh root@192.168.33.14

更新 Ubuntu 倉庫。

sudo apt-get update

使用 apt 安裝 Apache2 以及 PostgreSQL:

sudo apt-get install -y apache2 libapache2-mod-perl2 postgresql

通過檢查伺服器埠確保 Apache 以及 PostgreSQL 運行了。

netstat -plntu

Install Apache and PostgreSQL

你可以看到 80 埠被 apache 使用了,5432 埠被 postgresql 資料庫使用了。

步驟 2 - 安裝 Perl 模塊

OTRS 基於 Perl,因此我們需要安裝一些 OTRS 需要的 Perl 模塊。

使用這個 apt 命令安裝 perl 模塊:

sudo apt-get install -y libapache2-mod-perl2 libdbd-pg-perl libnet-dns-perl libnet-ldap-perl libio-socket-ssl-perl libpdf-api2-perl libsoap-lite-perl libgd-text-perl libgd-graph-perl libapache-dbi-perl libarchive-zip-perl libcrypt-eksblowfish-perl libcrypt-ssleay-perl libencode-hanextra-perl libjson-xs-perl libmail-imapclient-perl libtemplate-perl libtext-csv-xs-perl libxml-libxml-perl libxml-libxslt-perl libpdf-api2-simple-perl libyaml-libyaml-perl

安裝完成後,我們需要為 apache 激活 Perl 模塊,接著重啟 apache 服務。

a2enmod perl
systemctl restart apache2

接下來,使用下面的命令檢查模塊是否已經載入了:

apachectl -M | sort

Enable Apache Perl Module

你可以在 「Loaded Modules」 部分下看到 perl_module

步驟 3 - 為 OTRS 創建新用戶

OTRS 是一個基於 web 的程序並且運行與 apache web 伺服器下。為了安全,我們需要以普通用戶運行它,而不是 root 用戶。

使用 useradd 命令創建一個 otrs 新用戶:

useradd -r -d /opt/otrs -c 'OTRS User' otrs
  • -r:將用戶作為系統用戶。
  • -d /opt/otrs:在 /opt/otrs 下放置新用戶的主目錄。
  • -c:備註。

接下來,將 otrs 用戶加入到 www-data 用戶組,因為 apache 運行於 www-data 用戶及用戶組。

usermod -a -G www-data otrs

/etc/passwd 文件中已經有 otrs 用戶了。

grep -rin otrs /etc/passwd

Create new user for OTRS

OTRS 的新用戶已經創建了。

步驟 4 - 創建和配置資料庫

在這節中,我們會為 OTRS 系統創建一個新 PostgreSQL 資料庫,並對 PostgreSQL 資料庫的配置做一些小的更改。

登錄到 postgres 用戶並訪問 PostgreSQL shell。

su - postgres
psql

創建一個新的角色 otrs,密碼是 myotrspw,並且是非特權用戶。

create user otrs password 'myotrspw' nosuperuser;

接著使用 otrs 用戶許可權創建一個新的 otrs 資料庫:

create database otrs owner otrs;
q

接下來為 otrs 角色驗證編輯 PostgreSQL 配置文件。

vim /etc/postgresql/9.5/main/pg_hba.conf

在 84 行後粘貼下面的配置:

local   otrs            otrs                                    password
host    otrs            otrs            127.0.0.1/32            password

保存文件並退出 vim

Database Authentication OTRS

使用 exit 回到 root 許可權並重啟 PostgreSQL:

exit
systemctl restart postgresql

PostgreSQL 已經為 OTRS 的安裝準備好了。

Configure PostgreSQL for OTRS

步驟 5 - 下載和配置 OTRS

在本教程中,我們會使用 OTRS 網站中最新的版本。

進入 /opt 目錄並使用 wget 命令下載 OTRS 5.0:

cd /opt/
wget http://ftp.otrs.org/pub/otrs/otrs-5.0.16.tar.gz

展開該 otrs 文件,重命名目錄並更改所有 otrs 的文件和目錄的所屬人為 otrs

tar -xzvf otrs-5.0.16.tar.gz
mv otrs-5.0.16 otrs
chown -R otrs:otrs otrs

接下來,我們需要檢查系統並確保可以安裝 OTRS 了。

使用下面的 otrs 腳本命令檢查 OTRS 安裝需要的系統軟體包:

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

確保所有的結果是對的,這意味著我們的伺服器可以安裝 OTRS 了。

OTRS Chek Module needed for Installation

OTRS 已下載,並且我們的伺服器可以安裝 OTRS 了。

接下,進入 otrs 目錄並複製配置文件。

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

使用 vim 編輯 Config.pm 文件:

vim Kernel/Config.pm

更改 42 行的資料庫密碼:

$Self->{DatabasePw} = 'myotrspw';

注釋 45 行的 MySQL 資料庫支持:

# $Self->{DatabaseDSN} = "DBI:mysql:database=$Self->{Database};host=$Self->{DatabaseHost};";

取消注釋 49 行的 PostgreSQL 資料庫支持:

$Self->{DatabaseDSN} = "DBI:Pg:dbname=$Self->{Database};";

保存文件並退出 vim。

接著編輯 apache 啟動文件來啟用 PostgreSQL 支持。

vim scripts/apache2-perl-startup.pl

取消注釋 60 和 61 行:

# enable this if you use postgresql
use DBD::Pg ();
use Kernel::System::DB::postgresql;

保存文件並退出編輯器。

最後,檢查缺失的依賴和模塊。

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

你可以在下面的截圖中看到結果是 「OK」:

Check all modules again

步驟 6 - 導入樣本資料庫

在本教程中,我們會使用樣本資料庫,這可以在腳本目錄中找到。因此我們只需要將所有的樣本資料庫以及表結構導入到第 4 步創建的資料庫中。

登錄到 postgres 用戶並進入 otrs 目錄中。

su - postgres
cd /opt/otrs/

作為 otrs 用戶使用 psql 命令插入資料庫以及表結構。

psql -U otrs -W -f scripts/database/otrs-schema.postgresql.sql otrs
psql -U otrs -W -f scripts/database/otrs-initial_insert.postgresql.sql otrs
psql -U otrs -W -f scripts/database/otrs-schema-post.postgresql.sql otrs

在需要的時候輸入資料庫密碼 myotrspw

Import OTRS Sample Database

步驟 7 - 啟動 OTRS

資料庫以及 OTRS 已經配置了,現在我們可以啟動 OTRS。

將 otrs 的文件及目錄許可權設置為 www-data 用戶和用戶組。

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

通過創建一個新的鏈接文件到 apache 虛擬主機目錄中啟用 otrs apache 配置。

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

啟用 otrs 虛擬主機並重啟 apache。

a2ensite otrs
systemctl restart apache2

確保 apache 啟動沒有錯誤。

Enable OTRS Apache Virtual Host

步驟 8 - 配置 OTRS 計劃任務

OTRS 已經安裝並運行在 Apache Web 伺服器中了,但是我們仍然需要配置 OTRS 計劃任務。

登錄到 otrs 用戶,接著以 otrs 用戶進入 var/cron 目錄。

su - otrs
cd var/cron/
pwd

使用下面的命令複製所有 .dist 計劃任務腳本:

for foo in *.dist; do cp $foo `basename $foo .dist`; done

使用 exit 回到 root 許可權,並使用 otrs 用戶啟動計劃任務腳本。

exit
/opt/otrs/bin/Cron.sh start otrs

Enable OTRS Cron

接下來,手動收取電子郵件的 PostMaster 創建一個新的計劃任務。我會配置為每 2 分鐘收取一次郵件。

su - otrs
crontab -e

粘貼下面的配置:

*/2 * * * *    $HOME/bin/otrs.PostMasterMailbox.pl >> /dev/null

保存並退出。

現在停止 otrs 守護進程並再次啟動。

bin/otrs.Daemon.pl stop
bin/otrs.Daemon.pl start

Enable OTRS Fetching Email

OTRS 安裝以及配置完成了。

步驟 9 - 測試 OTRS

打開你的 web 瀏覽器並輸入你的伺服器 IP 地址: http://192.168.33.14/otrs/

使用默認的用戶 root@localhost 以及密碼 root 登錄。

Installation Successfully OTRS Home Page

使用默認的 root 賬戶你會看到一個警告。點擊警告信息來創建一個新的 admin root 用戶。

下面是用另外的 admin root 用戶登錄後出現的 admin 頁面,這裡沒有出現錯誤信息。

OTRS Admin Dashboard Without Error Messages

如果你想作為客戶登錄,你可以使用 customer.plhttp://192.168.33.14/otrs/customer.pl

你會看到客戶登錄界面,輸入客戶的用戶名和密碼。

OTRS Customer Login Page

下面是一個創建新單據的客戶頁面。

Customer Open Ticket

步驟 10 - 疑難排查

如果你仍舊看到 「OTRS Daemon is not running」 的錯誤,你可以像這樣調試 OTRS 守護進程。

su - otrs
cd /opt/otrs/

停止 OTRS 守護進程:

bin/otrs.Daemon.pl stop

使用 --debug 選項啟動 OTRS 守護進程。

bin/otrs.Daemon.pl start --debug

參考

via: https://www.howtoforge.com/tutorial/how-to-install-otrs-opensource-trouble-ticket-system-on-ubuntu-16-04/

作者:Muhammad Arul 譯者:geekpi 校對:wxy

本文由 LCTT 原創編譯,Linux中國 榮譽推出


本文轉載來自 Linux 中國: https://github.com/Linux-CN/archive

對這篇文章感覺如何?

太棒了
0
不錯
0
愛死了
0
不太好
0
感覺很糟
0
雨落清風。心向陽

    You may also like

    Leave a reply

    您的電子郵箱地址不會被公開。 必填項已用 * 標註

    此站點使用Akismet來減少垃圾評論。了解我們如何處理您的評論數據

    More in:Linux中國