Anleitung - Ubuntu 14.04 LTS Server - Tomcat 7 mit Apache Server in 15 Minuten installieren und konfigurieren

Damit mal wieder etwas Leben in die Bude kommt hier eine kurze Anleitung, wie man innerhalb von 10-15 Minuten einen Tomcat Server in Verbindung mit Apache auf einem Ubuntu Server System (14.04) installiert und konfiguriert.

Zunächst müssen die benötigten Pakete installiert werden. Neben Apache 2 und Tomcat 7 wird zusätzlich Java benötigt.

Für den richtigen Betrieb ist ebenfalls mod-jk von Nöten, diese Modul leitet Anfragen an den Apache mit Hilfe des Protokolls AJP an Tomcat weiter.

Installation

sudo apt-get update

sudo apt-get install apache2

sudo apt-get install tomcat7

sudo apt-get install openjdk-7-jre-headless

sudo apt-get install libapache2-mod-jk

Nachdem alle Pakete installiert sind, müssen einige Dateien konfiguriert werden:

Tomcat Konfiguration

Das Arbeitsverzeichnis und den Worker Prozess für Tomcat festlegen:

nano /etc/apache2/workers.properties

workers.tomcat_home=/var/lib/tomcat7
workers.java_home=/usr/lib/jvm/java-7-openjdk-amd64
ps=/
worker.list=worker1
worker.worker1.port=8009
worker.worker1.host=localhost
worker.worker1.type=ajp13
worker.worker1.lbfactor=1

Dem Mod-JK Modul mitteilen wo diese Datei zu finden ist und Wo Fehler und Co gelogt werden sollen:

nano /etc/apache2/mods-enabled/jk.conf

JkWorkersFile /etc/apache2/workers.properties

JkLogFile /var/log/apache2/mod_jk.log

Dem Tomcat Server mitteilen, dass der AJP Prozess verwendet werden soll, dazu muss folgender String aktiviert werden:

nano /etc/tomcat7/server.xml

<Connector port="8009" protocol="AJP/1.3" redirectPort="8443" />

Apache Server konfigurieren

Zunächst erfolgt die Konfiguration für die zukünftige Seite an sich. Natürlich mit SSL. Hierzu werden bereits Schlüsselpfade hinterlegt, welche im nächsten Schritt noch erstellt werden müssen. Wichtig ist das Einbinden von JKMount, damit Tomcat und Apache zusammen arbeiten. FYI: Es wird der Bereich innerhalb von "VirtualHost _default_:443" angepasst.

sudo nano /etc/apache2/sites-available/default-ssl.conf

ServerAdmin
webmaster@localhost
ServerName tomcatsrv:443
DocumentRoot /var/lib/tomcat7/webapps/ROOT/
SSLEngine on
SSLCertificateFile /etc/apache2/crypt/tomcatsrv.crt
SSLCertificateKeyFile /etc/apache2/crypt/tomcatsrv.key
JKMount /ROOT* worker1

Verschlüsselung aktivieren

Damit der Server gleich eine sichere Verbindung verwendet, wird http erst gar nicht konfiguriert, sondern gleich https aktiviert. 

sudo a2enmod ssl

sudo mkdir /etc/apache2/crypt

sudo openssl req -x509 -nodes -days 365 -newkey rsa:2048 -keyout /etc/apache2/crypt/tomcatsrv.key -out /etc/apache2/crypt/tomcatsrv.crt

Den richtigen CN in unserem Fall "tomcatsrv" vergeben.

Am Ende sollten alle Dienste neu gestartet werden

Neustart der Dienste

sudo service apache2 restart

sudo service tomcat7 restart

Sollte es zu Fehlern bei der Konfiguration gekommen sein, werdet ihr das beim Neustarten der Dienste bemerken. Alternativ kann ein Blick ins Log nie schaden.

Sollte unverhofft alles glatt gehen, müsstet ihr unter https://tomcatserv:443 die Tomcat Startseite finden ("ROOT"). Viel Erfolg. 

Trackbacks

Trackback specific URI for this entry

This link is not meant to be clicked. It contains the trackback URI for this entry. You can use this URI to send ping- & trackbacks from your own blog to this entry. To copy the link, right click and select "Copy Shortcut" in Internet Explorer or "Copy Link Location" in Mozilla.

ITrig on : Hardening Apache Server - In 5min einen Webserver sicherer machen

Continue reading "Hardening Apache Server - In 5min einen Webserver sicherer machen"
Letzte Woche hatte ich euch kurz erklärt wie sich ein Apache in Verbindung mit einem Tomcat installieren lässt. Um auf der sicheren Seite zu sein, wurde der Apache gleich mit SSL &quot;SSLEngine on&quot; und einem selbstsignierten Zertifikat konfigur

Comments

Display comments as Linear | Threaded

No comments

Add Comment

E-Mail addresses will not be displayed and will only be used for E-Mail notifications.
Enclosing asterisks marks text as bold (*word*), underscore are made via _word_.