From d5af25750b789783ba7ae4f6a97f944c732bc0d8 Mon Sep 17 00:00:00 2001 From: yvesf Date: Tue, 12 Apr 2011 15:38:27 +0200 Subject: aktulisierte website: mehr reports, bilder korrigiert --- devel-install.html | 274 ++++++++++++++--------------------------------------- 1 file changed, 69 insertions(+), 205 deletions(-) (limited to 'devel-install.html') diff --git a/devel-install.html b/devel-install.html index f840564..21e5157 100644 --- a/devel-install.html +++ b/devel-install.html @@ -1,10 +1,9 @@ - + - DHBW Calendar - - Installation Guide + DHBW Calendar - Installation Guide - + @@ -29,7 +28,7 @@
- Last Published: 2011-03-29 + Last Published: 2011-04-12  | Version: 1.0-SNAPSHOT
@@ -73,7 +72,7 @@ Mozilla Lightning
  • - Microsoft Outlook + Microsoft Tools
  • Entwickler
    @@ -103,210 +102,75 @@
    - - -

    Installation Guide

    -

    Mit Embedded Servlet Container

    -
    mvn jetty:run
    -

    Standardmäßig lauscht jetty nun auf Port 8080

    -
    -

    Mit .war File

    -

    - Ein Web-Archive (.war) kann mit dem Maven Kommando - mvn package - erzeugt werden. -

    -
    -
    -

    Installation unter SLES 11.1

    -

    - Es muss ein halbwegs aktuelles Java-JDK installiert sein, dieses - kann von - java.sun.com - für Linux/i386 heruntergeladen werden. -

    -

    - Für die Ausführung von dhbwcalender wird ein neuer Benutzer - mit Namen - dhbwcalendar - angelegt. -

    -

    - maven2 wird von - maven.apache.org - installiert in - /home/dhbwcalendar/share/apache-maven-2.2.1/ -

    -

    - Für den Benutzer dhbwcalendar wird in seiner - .profile - Datei die Umgebungsvariablen - JAVA_HOME - , - M2_HOME - (maven) entsprechend gesetzt -

    -

    - git wird mit zypper installiert: -

    # zypper ar \
    -					"http://download.opensuse.org/repositories/devel:/tools:/scm/SLE_11/devel:tools:scm.repo"
    -					# zypper install git
    -					# su -l dhbwcalendar
    -					$ git clone ....
    - -

    - Da im produktiven Setup jetty nicht von "aussen" erreichbar sein - soll wird jetty konfiguriert nur auf - localhost - zu horchen. -

    -					<connectors>
    -					<connector
    -					implementation="org.mortbay.jetty.nio.SelectChannelConnector">
    -					<port>8080</port>
    -					<host>127.0.0.1</host>
    -					</connector>
    -					</connectors>
    - -

    - Bei vaadin wird der - productionMode - aktiviert - src/main/webapp/WEB-INF/web.xml: -

    -					<context-param>
    -					<param-name>productionMode</param-name>
    -					<param-value>true</param-value>
    -					<description>Vaadin production mode</description>
    -					</context-param>
    - -

    - mvn jetty:run - startet Jetty über Maven als embedded Servlet Container. -

    -

    SSL

    -

    Zertifikat erstellen:

    -
    -					% keytool -keystore keystore -alias jetty -genkey -keyalg
    -					RSA
    -					Geben
    -					Sie das
    -					Keystore-Passwort ein:
    -					Geben Sie das Passwort erneut
    -					ein:
    -					Wie
    -					lautet
    -					Ihr Vor- und Nachname?
    -					[Unknown]: dualical.ba-horb.de
    -					(ACHTUNG
    -					Common-Name = Hostname!)
    -					Wie lautet der Name
    -					Ihrer
    -					organisatorischen
    -					Einheit?
    -					[Unknown]: DHBW Stuttgart Campus
    -					Horb
    -					Wie
    -					lautet der Name
    -					Ihrer Organisation?
    -					[Unknown]: Duale
    -					Hochschule
    -					Baden-Württemberg
    -					Wie lautet der Name Ihrer Stadt oder Gemeinde?
    -					[Unknown]: Horb
    -					Wie
    -					lautet der Name Ihres Bundeslandes oder Ihrer
    -					Provinz?
    -					[Unknown]:
    -					Baden-Württemberg
    -					Wie lautet der Landescode (zwei
    -					Buchstaben) für
    -					diese Einheit?
    -					[Unknown]: DE
    -					Ist CN=DHBW Calendar,
    -					OU=DHBW Stuttgart
    -					Campus Horb, O=Duale
    -					Hochschule Baden-Württemberg,
    -					L=Horb, ST=Baden-Württemberg,
    -					C=DE
    -					richtig?
    -					[Nein]: Ja
    +        

    Installation

    Mit Embedded Servlet Container

    mvn jetty:run

    Standardmäßig lauscht jetty nun auf Port 8080

    Mit Web-Archive (.war)

    Ein Web-Archive kann mit dem Maven Kommando mvn package gebaut werden.

    Installation unter SLES 11.1

    Vorbereitung

    Es muss ein halbwegs aktuelles Java-JDK installiert sein, dieses kann z.B. von }Oracle für Linux/i386 bezogen werden.

    Für die Ausführung von dhbw-calendar wird ein neuer Benutzer, z.B. mit namen dhbwcalendar angelegt.

    Maven2 in $HOME/share/apache-maven-2.2.1 installiert.

    Für den angelegten Benutzer wird in seiner $HOME/.profile-Datei die Umgebungsvariablen JAVA_HOME und M2_HOME auf die jeweiligen Installationspfade gesetzt.

    Git kann mit dem SuSe-Tool zypper installiert werden:

    # zypper ar \
    +  "http://download.opensuse.org/repositories/devel:/tools:/scm/SLE_11/devel:tools:scm.repo"
    +# zypper install git

    Einrichtung

    Das Projektverzeichnis wird mit git geklont:

    # su -l dhbwcalendar
    +$ git clone ....dhbw-calendar URL...

    Falls jetty verwendet wird und er im produktiven Setup nur auf dem Loopback Interface lauschen soll wird das in der pom.xml konfiguriert:

    <connectors>
    +  <connector
    +      implementation="org.mortbay.jetty.nio.SelectChannelConnector">
    +    <port>8080</port>
    +    <host>127.0.0.1</host>
    +  </connector>
    +</connectors>

    Bei vaadin wird der productionmode im Deskriptor der Web-Applikation aktiviert:

    <context-param>
    +  <param-name>productionMode</param-name>
    +  <param-value>true</param-value>
    +  <description>Vaadin production mode</description>
    +</context-param>

    SSL

    Zertifikat erstellen

    Achtung: Vor- Nachname ist der Common-Name = Hostname.

    % keytool -keystore keystore -alias jetty -genkey -keyalg RSA
    +Geben Sie das Keystore-Passwort ein:
    +Geben Sie das Passwort erneut ein:
     
    -					Geben Sie das
    -					Passwort für
    -					<jetty> ein.
    -					(EINGABETASTE, wenn Passwort dasselbe
    -					wie für
    -					Keystore):
    -				
    -

    SSL für Jetty konfigurieren:

    -
    -					<configuration>
    -					<connectors>
    -					<connector
    -					implementation="org.mortbay.jetty.nio.SelectChannelConnector">
    -					<port>8080</port>
    -					</connector>
    -					<connector
    -					implementation="org.mortbay.jetty.ssl.SslSelectChannelConnector">
    -					<port>8443</port>
    -					<keystore>${basedir}/server.keystore</keystore>
    -					<keyPassword>bla</keyPassword>
    -					<password>bla</password>
    -					</connector>
    -					</connectors>
    -					</configuration>
    -					<dependencies>
    -					<dependency>
    -					<groupId>org.mortbay.jetty</groupId>
    -					<artifactId>jetty-ssl</artifactId>
    -					<version>7.0.0.pre5</version>
    -					</dependency>
    -					</dependencies> 
    -

    Fingerprint von Zertifikat:

    -
    -					% keytool -list -keystore server.keystore -rfc
    -					Geben Sie das
    -					Keystore-Passwort ein:
    +Wie lautet Ihr Vor- und Nachname?
    +[Unknown]: dualical.ba-horb.de
    +Wie lautet der Name Ihrer organisatorischen Einheit?
    +[Unknown]: DHBW Stuttgart Campus Horb
    +Wie lautet der Name Ihrer Organisation?
    +[Unknown]: Duale Hochschule Baden-Württemberg
    +Wie lautet der Name Ihrer Stadt oder Gemeinde?
    +[Unknown]: Horb
    +Wie lautet der Name Ihres Bundeslandes oder Ihrer Provinz?
    +[Unknown]: Baden-Württemberg
    +Wie lautet der Landescode (zwei Buchstaben) für diese Einheit?
    +[Unknown]: DE
    +Ist CN=DHBW Calendar,OU=DHBW Stuttgart Campus Horb, O=Duale Hochschule Baden-Württemberg, L=Horb, ST=Baden-Württemberg, C=DE richtig?
    +[Nein]: Ja
    +Geben Sie das Passwort für "jetty" ein.
    +(EINGABETASTE, wenn Passwort dasselbe wie für Keystore):

    SSL in Jetty konfigurieren

    <configuration>
    +  <connectors>
    +    <connector
    +        implementation="org.mortbay.jetty.nio.SelectChannelConnector">
    +      <port>8080</port>
    +    </connector>
     
    -					Keystore-Typ: JKS
    -					Keystore-Provider: SUN
    +    <connector
    +        implementation="org.mortbay.jetty.ssl.SslSelectChannelConnector">
    +      <port>8443</port>
    +      <keystore>${basedir}/server.keystore</keystore>
    +      <keyPassword>bla</keyPassword>
    +      <password>bla</password>
    +    </connector>
    +  </connectors>
    +</configuration>
    +<dependencies>
    +  <dependency>
    +    <groupId>org.mortbay.jetty</groupId>
    +    <artifactId>jetty-ssl</artifactId>
    +    <version>7.0.0.pre5</version>
    +  </dependency>
    +</dependencies>

    Zertifikationsinfos

    SSL-Fingerprint:

    +% keytool -list -keystore server.keystore -rfc
    +Geben Sie das Keystore-Passwort ein:
    +Keystore-Typ: JKS
    +Keystore-Provider: SUN
     
    -					Ihr
    -					Keystore enthält
    -					1 Eintrag/-äge.
    +Ihr Keystore enthält 1 Eintrag/-äge.
     
    -					jetty, 29.03.2011, PrivateKeyEntry,
    -					Zertifikatsfingerabdruck (MD5):
    -					B6:CA:AF:1C:8C:B7:38:38:36:2A:30:3C:A5:C2:54:20
    +jetty, 29.03.2011, PrivateKeyEntry, Zertifikatsfingerabdruck (MD5):
    +B6:CA:AF:1C:8C:B7:38:38:36:2A:30:3C:A5:C2:54:20
     
    -					-----BEGIN
    -					CERTIFICATE-----
    -					....
    -					-----END CERTIFICATE-----
    -				
    -

    Die Verbindung kann jetzt mit wget überprüft werden

    -
    -					wget --ca-certificate=certificate.pem
    -					https://dualical.ba-horb.de:8443/dhbwcalendar/
    -				
    -

    Weitere Informationen zum Zertifikat zeigt OpenSSL in Klartext - an:

    -
    -					openssl x509 -noout -text -in certificate.pem
    -				
    -
    -

    Zugriff von 'aussen'

    -

    - Mittels php und curl lässt sich eine reverse-Proxy nachahmen. Ein - Beispiel findet sich unter: - ics.php.txt - . -

    -
    -
    - - + -----BEGIN CERTIFICATE----- +.... /Zertifikat im PEM Format/ + -----END CERTIFICATE-----

    Die Verbindung kann jetzt mit wget überprüft werden

    # wget --ca-certificate=certificate.pem \
    +      https://dualical.ba-horb.de:8443/dhbwcalendar/

    Weitere Informationen zum Zertifikat zeigt OpenSSL in Klartext an:

    # openssl x509 -noout -text -in certificate.pem

    Zugriff von 'aussen'

    Mit php und curl lässt sich eine reverse-Proxy nachahmen. Ein Beispiel findet sich unter: ics.php.txt.

    -- cgit v1.2.1