OTRS (Open-Source Trouble Ticket System Software) ist eine ausgeklügelte Open-Source-Software, die von Unternehmen verwendet wird, um ihren Betrieb in Bezug auf Kundensupport, Helpdesk, Callcenter und mehr zu verbessern. OTRS ist in PERL geschrieben und bietet die folgenden wichtigen Funktionen:
- Kunden können sich über das Kundenportal und per E-Mail, Telefon und Fax bei jeder Warteschlange (Postfach für Betreuer/Techniker) registrieren und ein Ticket erstellen/mit ihm interagieren.
- Tickets können nach Priorität, Zuordnung, Übermittlung und Nachverfolgung verwaltet werden. Ein Ticket kann geteilt, zusammengeführt, Massenaktionen angewendet, Verknüpfungen untereinander und Benachrichtigungen gesetzt werden. Dienste können über den Dienstkatalog konfiguriert werden.
- Um die Teamkapazität zu erhöhen, können automatische E-Mails (automatische Antworten), Textvorlagen und Signaturen konfiguriert werden. Das System unterstützt Notizen und Anhänge zu Tickets.
- Weitere Funktionen umfassen:Statistiken und Berichte (CSV/PDF), SLA und viele andere Funktionen.
Die Umgebung
Dieser Artikel behandelt die Installation und grundlegende Konfiguration von OTRS 5. Dieser Artikel wurde basierend auf der folgenden Umgebung geschrieben:Eine Virtual Box-VM mit CENTOS 7 Minimal, 2 GB RAM, 8 GB HD und 2 Netzwerkschnittstellen (nur Host und NAT).
Vorbereitung
Angenommen, Sie verwenden eine Neuinstallation von Centos 7 Minimal, führen Sie vor der Installation von OTRS den folgenden Befehl aus, um das System zu aktualisieren und zusätzliche Pakete zu installieren:
yum update
Transaction Summary ================================================================================ Install 1 Package Upgrade 39 Packages Total download size: 91 M Is this ok [y/d/N]: y
Installieren Sie einen Texteditor oder verwenden Sie VI. In diesem Artikel verwenden wir VIM, führen Sie den folgenden Befehl aus, um es zu installieren:
yum install vim
Führen Sie den folgenden Befehl aus, um das WGET-Paket zu installieren:
yum install wget
Um das Centos 7-Netzwerk zu konfigurieren, führen Sie den folgenden Befehl aus, um das NMTUI-Tool (Network Manager Text User Interface) zu öffnen und die Schnittstellen und den Hostnamen bei Bedarf zu bearbeiten:
nmtui
Führen Sie nach der Einrichtung der Netzwerkeinstellungen und des Hostnamens unter CentOS 7 den folgenden Befehl aus, um die Änderungen zu übernehmen:
service networks restart
Führen Sie den folgenden Befehl aus, um die Netzwerkinformationen zu überprüfen:
ip addr
Die Ausgabe sieht auf meinem System so aus:
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN qlen 1 link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00 inet 127.0.0.1/8 scope host lo valid_lft forever preferred_lft forever inet6 ::1/128 scope host valid_lft forever preferred_lft forever 2: enp0s3: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP qlen 1000 link/ether 08:00:27:67:bc:73 brd ff:ff:ff:ff:ff:ff inet 10.0.2.15/24 brd 10.0.2.255 scope global dynamic enp0s3 valid_lft 84631sec preferred_lft 84631sec inet6 fe80::9e25:c982:1091:90eb/64 scope link valid_lft forever preferred_lft forever 3: enp0s8: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP qlen 1000 link/ether 08:00:27:68:88:f3 brd ff:ff:ff:ff:ff:ff inet 192.168.56.101/24 brd 192.168.56.255 scope global dynamic enp0s8 valid_lft 1044sec preferred_lft 1044sec inet6 fe80::a00:27ff:fe68:88f3/64 scope link valid_lft forever preferred_lft forever
Deaktivieren Sie SELINUX (Security Enhanced Linux) auf Centos 7, bearbeiten Sie die folgende Konfigurationsdatei:
vim /etc/selinux/config
"/etc/selinux/config" 14L, 547C# This file controls the state of SELinux on the system. # SELINUX= can take one of these three values: # enforcing - SELinux security policy is enforced. # permissive - SELinux prints warnings instead of enforcing. # disabled - No SELinux policy is loaded. SELINUX=enforcing # SELINUXTYPE= can take one of three two values: # targeted - Targeted processes are protected, # minimum - Modification of targeted policy. Only selected processes are prootected. # mls - Multi Level Security protection. SELINUXTYPE=targeted
Ändern Sie den Wert erzwingen der Direktive SELINUX auf deaktiviert , speichern Sie die Datei und starten Sie den Server neu.
Führen Sie den folgenden Befehl aus, um den Status von SELinux auf Centos 7 zu überprüfen:
getenforce
Die Ausgabe muss sein:
Disabled
Installieren Sie MariaDB auf Centos 7
Um MariaDB auf Centos 7 zu installieren, führen Sie den folgenden Befehl aus:
yum -y install mariadb-server
Erstellen Sie die Datei mit dem Namen zotrs.cnf im folgenden Verzeichnis:
/etc/my.cnf.d/
Führen Sie den folgenden Befehl aus, um die Datei zu erstellen und zu bearbeiten:
vim /etc/my.cnf.d/zotrs.cnf
Füllen Sie die Datei mit folgendem Inhalt und speichern Sie sie:
max_allowed_packet = 20M query_cache_size = 32M innodb_log_file_size = 256M
Führen Sie zum Starten von MariaDB den folgenden Befehl aus:
systemctl start mariadb
Um die Sicherheit von MariaDB zu erhöhen, führen Sie den folgenden Befehl aus:
/usr/bin/mysql_secure_installation
Richten Sie die Optionen gemäß der folgenden Ausgabe ein:
NOTE: RUNNING ALL PARTS OF THIS SCRIPT IS RECOMMENDED FOR ALL MariaDB SERVERS IN PRODUCTION USE! PLEASE READ EACH STEP CAREFULLY! In order to log into MariaDB to secure it, we'll need the current password for the root user. If you've just installed MariaDB, and you haven't set the root password yet, the password will be blank, so you should just press enter here. Enter current password for root (enter for none):<Press Enter>
OK, successfully used password, moving on... Setting the root password ensures that nobody can log into the MariaDB root user without the proper authorisation. Set root password? [Y/n] <Press Y>
Legen Sie das Root-Passwort fest:
New password: Re-enter new password: Password updated successfully! Reloading privilege tables.. ... Success! By default, a MariaDB installation has an anonymous user, allowing anyone to log into MariaDB without having to have a user account created for them. This is intended only for testing, and to make the installation go a bit smoother. You should remove them before moving into a production environment. Remove anonymous users? [Y/n] <Press Y>
... Success! Normally, root should only be allowed to connect from 'localhost'. This ensures that someone cannot guess at the root password from the network. Disallow root login remotely? [Y/n] <Choose acording your needs>
... Success! By default, MariaDB comes with a database named 'test' that anyone can access. This is also intended only for testing, and should be removed before moving into a production environment. Remove test database and access to it? [Y/n] <Press Y>
- Dropping test database... ... Success! - Removing privileges on test database... ... Success! Reloading the privilege tables will ensure that all changes made so far will take effect immediately. Reload privilege tables now? [Y/n] <Press Y>
... Success! Cleaning up... All done! If you've completed all of the above steps, your MariaDB installation should now be secure. Thanks for using MariaDB!
Richten Sie MariaDB so ein, dass es beim Booten automatisch gestartet wird:
systemctl enable mariadb.service
Um OTRS herunterzuladen, führen Sie den folgenden Befehl aus:
wget http://ftp.otrs.org/pub/otrs/RPMS/rhel/7/otrs-5.0.15-01.n oarch.rpm
EPEL installieren
Bevor wir OTRS installieren, richten Sie das EPEL-Repository auf Centos 7 ein. Führen Sie dazu den folgenden Befehl aus:
[[email protected] ~]# yum -y http://mirror.globo.com/epel/7/x86_64/e/epel-r release-7-9.noarch.rpm
OTRS installieren
Installieren Sie OTRS mit dem folgenden Befehl:
yum install -nogpgcheck otrs-5.0.15-01.noarch.rpm
Eine Liste von Softwarepaketen wird installiert, z. Apache und alle Abhängigkeiten werden automatisch aufgelöst, am Ende der Ausgabe drücken Sie Y:
Transaction Summary ================================================================================ Install 1 Package (+143 Dependent packages) Total size: 148 M Total download size: 23 M Installed size: 181 M Is this ok [y/d/N]: y
Führen Sie zum Starten von Apache (httpd) den folgenden Befehl aus:
systemctl start httpd.service
Führen Sie den folgenden Befehl aus, um den Start von Apache (httpd) mit systemd auf Centos7 zu aktivieren:
systemctl enable httpd.service
Aktivieren Sie SSL in Apache und konfigurieren Sie ein selbstsigniertes Zertifikat. Installieren Sie das Mod_SSL-Modul für den Apache HTTP-Server, führen Sie den folgenden Befehl aus:
yum -y install mod_ssl
Wechseln Sie zum Generieren eines selbstsignierten SSL-Zertifikats in das folgende Verzeichnis:
cd /etc/pki/tls/certs/
Und führen Sie den folgenden Befehl aus, um den Schlüssel zu generieren (centos7.key ist der Name meines Zertifikats, Sie können ihn gerne ändern):
make centos7.key
umask 77 ; \ /usr/bin/openssl genrsa -aes128 2048 > centos7.key Generating RSA private key, 2048 bit long modulus .+++ .........................................................................................+++ e is 65537 (0x10001) Enter pass phrase: <Insert your Own Password>
Verifying - Enter pass phrase:<Retype the Password>
Führen Sie den folgenden Befehl aus, um den privaten SSL-Schlüssel des Servers mit OpenSSL zu generieren:
openssl rsa -in centos7.key -out centos7.key
Enter pass phrase for centos7.key: <Type the Password> writing RSA key
Führen Sie den folgenden Befehl aus, um die CSR-Datei (Certificate Signing Request) zu erstellen (centos7.csr ist der Name meines Zertifikats, Sie können ihn gerne ändern):
make centos7.csr
Füllen Sie die Fragen nach Ihren Bedürfnissen aus:
umask 77 ; \ /usr/bin/openssl req -utf8 -new -key centos7.key -out centos7.csr You are about to be asked to enter information that will be incorporated into your certificate request. What you are about to enter is what is called a Distinguished Name or a DN. There are quite a few fields but you can leave some blank For some fields there will be a default value, If you enter '.', the field will be left blank. -----
Country Name (2 letter code) [XX]:
State or Province Name (full name) []:
Locality Name (eg, city) [Default City]:
Organization Name (eg, company) [Default Company Ltd]:
Organizational Unit Name (eg, section) []:
Centos7 Common Name (eg, your name or your server's hostname) []:
Email Address []:
Please enter the following 'extra' attributes to be sent with your certificate request A challenge password []: <press enter>
An optional company name []:
Generieren Sie mit dem OpenSSL-Tool eine CSR (Certificate Signing Request) für den Server:
openssl x509 -in centos7.csr -out centos7.crt -req -signkey centos7.key
Die Ausgabe ist:
Signature ok subject=/C=BR/ST=SP/L=Campinas/O=Centos7/OU=Centos7/CN=centos7.local Getting Private key
Bevor wir die Datei ssl.conf bearbeiten, erstellen Sie mit dem folgenden Befehl eine Kopie der Datei:
cp /etc/httpd/conf.d/ssl.conf /etc/httpd/conf.d/ssl.conf.old
Bearbeiten Sie dann die Datei:
vim /etc/httpd/conf.d/ssl.conf
Suchen Sie die folgenden Anweisungen, kommentieren Sie jede aus und bearbeiten Sie sie wie folgt:
SSLCertificateKeyFile /etc/pki/tls/certs/centos7.key
SSLCertificateFile /etc/pki/tls/certs/centos7.csr
SSLProtocol -All +TLSv1 +TLSv1.1 +TLSv1.2
ServerName centos7.local:443
Starten Sie Apache mit dem folgenden Befehl neu:
systemctl restart httpd
Um OTRS zu zwingen, im https-Modus zu laufen, bearbeiten Sie die folgende Datei:
vim /etc/httpd/conf/httpd.conf
Entkommentieren Sie am Ende der Datei die folgende Direktive:
IncludeOptional conf.d/*.conf
Bearbeiten Sie die Datei zzz_otrs.conf:
vim /etc/httpd/conf.d/zzz_otrs.conf
Fügen Sie nach Zeile 26 (vor dem Zeilenmodul mod_version.c) die folgenden Anweisungen hinzu:
RewriteEngine On
RewriteCond %{HTTPS} off
RewriteRule (.*) https://%{HTTP_HOST}%{REQUEST_URI}
Starten Sie Apache neu:
[[email protected] ~]# systemctl restart httpd
Um erweiterte Funktionen in OTRS nutzen zu können, müssen wir einige PERL-Module installieren. Führen Sie den folgenden Befehl aus, um sie zu installieren:
yum -y install "perl(Text::CSV_XS)" "perl(Crypt::Eksblowfish::Bcrypt)" "perl(YAML::XS)" "perl(JSON::XS)" "perl(Encode::HanExtra)" "perl(Mail::IMAPClient)" "perl(ModPerl::Util)"
Das OTRS-System verfügt über ein Tool zum Überprüfen der PERL-Module. Führen Sie es wie folgt aus, um die Systemanforderungen zu überprüfen:
cd /opt/otrs/bin
und führe aus:
./otrs.CheckModules.pl
Die Ausgabe für unsere Konfiguration muss sein:
o Apache::DBI......................ok (v1.12) o Apache2::Reload..................ok (v0.13) o Archive::Tar.....................ok (v1.92) o Archive::Zip.....................ok (v1.30) o Crypt::Eksblowfish::Bcrypt.......ok (v0.009) o Crypt::SSLeay....................ok (v0.64) o Date::Format.....................ok (v2.24) o DBI..............................ok (v1.627) o DBD::mysql.......................ok (v4.023) o DBD::ODBC........................Not installed! (optional - Required to connect to a MS-SQL database.) o DBD::Oracle......................Not installed! (optional - Required to connect to a Oracle database.) o DBD::Pg..........................Not installed! Use: 'yum install "perl(DBD::Pg)"' (optional - Required to connect to a PostgreSQL database.) o Digest::SHA......................ok (v5.85) o Encode::HanExtra.................ok (v0.23) o IO::Socket::SSL..................ok (v1.94) o JSON::XS.........................ok (v3.01) o List::Util::XS...................ok (v1.27) o LWP::UserAgent...................ok (v6.13) o Mail::IMAPClient.................ok (v3.37) o IO::Socket::SSL................ok (v1.94) o ModPerl::Util....................ok (v2.000010) o Net::DNS.........................ok (v0.72) o Net::LDAP........................ok (v0.56) o Template.........................ok (v2.24) o Template::Stash::XS..............ok (undef) o Text::CSV_XS.....................ok (v1.00) o Time::HiRes......................ok (v1.9725) o Time::Piece......................ok (v1.20_01) o XML::LibXML......................ok (v2.0018) o XML::LibXSLT.....................ok (v1.80) o XML::Parser......................ok (v2.41) o YAML::XS.........................ok (v0.54)
Um den OTRS-Daemon mit dem Benutzer „otrs“ zu starten, führen Sie den folgenden Befehl aus:
su -c "/opt/otrs/bin/otrs.Daemon.pl start" -s /bin/bash otrs
Führen Sie den folgenden Befehl aus, um die CentOS 7-Firewall zu deaktivieren:
systemctl stop firewalld
Führen Sie Folgendes aus, um den automatischen Start der CentOS 7-Firewall zu deaktivieren:
systemctl disable firewalld.service
Starten Sie den OTRS-Daemon mit:
su -c "/opt/otrs/bin/otrs.Daemon.pl start" -s /bin/bash otrsCron.sh
Die Ausgabe des Befehls muss sein:
/opt/otrs/bin Cron.sh - start/stop OTRS cronjobs Copyright (C) 2001-2012 OTRS AG, http://otrs.org/ (using /opt/otrs) done
Wenn Sie den Status des OTRS-Daemons überprüfen möchten, führen Sie den folgenden Befehl aus:
su -c "/opt/otrs/bin/otrs.Daemon.pl status" -s /bin/bash otrsCron.sh
Konfiguration von OTRS in der Crontab. Ändern Sie den Benutzer root auf otrs und beginnen Sie mit der Bearbeitung der Crontab:
su otrs
crontab -e
Füllen Sie die Crontab mit folgendem Inhalt und speichern Sie sie:
# -- # Copyright (C) 2001-2016 OTRS AG, http://otrs.com/ # -- # This software comes with ABSOLUTELY NO WARRANTY. For details, see # the enclosed file COPYING for license information (AGPL). If you # did not receive this file, see http://www.gnu.org/licenses/agpl.txt. # -- # Who gets the cron emails? MAILTO="[email protected]" # -- # Copyright (C) 2001-2016 OTRS AG, http://otrs.com/ # -- # This software comes with ABSOLUTELY NO WARRANTY. For details, see # the enclosed file COPYING for license information (AGPL). If you # did not receive this file, see http://www.gnu.org/licenses/agpl.txt. # -- # check OTRS daemon status */5 * * * * $HOME/bin/otrs.Daemon.pl start >> /dev/null
Konfigurieren Sie OTRS auf CentOS 7
Öffnen Sie einen Webbrowser und öffnen Sie die URL https://centos7.local/otrs/installer.pl. Denken Sie daran, dass centos7.local der Name meines Servers ist, geben Sie Ihren Hostnamen oder Ihre IP-Adresse ein. Der erste Bildschirm zeigt die 4 Schritte zum Abschluss der OTRS-Installation, drücken Sie auf Weiter.
Lizenz:um fortzufahren, lesen und akzeptieren Sie die Lizenz, um fortzufahren:
Datenbankauswahl:Wählen Sie die Option MySQL aus und markieren Sie im Installationstyp die Option Neue Datenbank für OTRS erstellen und klicken Sie auf die Schaltfläche Weiter:
Konfigurieren Sie MySQL:Füllen Sie die Felder Benutzer, Passwort und Host aus (merken Sie sich die Daten der MariaDB-Konfiguration, die wir vorgenommen haben) und klicken Sie auf Datenbankeinstellungen prüfen:
Der OTRS-Installer erstellt die Datenbank in MariaDB, klicken Sie auf die Schaltfläche „Weiter“:
OTRS-Datenbank erfolgreich erstellt:
Systemeinstellungen konfigurieren:Füllen Sie die Felder mit Ihren eigenen Informationen aus und drücken Sie Weiter:
OTRS E-Mail-Konfiguration:Füllen Sie die Felder entsprechend Ihrem E-Mail-Server aus. In meinem Setup verwende ich für ausgehende E-Mails SMPTTLS und Port 587, für eingehende E-Mails verwende ich pop3, Sie benötigen ein E-Mail-Konto. Überprüfen Sie die E-Mail-Konfiguration oder überspringen Sie diesen Schritt:
Notieren Sie sich zum Abschluss den Benutzer und das Passwort für den Zugriff auf OTRS. Nach der Anmeldung können Sie das Passwort ändern:
Die OTRS-URL-Anmeldung lautet https://centos7.local/otrs/index.pl?. Denken Sie daran, dass centos7.local der Name meines Servers ist, geben Sie Ihren Hostnamen oder Ihre IP-Adresse ein.:
Melden Sie sich beim OTRS an:
OTRS ist installiert und kann mit Ihren Supportregeln oder Ihrem Geschäftsmodell konfiguriert werden.