Ubuntu18.04でOTRSを使用してヘルプデスクシステムを設定する方法
著者は、 Free Software Foundation を選択して、 Write forDOnationsプログラムの一環として寄付を受け取りました。
序章
OTRS は、OペンソースT icket R equest S システムとも呼ばれ、ヘルプデスクとITサービス管理システム。 これは、ユーザー、顧客、IT担当者、ITサービス、および外部組織に単一の連絡先を提供します。 このプログラムはPerlで記述されており、さまざまなデータベース( MySQL 、 PostgreSQL など)をサポートし、LDAPディレクトリと統合できます。 ]。
このチュートリアルでは、Ubuntu18.04サーバーにOTRSCommunity Editionをインストールし、シンプルなヘルプデスクシステムをセットアップします。これにより、Webインターフェイスと電子メールの両方を使用して顧客からの要求を受信および処理できます。
前提条件
このチュートリアルを完了するには、次のものが必要です。
- Ubuntu 18.04 の初期サーバーセットアップガイドに従ってセットアップされたUbuntu18.04サーバー。これには、sudo権限を持つroot以外のユーザーと、
ufw
で構成されたファイアウォールが含まれます。 - UbuntuサーバーにインストールされているApacheとMySQL。 これらを構成するには、このガイドのステップ1および2に従ってください。
- 完全に登録されたドメイン名。 このチュートリアルでは、全体を通して
example.com
を使用します。 Namecheap でドメイン名を購入するか、 Freenom で無料でドメイン名を取得するか、選択したドメイン登録事業者を使用できます。 - 次の両方のDNSレコードがサーバー用に設定されています。 それらを追加する方法の詳細については、このDigitalOceanDNSの紹介に従ってください。
- サーバーのパブリックIPアドレスを指す
example.com
のAレコード。 - サーバーのパブリックIPアドレスを指す
www.example.com
のAレコード。
- サーバーのパブリックIPアドレスを指す
- ドメインのUbuntu18.04サーバーにインストールされているTLS/SSL証明書。 Let's Encrypt on Ubuntu 18.04ガイドに従って、無料のTLS/SSL証明書を取得できます。
- チュートリアルUbuntu18.04にPostfixをインストールして設定する方法に従って設定されたPostfixメール転送エージェント。
- (オプション)IMAPアクセスが有効になっている専用のGmailアカウント、 2段階認証プロセス、およびで生成されたアプリパスワード ]その他(カスタム名)オプション。 アプリのパスワードを生成するときは、手順5で使用できるように書き留めておきます。 Gmailを使用して、GmailをIMAPSメールボックスとして、OTRSでの受信メールチケットの作成を構成します。 これはOTRSの受信メールを設定する1つの方法にすぎません。 他のオプションを検討したい場合は、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
次のような出力が表示され、既にダウンロードしたモジュールと不足しているモジュールが一覧表示されます。
Output 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
を使用しますが、このチュートリアルでは、Ubuntu18.04の推奨ベストプラクティスであるapt
コマンドを使用して不足しているモジュールをインストールします。 これらのモジュールを手動で実行するか、次のコマンドを使用してください。
$ 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
出力には、インストールされているすべてのモジュールが表示されます。
Output... 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とその依存関係がインストールされたので、ApacheとMySQLを使用するようにOTRSを設定できます。
ステップ2— OTRS、Apache、およびMySQLサーバーの構成
このステップでは、OTRSのシステムユーザーを作成し、OTRSと連携するようにApacheおよびMySQLサーバーを構成します。
otrs
という名前のユーザーを作成して、useradd
コマンドで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
これにより、次の出力が生成されます。
OutputSetting 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_packet
およびquery_cache_size
の場合、次のコードブロックで強調表示されているように、値をそれぞれ64M
および32M
に変更します。
/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
これにより、データベースのログファイルサイズが設定され、文字セットと照合が決定され、MySQLサーバーの起動時に文字セットを設定するinit_connect
文字列が作成されます。
CTRL
+ X
、Y
、ENTER
の順に押して、mysqld.cnf
を保存して閉じます。 次に、MySQLサーバーを再起動して、新しいパラメーターを適用します。
sudo systemctl restart mysql.service
otrs
ユーザーを作成し、OTRSと連携するようにApacheとMySQLを構成したので、Webインストーラーを使用する準備が整いました。
ステップ3—Webインストーラーの使用
このステップでは、WebブラウザでOTRSのデータベース設定を構成し、コマンドラインでOTRSデーモンプロセスを開始します。
お気に入りのウェブブラウザでhttps://example.com/otrs/installer.pl
を開き、example.com
をドメイン名に置き換えます。 メッセージWelcometo OTRS6とOTRSオフィスに関する情報が表示されたウェルカム画面が表示されます。
次へをクリックします。 次の画面には、オープンソースプログラムに共通の GNU General PublicLicenseであるOTRSのライセンスが表示されます。 ライセンスに同意し、読んだ後にを続行してをクリックして同意します。
次の画面で、データベースの種類を選択するように求められます。 デフォルト(MySQLおよびOTRSの新しいデータベースの作成)はセットアップに適しているので、次へをクリックして続行します。
次の画面で、MySQLサーバーのインストール中に設定したMySQLクレデンシャルを入力します。 Userフィールドにrootを使用し、作成したパスワードを入力します。 デフォルトのホスト値のままにします。
データベース設定の確認をクリックして、機能することを確認します。 インストーラーは、新しいデータベースの資格情報を生成します。 この生成されたパスワードを覚えておく必要はありません。
次へをクリックして続行します。
データベースが作成され、成功した結果が表示されます。
次へをクリックします。
次に、次の必要なシステム設定を提供します。
- システムFQDN:完全修飾ドメイン名。
example.com
を独自のドメイン名に置き換えます。 - AdminEmail :システム管理者のメールアドレス。 OTRSのエラーに関するメールはここに送られます。
- 組織:組織の名前。
他のすべてのオプションはデフォルト値のままにします。
次へをクリックします。
これで、メール設定ページが表示されます。 メールを送受信できるようにするには、メールアカウントを設定する必要があります。 このチュートリアルでは、ステップ5の後半でこれを処理するため、このステップをスキップをクリックします。
これでOTRSのインストールが完了しました。 終了ページが表示され、開始ページの後に管理パネルへのリンクが表示され、その後にOTRSスーパーユーザーの資格情報が表示されます。 root @localhostユーザー用に生成されたパスワードとスタートページ用のURLを必ず書き留めてください。
インストールが成功した後に残っているのは、OTRSデーモンを起動してそのcronjob
をアクティブにすることだけです。
Ubuntu18.04サーバーへのアクセスに使用しているターミナルを起動します。 OTRSデーモンはOTRSの非同期で繰り返されるタスクを処理する責任があります。 otrs
ユーザーで開始します。
sudo su - otrs -c "/opt/otrs/bin/otrs.Daemon.pl start"
次の出力が表示されます。
OutputManage the OTRS daemon process. Daemon started
/opt/otrs/var/cron/
ディレクトリには2つのデフォルトのcronファイルがあります。 このディレクトリに移動します。
cd /opt/otrs/var/cron
これらのcronファイルは、OTRSデーモンが実行されていることを確認するために使用されます。 .dist
ファイル名拡張子なしでコピーしてアクティブにします。
sudo cp aaa_base.dist aaa_base sudo cp otrs_daemon.dist otrs_daemon
これらのcronジョブをスケジュールするには、otrs
ユーザーでスクリプトCron.sh
を使用します。
sudo su - otrs -c "/opt/otrs/bin/Cron.sh start"
これで、Webインストーラーを使用してOTRSをインストールし、MySQLデータベースへの接続をセットアップしました。 また、サーバー上でOTRSデーモンを開始しました。 次に、管理者のWebインターフェースにログインし、OTRSを保護します。
ステップ4—OTRSを確保する
現在、あなたは完全に機能するアプリケーションを持っていますが、OTRSでスーパーユーザーアカウントを使用することは安全ではありません。 代わりに、新しいエージェントを作成します。 OTRSでは、エージェントはシステムのさまざまな機能に対する権利を持つユーザーです。 この例では、システムのすべての機能にアクセスできる単一のエージェントを使用します。
開始するには、 root @localhostとしてログインします。 前の手順で受け取ったスタートページリンクを開きます。 手順3でコピーしたユーザー名とパスワードにroot@ localhost と入力し、ログインをクリックします。
メインダッシュボードが表示されます。 チケット、統計、ニュースなどに関するさまざまな情報を表示するウィジェットがいくつか含まれています。 設定でドラッグまたは表示を切り替えることで、自由に再配置できます。
まず、新しいエージェントを作成します。 これを行うには、画面上部にある赤いメッセージをクリックしてリンクをたどります。 スーパーユーザーアカウントを使用してOTRS6を操作しないでください! 新しいエージェントを作成し、代わりにこれらのアカウントを使用してください。 これはあなたをに連れて行きますエージェント管理画面。
エージェントの追加ボタンをクリックします。 これにより、エージェントの追加画面が表示されます。 デフォルトのオプションのほとんどは問題ありません。 名、姓、ユーザー名、パスワード、および電子メールのフィールドに入力します。 将来のログインのためにユーザー名とパスワードを記録します。 保存ボタンをクリックしてフォームを送信してください。
次に、新しいエージェントのグループ関係を変更します。 エージェントは管理者にもなるため、すべてのグループへの完全な読み取りおよび書き込みアクセスをエージェントに与えることができます。 これを行うには、右側のRWの横にあるエージェントのグループ関係の変更の下にあるチェックボックスをクリックします。
最後に、保存して終了をクリックします。
ここで、新しく作成したアカウントを使用してログアウトし、再度ログインします。 左上のアバター画像をクリックすると、ログアウトリンクが表示されます。
再度ログインしたら、アバターメニューの個人設定をクリックして、エージェントの設定をカスタマイズできます。 そこで、パスワードの変更、インターフェース言語の選択、セットアップ通知とお気に入りのキューの構成、インターフェーススキンの変更などを行うことができます。
新しいエージェントとしてログインし、好みに合わせてアカウントを構成したら、次のステップは、受信メールオプションを構成して、受信メールからチケットを生成することです。
ステップ5—受信メールの設定
顧客は、新しいチケットをOTRSに転送する2つの方法があります:顧客のフロントエンドを介するか、電子メールを送信することです。 顧客のメッセージを受信するには、POPまたはIMAPアカウントを設定する必要があります。 このチュートリアルでは、前提条件として作成した専用のOTRSGmailアカウントを使用します。
トップメニューの管理者をクリックして、[管理者]タブに移動します。 次に、 PostMasterメールアカウントオプションを見つけて、それをクリックします。 メールアカウントの追加ボタンを押して、新しいメールボックスを設定します。
メールアカウントの追加画面で、タイプにIMAPSを選択します。 ユーザー名にGmailアドレスを入力し、パスワードにGmailアカウント用に生成したアプリパスワードを前提条件に入力します。 他のすべてのオプションはデフォルトのままにします。 保存をクリックします。
注: Gmailアカウントで安全性の低いアプリアクセスを有効にすることで、2段階認証プロセスなしでGmailforIMAPSを使用できます。 これを行う方法の説明は、Googleヘルプセンターにあります。 ただし、この方法は安全性が低く、安全性の低いアプリアクセスが有効になるまでに最大24時間かかる場合があります。 Appパスワード方式を使用することをお勧めします。
次に、外部のメールアカウントから専用のOTRSGmailアカウントにテストメールを送信します。 メールはOTRSデーモンによって10分ごとにフェッチされますが、メールのフェッチリンクをクリックして強制的に受信することができます。
その結果、新しいチケットが表示されます。
これで、顧客からのチケットを電子メールで受け取る準備が整いました。 次に、顧客のフロントエンドを介してチケットを作成するプロセスを実行します。
ステップ6—カスタマーインターフェイスの操作
顧客がチケットを作成するための2番目の方法は、OTRSフロントエンドを使用することです。 このステップでは、このプロセスをウォークスルーして、このチケット作成方法が設定されていることを確認します。
カスタマーフロントエンドはhttps://example.com/otrs/customer.pl
にあります。 Webブラウザでそれに移動します。 そこで顧客アカウントを作成し、GUIを使用してチケットを送信できます。
今すぐサインアップリンクを使用して、登録フォームを開きます。
フォームに記入し、作成ボタンを押します。
次のようなメッセージが表示されます。
New account created. Sent login information to [email protected]. 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: [email protected] 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の管理対象データベース製品を参照してください。