<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>Sebastian Mogilowskis Blog &#187; apache2</title>
	<atom:link href="http://www.mogilowski.net/lang/de-de/tag/apache2/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.mogilowski.net</link>
	<description>Just another blog about administration, linux and other stuff</description>
	<lastBuildDate>Thu, 26 Apr 2012 06:44:10 +0000</lastBuildDate>
	<language>de-de</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.3.2</generator>
		<item>
		<title>Install Tomcat 7 on Debian (Lenny) with virtual hosts and Apache2 integration</title>
		<link>http://www.mogilowski.net/lang/de-de/2010/12/11/install-tomcat-7-on-debian-lenny-with-virtual-hosts-and-apache2-integration</link>
		<comments>http://www.mogilowski.net/lang/de-de/2010/12/11/install-tomcat-7-on-debian-lenny-with-virtual-hosts-and-apache2-integration#comments</comments>
		<pubDate>Sat, 11 Dec 2010 12:22:24 +0000</pubDate>
		<dc:creator>sebastian</dc:creator>
				<category><![CDATA[Linux]]></category>
		<category><![CDATA[Apache]]></category>
		<category><![CDATA[apache2]]></category>
		<category><![CDATA[debian]]></category>
		<category><![CDATA[lenny]]></category>
		<category><![CDATA[tomcat]]></category>
		<category><![CDATA[virtualhost]]></category>

		<guid isPermaLink="false">http://www.mogilowski.net/?p=720</guid>
		<description><![CDATA[Dieser Artikel ist eine überarbeitete Version meines Tomcat 6 Artikels. Es soll Tomcat 7 unter Debian Lenny installiert werden und mit mehreren virtuellen Hosts betrieben werden. Tomcat 7 ist unter Debian leider nicht über die Quellen zu beziehen, deshalb muss er manuell installiert werden. Tomcat 7 ist aktuell noch BETA. Für produktive Server sollte man [...]]]></description>
			<content:encoded><![CDATA[<p><img src="http://www.mogilowski.net/wp-content/uploads/tomcat.gif" alt="" title=" tomcat" width="130" height="92" class="alignright size-full wp-image-723" /><br />
<span lang="de-de">Dieser Artikel ist eine überarbeitete Version meines <a href="http://www.mogilowski.net/2008/11/24/install-tomcat-6-on-debian-lenny-with-virtual-hosts-and-apache2-integration/" target="_blank">Tomcat 6 Artikels</a>. Es soll Tomcat 7 unter Debian Lenny installiert werden und mit mehreren virtuellen Hosts betrieben werden. Tomcat 7 ist unter Debian leider nicht über die Quellen zu beziehen, deshalb muss er manuell installiert werden.</span></p>
<p><strong><span lang="de-de">Tomcat 7 ist aktuell noch BETA. Für produktive Server sollte man lieber noch auf Tomcat 6 zurückgreifen.</span></strong></p>
<h4><span lang="de-de">1. Installation von Java 6 runtime:</span></h4>
<p><span lang="de-de">Eine der folgenden Java JDK Installationen wählen:</span></p>
<h4>1.1 OpenJDK</h4>
<pre>
aptitude install openjdk-6-jre
</pre>
<h4>1.2 Sun Java (non-free)</h4>
<pre>
vim /etc/apt/sources
</pre>
<pre>
deb http://ftp.de.debian.org/debian/ lenny main non-free
deb-src http://ftp.de.debian.org/debian/ lenny main non-free
</pre>
<pre>
aptitude update
aptitude install sun-java6-jre
</pre>
<p><em><span lang="de-de"><strong>Bemerkung:</strong> Nicht vergessen, dass eine andere Konfiguration beim Apache-Connector erforderlich sein wird, sollte Sun JDK verwendet werden.</span></em></p>
<h4>2. Download Tomcat</h4>
<p>Download Tomcat 7 <span lang="de-de">von der</span> <a title="Tomcat 7" href="http://tomcat.apache.org/download-70.cgi" target="_blank">Tomcat 7 Download</a> <span lang="de-de">Seite</span>.</p>
<p><span lang="de-de">Zum Beispiel:</span></p>
<pre>
wget http://artfiles.org/apache.org/tomcat/tomcat-7/v7.0.5-beta/bin/apache-tomcat-7.0.5.tar.gz
</pre>
<h4><span lang="de-de">3. Installation von Tomcat</span></h4>
<pre>
tar -xzvf apache-tomcat-7.0.5.tar.gz
mv apache-tomcat-7.0.5 /opt/tomcat
</pre>
<h4><span lang="de-de">4. Tomcat Benutzer und Gruppe anlegen</span></h4>
<pre>
groupadd tomcat
useradd -g tomcat -d /opt/tomcat tomcat
usermod -G www-data tomcat
chown tomcat:tomcat /opt/tomcat -R
</pre>
<p><span lang="de-de">Dies legt einen neuen Benutzer &#8220;tomcat&#8221; und eine neue Gruppe &#8220;tomcat&#8221; an. Außerdem wird das Home-Directory dieses Benutzers auf &#8220;/opt/tomcat&#8221; gesetzt. Der Benutzer wird außerdem in die Gruppe &#8220;www-data&#8221; verschoben. Dies ist notwendig um Zugriff auf die virtuellen Hosts des Apaches zu haben. Zum Schluss werden dem neuen Benutzer &#8220;tomcat&#8221; noch die Besitzrechte für den Ordner &#8220;/opt/tomcat&#8221; übertragen.</span></p>
<h4><span lang="de-de">5. Init-Skript erstellen</span></h4>
<pre>
vim /etc/init.d/tomcat
</pre>
<pre>
#!/bin/sh
#
# /etc/init.d/tomcat -- startup script for the Tomcat 7 servlet engine
#
# Modified init-Script from Ubuntu Tomcat init-script
#
# 2010 - Sebastian Mogilowski - http://www.mogilowski.net
#
### BEGIN INIT INFO
# Provides:          tomcat
# Required-Start:    $local_fs $remote_fs $network
# Required-Stop:     $local_fs $remote_fs $network
# Should-Start:      $named
# Should-Stop:       $named
# Default-Start:     2 3 4 5
# Default-Stop:      0 1 6
# Short-Description: Start Tomcat.
# Description:       Start the Tomcat servlet engine.
### END INIT INFO

set -e

PATH=/bin:/usr/bin:/sbin:/usr/sbin:/opt/tomcat
NAME=tomcat
DESC="Tomcat servlet engine"
DEFAULT=/etc/default/$NAME
JVM_TMP=/tmp/tomcat-tmp

if [ `id -u` -ne 0 ]; then
	echo "You need root privileges to run this script"
	exit 1
fi

# Make sure tomcat is started with system locale
if [ -r /etc/default/locale ]; then
	. /etc/default/locale
	export LANG
fi

. /lib/lsb/init-functions

if [ -r /etc/default/rcS ]; then
	. /etc/default/rcS
fi

# The following variables can be overwritten in $DEFAULT

# Run Tomcat 7 as this user ID and group ID
TOMCAT_USER=tomcat
TOMCAT_GROUP=tomcat

# The first existing directory is used for JAVA_HOME (if JAVA_HOME is not
# defined in $DEFAULT)
JDK_DIRS="/usr/lib/jvm/java-6-openjdk /usr/lib/jvm/java-6-sun /usr/lib/jvm/java-1.5.0-sun /usr/lib/j2sdk1.5-sun /usr/lib/j2sdk1.5-ibm"

# Look for the right JVM to use
for jdir in $JDK_DIRS; do
    if [ -r "$jdir/bin/java" -a -z "${JAVA_HOME}" ]; then
	JAVA_HOME="$jdir"
    fi
done
export JAVA_HOME

# Directory where the Tomcat binary distribution resides
CATALINA_HOME=/opt/$NAME

# Directory for per-instance configuration files and webapps
CATALINA_BASE=/opt/$NAME

# Use the Java security manager? (yes/no)
TOMCAT_SECURITY=no

# Default Java options
# Set java.awt.headless=true if JAVA_OPTS is not set so the
# Xalan XSL transformer can work without X11 display on JDK 1.4+
# It also looks like the default heap size of 64M is not enough for most cases
# so the maximum heap size is set to 128M
if [ -z "$JAVA_OPTS" ]; then
	JAVA_OPTS="-Djava.awt.headless=true -Xmx128M"
fi

# End of variables that can be overwritten in $DEFAULT

# overwrite settings from default file
if [ -f "$DEFAULT" ]; then
	. "$DEFAULT"
fi

if [ ! -f "$CATALINA_HOME/bin/bootstrap.jar" ]; then
	log_failure_msg "$NAME is not installed"
	exit 1
fi

POLICY_CACHE="$CATALINA_BASE/work/catalina.policy"

if [ -z "$CATALINA_TMPDIR" ]; then
	CATALINA_TMPDIR="$JVM_TMP"
fi

# Set the JSP compiler if set in the tomcat.default file
if [ -n "$JSP_COMPILER" ]; then
	JAVA_OPTS="$JAVA_OPTS -Dbuild.compiler=\"$JSP_COMPILER\""
fi

SECURITY=""
if [ "$TOMCAT_SECURITY" = "yes" ]; then
	SECURITY="-security"
fi

# Define other required variables
CATALINA_PID="/var/run/$NAME.pid"
CATALINA_SH="$CATALINA_HOME/bin/catalina.sh"

# Look for Java Secure Sockets Extension (JSSE) JARs
if [ -z "${JSSE_HOME}" -a -r "${JAVA_HOME}/jre/lib/jsse.jar" ]; then
    JSSE_HOME="${JAVA_HOME}/jre/"
fi

catalina_sh() {
	# Escape any double quotes in the value of JAVA_OPTS
	JAVA_OPTS="$(echo $JAVA_OPTS &#124; sed 's/\"/\\\"/g')"

	AUTHBIND_COMMAND=""
	if [ "$AUTHBIND" = "yes" -a "$1" = "start" ]; then
		JAVA_OPTS="$JAVA_OPTS -Djava.net.preferIPv4Stack=true"
		AUTHBIND_COMMAND="/usr/bin/authbind --deep /bin/bash -c "
	fi

	# Define the command to run Tomcat's catalina.sh as a daemon
	# set -a tells sh to export assigned variables to spawned shells.
	TOMCAT_SH="set -a; JAVA_HOME=\"$JAVA_HOME\"; source \"$DEFAULT\"; \
		CATALINA_HOME=\"$CATALINA_HOME\"; \
		CATALINA_BASE=\"$CATALINA_BASE\"; \
		JAVA_OPTS=\"$JAVA_OPTS\"; \
		CATALINA_PID=\"$CATALINA_PID\"; \
		CATALINA_TMPDIR=\"$CATALINA_TMPDIR\"; \
		LANG=\"$LANG\"; JSSE_HOME=\"$JSSE_HOME\"; \
		cd \"$CATALINA_BASE\"; \
		\"$CATALINA_SH\" $@"

	if [ "$AUTHBIND" = "yes" -a "$1" = "start" ]; then
		TOMCAT_SH="'$TOMCAT_SH'"
	fi

	# Run the catalina.sh script as a daemon
	set +e
	touch "$CATALINA_PID" "$CATALINA_BASE"/logs/catalina.out
	chown $TOMCAT_USER "$CATALINA_PID" "$CATALINA_BASE"/logs/catalina.out
	start-stop-daemon --start -b -u "$TOMCAT_USER" -g "$TOMCAT_GROUP" \
		-c "$TOMCAT_USER" -d "$CATALINA_TMPDIR" \
		-x /bin/bash -- -c "$AUTHBIND_COMMAND $TOMCAT_SH"
	status="$?"
	set +a -e
	return $status
}

case "$1" in
  start)
	if [ -z "$JAVA_HOME" ]; then
		log_failure_msg "no JDK found - please set JAVA_HOME"
		exit 1
	fi

	if [ ! -d "$CATALINA_BASE/conf" ]; then
		log_failure_msg "invalid CATALINA_BASE: $CATALINA_BASE"
		exit 1
	fi

	log_daemon_msg "Starting $DESC" "$NAME"
	if start-stop-daemon --test --start --pidfile "$CATALINA_PID" \
		--user $TOMCAT_USER --exec "$JAVA_HOME/bin/java" \
		>/dev/null; then

		# Regenerate POLICY_CACHE file
		umask 022
		echo "// AUTO-GENERATED FILE from /opt/tomcat/" \
			> "$POLICY_CACHE"
		echo ""  >> "$POLICY_CACHE"
		cat $CATALINA_BASE/conf/*.policy \
			>> "$POLICY_CACHE"

		# Remove / recreate JVM_TMP directory
		rm -rf "$JVM_TMP"
		mkdir -p "$JVM_TMP" &#124;&#124; {
			log_failure_msg "could not create JVM temporary directory"
			exit 1
		}
		chown $TOMCAT_USER "$JVM_TMP"

		catalina_sh start $SECURITY
		sleep 5
        	if start-stop-daemon --test --start --pidfile "$CATALINA_PID" \
			--user $TOMCAT_USER --exec "$JAVA_HOME/bin/java" \
			>/dev/null; then
			if [ -f "$CATALINA_PID" ]; then
				rm -f "$CATALINA_PID"
			fi
			log_end_msg 1
		else
			log_end_msg 0
		fi
	else
	        log_progress_msg "(already running)"
		log_end_msg 0
	fi
	;;
  stop)
	log_daemon_msg "Stopping $DESC" "$NAME"

	set +e
	if [ -f "$CATALINA_PID" ]; then
		start-stop-daemon --stop --pidfile "$CATALINA_PID" \
			--user "$TOMCAT_USER" \
			--retry=TERM/20/KILL/5 >/dev/null
		if [ $? -eq 1 ]; then
			log_progress_msg "$DESC is not running but pid file exists, cleaning up"
		elif [ $? -eq 3 ]; then
			PID="`cat $CATALINA_PID`"
			log_failure_msg "Failed to stop $NAME (pid $PID)"
			exit 1
		fi
		rm -f "$CATALINA_PID"
		rm -rf "$JVM_TMP"
	else
		log_progress_msg "(not running)"
	fi
	log_end_msg 0
	set -e
	;;
   status)
	set +e
	start-stop-daemon --test --start --pidfile "$CATALINA_PID" \
		--user $TOMCAT_USER --exec "$JAVA_HOME/bin/java" \
		>/dev/null 2>&#038;1
	if [ "$?" = "0" ]; then

		if [ -f "$CATALINA_PID" ]; then
		    log_success_msg "$DESC is not running, but pid file exists."
			exit 1
		else
		    log_success_msg "$DESC is not running."
			exit 3
		fi
	else
		log_success_msg "$DESC is running with pid `cat $CATALINA_PID`"
	fi
	set -e
        ;;
  restart&#124;force-reload)
	if [ -f "$CATALINA_PID" ]; then
		$0 stop
		sleep 1
	fi
	$0 start
	;;
  try-restart)
        if start-stop-daemon --test --start --pidfile "$CATALINA_PID" \
		--user $TOMCAT_USER --exec "$JAVA_HOME/bin/java" \
		>/dev/null; then
		$0 start
	fi
        ;;
  *)
	log_success_msg "Usage: $0 {start&#124;stop&#124;restart&#124;try-restart&#124;force-reload&#124;status}"
	exit 1
	;;
esac

exit 0
</pre>
<p><span lang="de-de">Herrunterladen des Init-Skripts:</span> <a class="downloadlink" href="http://www.mogilowski.net/wp-content/plugins/download-monitor/download.php?id=12" title="Version 0.1 heruntergeladen 1169 mal" >Tomcat 7 Init-Script (2.6 kB)</a></p>
<pre>
chmod +x /etc/init.d/tomcat
update-rc.d tomcat defaults
</pre>
<h4><span lang="de-de">6. Aktivieren des Tomcat Managers</span></h4>
<pre>
vim /opt/tomcat/conf/tomcat-users.xml
</pre>
<pre>
&#60;?xml version='1.0' encoding='utf-8'?&#62;
&#60;tomcat-users&#62;
    &#60;role rolename="manager"/&#62;
    &#60;role rolename="manager-gui"/&#62;
    &#60;role rolename="admin"/&#62;
    &#60;role rolename="admin-gui"/&#62;
    &#60;user username="YOUR_USERNAME" password="YOUR_PASSWORD" roles="admin,admin-gui,manager,manager-gui"/&#62;
&#60;/tomcat-users&#62;
</pre>
<h4>6. Start Tomcat</h4>
<pre>
/etc/init.d/tomcat start
</pre>
<p><span lang="de-de">Nun kann man den Tomcat Manager mit <strong>http://SERVER:8080/manager</strong> aufrufen.</span></p>
<p><a href="http://www.mogilowski.net/wp-content/uploads/tomcat7-manager.jpg"><img src="http://www.mogilowski.net/wp-content/uploads/tomcat7-manager.jpg" alt="" title=" tomcat7-manager" width="600" height="282" class="aligncenter size-full wp-image-724" /></a></p>
<h4><span lang="de-de">7. Installation des Apache2 Connectors</span></h4>
<p><span lang="de-de">Tomcat besitzt zwar einen eingebauten Webserver, jedoch ist der Apache2 Webserver wesentlich leistungsfähiger außerdem sind so die Apache Module verwendbar. (mod_rewrite zum Beipiel)</span><span lang="de-de"></span></p>
<pre>
aptitude install apache2 libapache2-mod-jk
</pre>
<h4><span lang="de-de">7.1 Apache worker</span></h4>
<pre>
vim /etc/apache2/workers.properties
</pre>
<pre>
workers.tomcat_home=/opt/tomcat
workers.java_home=/usr/lib/jvm/java-6-openjdk
ps=/
worker.list=default
worker.default.port=8009
worker.default.host=localhost
worker.default.type=ajp13
worker.default.lbfactor=1
</pre>
<p><em><span lang="de-de"><strong>Bemerkung:</strong> Falls die non-free Java Runtime von Sun verwendet wird, muss &#8220;/usr/lib/jvm/java-6-openjdk&#8221; durch &#8220;/usr/lib/jvm/java-6-sun&#8221; ersetzt werden.</span></em></p>
<h4><span lang="de-de">7.2 JK Konfigurationsdatei</span></h4>
<pre>
vim /etc/apache2/conf.d/jk.conf
</pre>
<pre>
&#60;ifmodule mod_jk.c&#62;
    JkWorkersFile /etc/apache2/workers.properties
    JkLogFile /var/log/apache2/mod_jk.log
    JkLogLevel error
&#60;/ifmodule&#62;
</pre>
<pre>
/etc/init.d/apache2 stop
/etc/init.d/tomcat restart
/etc/init.d/apache2 start
</pre>
<h4><span lang="de-de">8. Neuen Virtuellen Host anlegen</span></h4>
<p><span lang="de-de">Nun soll ein neuer VirtualHost angelegt werden. Dieser muss im Apache <strong>und</strong> im Tomcat angelegt werden.</span></p>
<h4><span lang="de-de">8.1 Verzeichnisse anlegen</span></h4>
<pre>
mkdir /var/www/vhost1
mkdir /var/www/vhost1/htdocs
mkdir /var/www/vhost1/logs
</pre>
<pre>
vim /etc/apache2/sites-available/vhost1
</pre>
<h4>8.2 Apache</h4>
<pre>
&#60;virtualhost www.testsrv.local&#62;
    JkMount /*.jsp default
    ServerName www.testsrv.local
    ServerAdmin servermaster@testsrv.local
    DocumentRoot /var/www/vhost1/htdocs
    ErrorLog /var/www/vhost1/logs/error.log
    CustomLog /var/www/vhost1/logs/access.log common
    &#60;directory /var/www/vhost1/htdocs&#62;
        Options -Indexes
    &#60;/directory&#62;
&#60;/virtualhost&#62;
</pre>
<p><em><span lang="de-de"><strong>Bemerkung:</strong> Man könnte auch alle Dateien an den Tomcat weiterleiten &#8220;JkMount /*&#8221; oder alle Dateien innerhalb eines Verzeichnisses &#8220;JkMount /folder/*&#8221;.</span><span lang="de-de"></span></em></p>
<pre>
a2ensite vhost1
/etc/init.d/apache2 reload
</pre>
<h4>8.3 Tomcat</h4>
<pre>
vim /opt/tomcat/conf/server.xml
</pre>
<pre>
&#60;!-- www.testsrv.local --&#62;
&#60;Host name=&#34;www.testsrv.local&#34; appBase=&#34;/var/www/vhost1&#34; unpackWARs=&#34;true&#34; autoDeploy=&#34;true&#34;&#62;
    &#60;Context path=&#34;&#34; docBase=&#34;htdocs&#34; debug=&#34;0&#34; reloadable=&#34;true&#34;/&#62;
    &#60;Valve className=&#34;org.apache.catalina.valves.AccessLogValve&#34; directory=&#34;/var/www/vhost1/logs&#34;  prefix=&#34;tomcat_access_&#34; suffix=&#34;.log&#34; pattern=&#34;common&#34; resolveHosts=&#34;false&#34;/&#62;
&#60;/Host&#62;
</pre>
<p><em><span lang="de-de"><strong>Bemerkung:</strong> Bitte sicherstellen, dass das &#8220;H&#8221;, &#8220;C&#8221; und &#8220;V&#8221; von &#8220;Host&#8221;, &#8220;Content&#8221; und &#8220;Value&#8221; groß geschrieben sind. Dies ist wichtig seit Version 7 von Tomcat.</span></em></p>
<pre>
/etc/init.d/tomcat restart
</pre>
<p><em><span lang="de-de"><strong>Bemerkung:</strong> Man kann weitere Domains mit:</span></em></p>
<pre>
&#60;Alias&#62;additionaldomain.com&#60;/Alias&#62;
</pre>
<p><em><span lang="de-de">hinzufügen.</span></em></p>
<h4><span lang="de-de">9. Testseite anlegen</span></h4>
<pre>
vim /var/www/vhost1/htdocs/test.jsp
</pre>
<pre>
&#60;html&#62;
    &#60;head&#62;
        &#60;title&#62;Hello World&#60;/title&#62;
    &#60;/head&#62;
    &#60;body&#62;
        &#60;h1&#62;Hello World&#60;/h1&#62;
        Today is: &#60;%= new java.util.Date().toString() %&#62;
    &#60;/body&#62;
&#60;/html&#62;
</pre>
<p><span lang="de-de"></span><span lang="de-de">Nun kann man durch den Aufruf von <strong>http://www.testsrv.local/test.jsp</strong> die Konfiguration/Installation testen.</span></p>
]]></content:encoded>
			<wfw:commentRss>http://www.mogilowski.net/lang/de-de/2010/12/11/install-tomcat-7-on-debian-lenny-with-virtual-hosts-and-apache2-integration/feed</wfw:commentRss>
		<slash:comments>35</slash:comments>
		</item>
		<item>
		<title>Secure Apache only for other networks</title>
		<link>http://www.mogilowski.net/lang/de-de/2009/03/19/secure-apache-only-for-other-networks</link>
		<comments>http://www.mogilowski.net/lang/de-de/2009/03/19/secure-apache-only-for-other-networks#comments</comments>
		<pubDate>Thu, 19 Mar 2009 09:06:24 +0000</pubDate>
		<dc:creator>sebastian</dc:creator>
				<category><![CDATA[Linux]]></category>
		<category><![CDATA[Apache]]></category>
		<category><![CDATA[apache2]]></category>
		<category><![CDATA[network]]></category>
		<category><![CDATA[secure]]></category>
		<category><![CDATA[statisfy]]></category>

		<guid isPermaLink="false">http://www.mogilowski.net/?p=346</guid>
		<description><![CDATA[Ich wurde nach einer Anleitung gefragt, um einen Apache 2 Webserver so abzusichern, das er nur aus dem lokalem Netzwerk erreichbar ist. Ich habe dies bereits bei BETA Webseiten und bei meinem Debian Router Projekt eingesetzt. Hier sind einige Beispiele: (192.168.5.0/24 ist hier das LAN, dies muss evtl. angepasst werden) 1. Nur lokalen Netzwerkzugriff erlauben [...]]]></description>
			<content:encoded><![CDATA[<p><span lang="de-de">Ich wurde nach einer Anleitung <a title="Comment" href="http://www.mogilowski.net/?p=121&#38;cpage=1#comment-104" target="_blank">gefragt</a>, um einen Apache 2 Webserver so abzusichern, das er nur aus dem lokalem Netzwerk erreichbar ist. Ich habe dies bereits bei BETA Webseiten und bei meinem <a title="Debian Router Projekt" href="http://www.mogilowski.net/?page_id=63" target="_self">Debian Router Projekt</a> eingesetzt.</span></p>
<p><span lang="de-de">Hier sind einige Beispiele: (192.168.5.0/24 ist hier das LAN, dies muss evtl. angepasst werden)</span></p>
<h3><span lang="de-de">1. Nur lokalen Netzwerkzugriff erlauben</span></h3>
<pre>
&#60;Directory /var/www/htdocs&#62;
        Options FollowSymLinks
        AllowOverride None
        DirectoryIndex index.htm

        Order deny,allow
        Deny from all
        Allow from 192.168.5.0/24
&#60;/Directory&#62;
</pre>
<h3><span lang="de-de">2. Lokalen Zugriff erlauben, von allen anderen Passwort anfordern</span></h3>
<pre>
&#60;Directory /var/www/htdocs&#62;
        Options FollowSymLinks
        AllowOverride None
        DirectoryIndex index.htm

        Order deny,allow
        Deny from all
        Allow from 192.168.5.0/24
        AuthUserFile /var/www/.htpasswd
        AuthName "Private"
        AuthType Basic
        Require valid-user
        Satisfy Any
&#60;/Directory&#62;
</pre>
<p><span lang="de-de">Mit &#8220;Statisfy&#8221; kann mehr als eine Authentifizierungsmethode verwendet werden. Mit &#8220;Statisfy All&#8221; sind beide Bedingungen erforderlich, mit &#8220;Statisfy Any&#8221; ist nur eine der Bedingungen erforderlich.</span></p>
<p><span lang="de-de">Vielleicht werden noch Webserviceanfragen auf localhost benötigt, dann sollte man 127.0.0.1 zu dem erlaubten Hosts hinzufügen:</span></p>
<pre>Allow from 192.168.5.0/24 127.0.0.1</pre>
<h3><span lang="de-de">Bemerkung:</span></h3>
<p><span lang="de-de">Diese Methode ist nicht sehr sicher. Man kann sie für einfache Bereiche einsetzen wie einen Beta webserver. Es ist sehr einfach diese Sicherung mit SNAT zu umgehen.</span></p>
<pre>iptables -t nat -A POSTROUTING -s REALIP -o eth0 -p tcp -m tcp -j SNAT --to-source 192.168.5.224</pre>
<p><span lang="de-de">Dieser iptables Befehl, ändert die Quell-IP aller TCP Pakete von REALIP zu 192.168.5.224 auf dem Interface eth0.</span></p>

<p><a title="Apache2 Statisfy Doku" href="http://buecher.lingoworld.de/apache2/showdir.php?id=680" target="_blank"></a><span lang="de-de"></span></p>
]]></content:encoded>
			<wfw:commentRss>http://www.mogilowski.net/lang/de-de/2009/03/19/secure-apache-only-for-other-networks/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Create an iCalendar server with debian 5.0 lenny</title>
		<link>http://www.mogilowski.net/lang/de-de/2009/02/16/create-an-icalendar-server-with-debian-50-lenny</link>
		<comments>http://www.mogilowski.net/lang/de-de/2009/02/16/create-an-icalendar-server-with-debian-50-lenny#comments</comments>
		<pubDate>Mon, 16 Feb 2009 09:06:10 +0000</pubDate>
		<dc:creator>sebastian</dc:creator>
				<category><![CDATA[Linux]]></category>
		<category><![CDATA[5.0]]></category>
		<category><![CDATA[Apache]]></category>
		<category><![CDATA[apache2]]></category>
		<category><![CDATA[calendar]]></category>
		<category><![CDATA[debian]]></category>
		<category><![CDATA[ical]]></category>
		<category><![CDATA[icalender]]></category>
		<category><![CDATA[lenny]]></category>
		<category><![CDATA[sunbird]]></category>

		<guid isPermaLink="false">http://www.mogilowski.net/?p=302</guid>
		<description><![CDATA[Zuerst benötigt man einen funktionsfähigen Apache2 Webserver mit dem Modul &#8220;dav_fs&#8221;. Wenn man iCal über SSL verwenden will, muss der Apache2 Webserver zusätzlich mit &#8220;mod_ssl&#8221; konfiguriert sein. a2enmod dav_fs Nun muss man die Apache Konfiguration anpassen: Folgende Konfiguration in den entsprechenden &#8220;virtualhost&#8221; einfügen; Alias /iCalendar /your/path/to/iCalendar &#60;location /iCalendar&#62; DAV On &#60;/location&#62; Nun kann man z.B. [...]]]></description>
			<content:encoded><![CDATA[<p><span lang="de-de">Zuerst benötigt man einen funktionsfähigen Apache2 Webserver mit dem Modul &#8220;dav_fs&#8221;. Wenn man iCal über SSL verwenden will, muss der Apache2 Webserver zusätzlich mit &#8220;mod_ssl&#8221; konfiguriert sein.</span></p>
<pre>
a2enmod dav_fs
</pre>
<p><span lang="de-de">Nun muss man die Apache Konfiguration anpassen:</span></p>
<p><span lang="de-de">Folgende Konfiguration in den entsprechenden &#8220;virtualhost&#8221; einfügen;</span></p>
<pre>
Alias /iCalendar /your/path/to/iCalendar
&#60;location /iCalendar&#62;
    DAV On
&#60;/location&#62;
</pre>
<p><br />
<span lang="de-de">Nun kann man z.B. mit Sunbird einen neuen Kalender anlegen. Dazu einfach einen neuen Kalender hinzufügen, &#8220;Network calendar&#8221; und &#8220;iCalendar (ICS)&#8221; auswählen. Anschließend die URL zum Kalenderserver eingeben:  &#8220;http://your.server.address/iCalendar/myCalendar.ics&#8221; (Oder https)</span></p>
<p><span lang="de-de">Natürlich kann man das Kalenderverzeichnis auch mit Benutzername und Passwort absichern:</span></p>
<p><span lang="de-de">Beispiel mit MySQL-autentifizierung:</span></p>
<pre>
Alias /iCalendar /your/path/to/iCalendar
&#60;location /iCalendar&#62;
    DAV On
    AuthBasicAuthoritative Off
    AuthUserFile /dev/null
    AuthMySQL On
    AuthName "Calendar"
    AuthType Basic
    Auth_MySQL_Host localhost
    Auth_MySQL_User DB_USER
    Auth_MySQL_Password DB_PASS
    AuthMySQL_DB DB_NAME
    AuthMySQL_Password_Table DB_TABLE
    Auth_MySQL_Username_Field DB_USER_FIELD
    Auth_MySQL_Password_Field DB_PASSWORD_FIELD
    Auth_MySQL_Empty_Passwords Off
    Auth_MySQL_Encryption_Types Crypt_DES
    Auth_MySQL_Authoritative On
    require valid-user
&#60;/location&#62;
</pre>
<p><span lang="de-de">Beispiel mit Password-file:</span></p>
<pre>
Alias /iCalendar /your/path/to/iCalendar
&#60;location /iCalendar&#62;
    DAV On
    AuthName "Calendar"
    AuthUserFile "/your/path/to/.htpasswd"
    require valid-user
&#60;/location&#62;
</pre>
<p><span lang="de-de">Das Password-file anlegen:</span></p>
<pre>
htpasswd -c /your/path/to/.htpasswd MY_USER
</pre>
<p><span lang="de-de">Jetzt muss man die URL zu seinem Kalender in Sunbird ändern zu &#8220;http://MY_USER:MY_PASSWORD@your.server.address/iCalendar/myCalendar.ics&#8221;.</span></p>
<p><span lang="de-de">Wenn man zusätzlich ein Webinterface für seinen Kalender haben will, sollte man sich <a title="http://www.php-calendar.com" href="http://www.php-calendar.com" target="_blank">http://www.php-calendar.com</a> ansehen.</span></p>
<div class="ngg-galleryoverview" id="ngg-gallery-16-302">

	<!-- Slideshow link -->
	<div class="slideshowlink">
		<a class="slideshowlink" href="http://www.mogilowski.net/lang/de-de/2009/02/16/create-an-icalendar-server-with-debian-50-lenny?show=slide">
			[Show as slideshow]		</a>
	</div>

	
	<!-- Thumbnails -->
		
	<div id="ngg-image-135" class="ngg-gallery-thumbnail-box"  >
		<div class="ngg-gallery-thumbnail" >
			<a href="http://www.mogilowski.net/wp-content/gallery/icalendar/bildschirmfoto-week-8-calendar.png" title=" " class="shutterset_set_16" >
								<img title="bildschirmfoto-week-8-calendar.png" alt="bildschirmfoto-week-8-calendar.png" src="http://www.mogilowski.net/wp-content/gallery/icalendar/thumbs/thumbs_bildschirmfoto-week-8-calendar.png" width="100" height="75" />
							</a>
		</div>
	</div>
	
		
 		
	<div id="ngg-image-136" class="ngg-gallery-thumbnail-box"  >
		<div class="ngg-gallery-thumbnail" >
			<a href="http://www.mogilowski.net/wp-content/gallery/icalendar/bildschirmfoto-mycalendar-sonntag-15-februar-mozilla-firefox.png" title=" " class="shutterset_set_16" >
								<img title="bildschirmfoto-mycalendar-sonntag-15-februar-mozilla-firefox.png" alt="bildschirmfoto-mycalendar-sonntag-15-februar-mozilla-firefox.png" src="http://www.mogilowski.net/wp-content/gallery/icalendar/thumbs/thumbs_bildschirmfoto-mycalendar-sonntag-15-februar-mozilla-firefox.png" width="100" height="75" />
							</a>
		</div>
	</div>
	
		
 	 	
	<!-- Pagination -->
 	
 	
</div>

]]></content:encoded>
			<wfw:commentRss>http://www.mogilowski.net/lang/de-de/2009/02/16/create-an-icalendar-server-with-debian-50-lenny/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Secure Apache 2 with mod-security 2 on Debian Lenny</title>
		<link>http://www.mogilowski.net/lang/de-de/2008/12/03/secure-apache-2-with-mod-security-2-on-debian-lenny</link>
		<comments>http://www.mogilowski.net/lang/de-de/2008/12/03/secure-apache-2-with-mod-security-2-on-debian-lenny#comments</comments>
		<pubDate>Wed, 03 Dec 2008 08:59:03 +0000</pubDate>
		<dc:creator>sebastian</dc:creator>
				<category><![CDATA[General]]></category>
		<category><![CDATA[Linux]]></category>
		<category><![CDATA[Apache]]></category>
		<category><![CDATA[apache2]]></category>
		<category><![CDATA[apche]]></category>
		<category><![CDATA[debian]]></category>
		<category><![CDATA[etch]]></category>
		<category><![CDATA[lenny]]></category>
		<category><![CDATA[mod-log-sql-mysql]]></category>
		<category><![CDATA[mod_security]]></category>
		<category><![CDATA[paket]]></category>
		<category><![CDATA[security]]></category>

		<guid isPermaLink="false">http://www.mogilowski.net/?p=183&#038;lang=de-de</guid>
		<description><![CDATA[Dieser Artikel beschreibt, wie man mod_security2 auf Debian Lenny installiert. Es sollte ebenso unter Etch funktionieren. Auf der http://www.modsecurity.org website findet man den Link zu den mod_security Debian Paketen. (Community-Produced Binary packages) Bemerkung: Man sollte auf der Webseite nach den neusten Versionen schauen und die Beispiel &#8220;wget&#8221; Befehle in dieser Anleitung anpassen. 1. Herrunterladen der [...]]]></description>
			<content:encoded><![CDATA[<p><span lang="de-de">Dieser Artikel beschreibt, wie man mod_security2 auf Debian Lenny installiert. Es sollte ebenso unter Etch funktionieren.</span></p>
<p><span lang="de-de">Auf der <a href="http://www.modsecurity.org" target="_blank">http://www.modsecurity.org</a> website findet man den Link zu den mod_security Debian Paketen. (Community-Produced Binary packages)</span></p>
<p><em><span lang="de-de">Bemerkung: Man sollte auf der Webseite nach den neusten Versionen schauen und die Beispiel &#8220;wget&#8221; Befehle in dieser Anleitung anpassen.</span></em></p>
<h3><span lang="de-de">1. Herrunterladen der Pakete und Installation mit dpkg:</span></h3>
<pre>
wget http://etc.inittab.org/~agi/debian/libapache-mod-security2/2.5.x/etch/libapache2-mod-security2_2.5.5-1~etch1_amd64.deb
wget http://etc.inittab.org/~agi/debian/libapache-mod-security2/2.5.x/etch/mod-security2-common_2.5.5-1~etch1_all.deb

dpkg -i mod-security2-common_2.5.5-1~etch1_all.deb libapache2-mod-security2_2.5.5-1~etch1_amd64.deb
</pre>
<p><em><span lang="de-de">Bemerkung: Man benötigt ggf. ein anderes Paket als amd64 !!!</span></em></p>
<h3><span lang="de-de">2. Unterverzeichnis für die mod_security Regeln im Apache Konfigurationsverzeichnis anlegen:</span></h3>
<pre>
mkdir /etc/apache2/modsecurity2
chmod 600 /etc/apache2/modsecurity2
</pre>
<h3><span lang="de-de">3. Herrunterladen der Regeln von <a href="http://www.modsecurity.org/download/direct.html" target="_blank">http://www.modsecurity.org/download/direct.html</a></span></h3>
<pre>
wget http://www.modsecurity.org/download/modsecurity-core-rules_2.5-1.6.1.tar.gz
</pre>
<p><span lang="de-de">anschließend entpacken und die conf-Dateien in das angelegte Verzeichnis verschieben:</span></p>
<pre>
tar vfx modsecurity-core-rules_2.5-1.6.1.tar.gz
mv *.conf /etc/apache2/modsecurity2/
</pre>
<h3><span lang="de-de">4. Außerdem muss man einen Symlink anlegen um das Apache Log-Verzeichnis an das von Debian anzupassen.</span></h3>
<p><span lang="de-de">(Oder man passt alle Regeln an <img src='http://www.mogilowski.net/wp-includes/images/smilies/icon_smile.gif' alt=':-)' class='wp-smiley' /> )</span></p>
<pre>
ln -s /var/log/apache2 /etc/apache2/logs
</pre>
<h3><span lang="de-de">5. Modsecurity aktivieren</span></h3>
<pre>
a2enmod mod-security
</pre>
<h3><span lang="de-de">6. Konfiguration</span></h3>
<p><span lang="de-de">Bearbeiten de Datei <i>&#8220;/etc/apache2/conf.d/mod_security&#8221;</i>:</span></p>
<pre>
        # mod_security configuration directives
        # ...
        # Turn the filtering engine On or Off
        SecFilterEngine On

        # Some sane defaults
        #Check if URL characters where encoded
        SecFilterCheckURLEncoding On
        #Check UTF-8 encoding
        SecFilterCheckUnicodeEncoding Off

        #Allow 1 byte characters
        # Accept almost all byte values
        SecFilterForceByteRange 0 255

        # Server masking is optional
        # SecServerSignature "Microsoft-IIS/0.0"

        SecAuditEngine RelevantOnly
        # The name of the audit log file
        SecAuditLog /var/log/apache2/audit_log

        # You normally won't need debug logging
        # Debug level set to a minimum
        SecFilterDebugLog /var/log/apache2/modsec_debug_log
        SecFilterDebugLevel 0

        # Should mod_security inspect POST payloads
        SecFilterScanPOST On

        # By default log and deny suspicious requests
        # with HTTP status 500
        SecFilterDefaultAction "deny,log,status:500"
</pre>
<h3><span lang="de-de">7. Nun nur noch den Apache Webserver neu starten:</span></h3>
<pre>
/etc/init.d/apache2 restart
</pre>
<h3>8. Links:</h3>
<p><a href="http://www.modsecurity.org" target="_blank">http://www.modsecurity.org</a><br />
<a href="http://www.howtoforge.com/apache_mod_security" target="_blank">http://www.howtoforge.com/apache_mod_security</a><br />
<a href="http://www.debuntu.org/2006/08/13/86-secure-your-apache2-with-mod-security" target="_blank">http://www.debuntu.org/2006/08/13/86-secure-your-apache2-with-mod-security</a></p>
]]></content:encoded>
			<wfw:commentRss>http://www.mogilowski.net/lang/de-de/2008/12/03/secure-apache-2-with-mod-security-2-on-debian-lenny/feed</wfw:commentRss>
		<slash:comments>4</slash:comments>
		</item>
		<item>
		<title>Log Apache2 access log into a MySQL database on Debian Lenny</title>
		<link>http://www.mogilowski.net/lang/de-de/2008/11/26/log-apache2-access-log-into-a-mysql-database-on-debian-lenny</link>
		<comments>http://www.mogilowski.net/lang/de-de/2008/11/26/log-apache2-access-log-into-a-mysql-database-on-debian-lenny#comments</comments>
		<pubDate>Wed, 26 Nov 2008 08:29:27 +0000</pubDate>
		<dc:creator>sebastian</dc:creator>
				<category><![CDATA[General]]></category>
		<category><![CDATA[Linux]]></category>
		<category><![CDATA[access]]></category>
		<category><![CDATA[access log]]></category>
		<category><![CDATA[Apache]]></category>
		<category><![CDATA[apache2]]></category>
		<category><![CDATA[debian]]></category>
		<category><![CDATA[lenny]]></category>
		<category><![CDATA[log]]></category>
		<category><![CDATA[mod-log-sql-mysql]]></category>
		<category><![CDATA[mysql]]></category>

		<guid isPermaLink="false">http://www.mogilowski.net/?p=176&#038;lang=de-de</guid>
		<description><![CDATA[Dieser Artikel beschreibt wie man Apache sein Access Log in eine MySQL Datenbank schreiben lässt. Man benötigt einen installierten und konfigurierten Apache2 Webserver sowie MySQL Datenbankserver. Installation: Auf dem Webserver: aptitude install libapache2-mod-log-sql-mysql a2enmod unique_id Auf dem Datenbankserver: Erstelle eine Datenbank &#8220;apachelogs&#8221; und einen entsprechenden Benutzer für diese Datenbank. Konfiguration des virtuellen Hosts: Ersetze &#8220;PASSWORD&#8221; [...]]]></description>
			<content:encoded><![CDATA[<p><span lang="de-de"> Dieser Artikel beschreibt wie man Apache sein Access Log in eine MySQL Datenbank schreiben lässt.</span></p>
<p><span lang="de-de"> Man benötigt einen installierten und konfigurierten Apache2 Webserver sowie MySQL Datenbankserver.</span></p>
<h3><span lang="de-de">Installation:</span></h3>
<p><strong><span lang="de-de"> Auf dem Webserver:</span></strong></p>
<pre>
aptitude install libapache2-mod-log-sql-mysql
a2enmod unique_id
</pre>
<p><strong><span lang="de-de"> Auf dem Datenbankserver:</span></strong></p>
<p><span lang="de-de"> Erstelle eine Datenbank &#8220;apachelogs&#8221; und einen entsprechenden Benutzer für diese Datenbank.</span></p>
<p><strong><span lang="de-de">Konfiguration des virtuellen Hosts:</span></strong></p>
<p><em><span lang="de-de"> Ersetze &#8220;PASSWORD&#8221; und &#8220;DATABASE_SERVER&#8221; mit deinen eigenen Daten.</span></em></p>
<pre>
LogSQLLoginInfo mysql://apachelogs:PASSWORD@DATABASE_SERVER/apachelogs
LogSQLCreateTables on
LogSQLDBParam socketfile /var/run/mysqld/mysqld.sock
LogSQLTransferLogFormat IAbPcMfRhluTrmHtUapzqQsSV

&#60;virtualhost www.testsrv.local:80&#62;
ServerName www.testsrv.local
ServerAdmin servermaster@testsrv.local
DocumentRoot /var/www/vhost1/htdocs
ErrorLog /var/www/vhost1/logs/error.log
CustomLog /var/www/vhost1/logs/access.log common

LogSQLTransferLogTable vhost1_access_log

&#60;/virtualhost&#62;
</pre>
<pre>
/etc/init.d/apache2 reload
</pre>
<p><span lang="de-de"><em>mod-log-sql-mysql wird nun eine Tabelle &#8220;vhost1_access_log&#8221; erstellen und die Access Log Einträge dort speichern.</em></span></p>
<h3><span lang="de-de">Probleme:</span></h3>
<p><span lang="de-de"> Es können verschiedene Probleme im Apache Error log auftauchen nach der Installation des Moduls:</span></p>
<p>1. &#8220;No such file or directory: attempted append of local preserve file &#8216;/etc/apache2/logs/mod_log_sql-preserve&#8217; but failed.&#8221;</p>
<p><span lang="de-de"> Man muss das Verzeichnis &#8220;/etc/apache2/logs&#8221; manuell anlegen oder einen entsprechenden Symlink auf &#8220;/var/log/apache2&#8243;.</span></p>
<p>2. &#8220;failed to create table: score_board&#8221;</p>
<p><span lang="de-de"> Es gibt ein Problem bei der automatischen Erstellung der &#8220;scoreboard&#8221; Tabelle, sie muss per Hand angelegt werden:</span></p>
<pre>
CREATE TABLE IF NOT EXISTS `scoreboard` (
`id` int(14) NOT NULL auto_increment,
`vhost` varchar(50) NOT NULL default '',
`bytes_sent` int(14) NOT NULL default '0',
`count_hosts` int(12) NOT NULL default '0',
`count_visits` int(12) NOT NULL default '0',
`count_status_200` int(12) NOT NULL default '0',
`count_status_404` int(12) NOT NULL default '0',
`count_impressions` int(18) NOT NULL default '0',
`last_run` int(14) NOT NULL default '0',
`month` int(4) NOT NULL default '0',
`year` int(4) NOT NULL default '0',
`domain` varchar(50) NOT NULL default '',
`bytes_receive` int(14) NOT NULL default '0',
PRIMARY KEY  (`id`),
UNIQUE KEY `vhost` (`vhost`,`month`,`year`,`domain`)
) TYPE=MyISAM;
</pre>
<p><span lang="de-de"> Danke an Alexandre Bulté für die Lösung !</span></p>
<h3>Links:</h3>
<p><a href="http://blog.bulte.net/2008/04/apache-modlogsql-problem-with.html" target="_blank">http://blog.bulte.net/2008/04/apache-modlogsql-problem-with.html</a><br />
<a href="http://www.outoforder.cc/projects/apache/mod_log_sql/" target="_blank">http://www.outoforder.cc/projects/apache/mod_log_sql/</a><br />
<a href="http://www.howtoforge.com/apache2-logging-to-a-mysql-database-with-mod_log_sql-on-debian-etch" target="_blank">http://www.howtoforge.com/apache2-logging-to-a-mysql-database-with-mod_log_sql-on-debian-etch</a></p>
]]></content:encoded>
			<wfw:commentRss>http://www.mogilowski.net/lang/de-de/2008/11/26/log-apache2-access-log-into-a-mysql-database-on-debian-lenny/feed</wfw:commentRss>
		<slash:comments>5</slash:comments>
		</item>
		<item>
		<title>Install Tomcat 6 on Debian (Lenny) with virtual hosts and Apache2 integration</title>
		<link>http://www.mogilowski.net/lang/de-de/2008/11/24/install-tomcat-6-on-debian-lenny-with-virtual-hosts-and-apache2-integration</link>
		<comments>http://www.mogilowski.net/lang/de-de/2008/11/24/install-tomcat-6-on-debian-lenny-with-virtual-hosts-and-apache2-integration#comments</comments>
		<pubDate>Mon, 24 Nov 2008 21:29:50 +0000</pubDate>
		<dc:creator>sebastian</dc:creator>
				<category><![CDATA[Coldfusion]]></category>
		<category><![CDATA[Development]]></category>
		<category><![CDATA[General]]></category>
		<category><![CDATA[Linux]]></category>
		<category><![CDATA[6]]></category>
		<category><![CDATA[Apache]]></category>
		<category><![CDATA[apache2]]></category>
		<category><![CDATA[debian]]></category>
		<category><![CDATA[lenny]]></category>
		<category><![CDATA[mod_jk]]></category>
		<category><![CDATA[tomcat]]></category>
		<category><![CDATA[virtual host]]></category>
		<category><![CDATA[virtual hosts]]></category>
		<category><![CDATA[virtualhost]]></category>
		<category><![CDATA[virtualhosts]]></category>

		<guid isPermaLink="false">http://www.mogilowski.net/?p=121&#038;lang=de-de</guid>
		<description><![CDATA[Dieser Artikel ist eine überarbeitete Version meines Tomcat 5.5 Artikels. Ich habe diesmal die Installation des Open Bluedragon in einen eigenen Artikel getrennt beschrieben. Es soll Tomcat 6 unter Debian Lenny installiert werden und mit mehreren virtuellen Hosts betrieben werden. Tomcat 6 ist unter Debian leider nicht über die Quellen zu beziehen, deshalb muss er [...]]]></description>
			<content:encoded><![CDATA[<p><span lang="de-de">Dieser Artikel ist eine überarbeitete Version meines Tomcat 5.5 Artikels. Ich habe diesmal die Installation des Open Bluedragon in einen eigenen Artikel getrennt beschrieben. Es soll Tomcat 6 unter Debian Lenny installiert werden und mit mehreren virtuellen Hosts betrieben werden. Tomcat 6 ist unter Debian leider nicht über die Quellen zu beziehen, deshalb muss er manuell installiert werden. (Ubuntu bietet Tomcat 6 per apt-Installation an)</span></p>
<p><strong><span lang="de-de" style="color:red;">UPDATE: Bitte lest auch den neuen Artikel:</span> <a target="_blank" href="http://www.mogilowski.net/2010/12/11/install-tomcat-7-on-debian-lenny-with-virtual-hosts-and-apache2-integration/">Tomcat 7 on Debian</a></strong></p>
<h3><span lang="de-de">1. Installation von Java 6 runtime:</span></h3>
<p><span lang="de-de">Eine der folgenden Java JDK Installationen wählen:</span></p>
<h3>1.1 OpenJDK</h3>
<pre>
aptitude install java6-runtime
</pre>
<h3>1.2 Sun JDK (non-free)</h3>
<pre>
vim /etc/apt/sources
</pre>
<pre>
deb http://ftp.de.debian.org/debian/ lenny main non-free
deb-src http://ftp.de.debian.org/debian/ lenny main non-free
</pre>
<pre>
aptitude update
aptitude install sun-java6-jdk
</pre>
<p><em><span lang="de-de">Bemerkung: Nicht vergessen, dass eine andere Konfiguration beim Apache Connector erforderlich sein wird, sollte Sun JDK verwendet werden.</span></em></p>
<h3>2. Download Tomcat</h3>
<p>Download Tomcat 6 <span lang="de-de">von der</span> <a title="Tomcat 6" href="http://tomcat.apache.org/download-60.cgi" target="_blank">Tomcat 6 Download</a> <span lang="de-de">Seite</span>.</p>
<p><span lang="de-de">Zum Beispiel:</span></p>
<pre>
wget http://apache.imsam.info/tomcat/tomcat-6/v6.0.18/bin/apache-tomcat-6.0.18.tar.gz
</pre>
<h3><span lang="de-de">3. Installation von Tomcat</span></h3>
<pre>
tar -xzvf apache-tomcat-6.0.18.tar.gz
mv apache-tomcat-6.0.18 /opt/tomcat
</pre>
<h3><span lang="de-de">4. Init-Skript erstellen</span></h3>
<pre>
vim /etc/init.d/tomcat
</pre>
<pre>
#!/bin/sh
# Tomcat Init-Script
case $1 in
    start)
        sh /opt/tomcat/bin/startup.sh
    ;;
    stop)
        sh /opt/tomcat/bin/shutdown.sh
    ;;
    restart)
        sh /opt/tomcat/bin/shutdown.sh
        sh /opt/tomcat/bin/startup.sh
    ;;
esac
exit 0
</pre>
<pre>
update-rc.d tomcat defaults
</pre>
<h3><span lang="de-de">5. Aktivieren des Tomcat Managers</span></h3>
<pre>
vim /opt/tomcat/conf/tomcat-users.xml
</pre>
<pre>
&#60;?xml version='1.0' encoding='utf-8'?&#62;
&#60;tomcat-users&#62;
    &#60;role rolename="manager"/&#62;
    &#60;role rolename="admin"/&#62;
    &#60;user username="YOUR_USERNAME" password="YOUR_PASSWORD" roles="admin,manager"/&#62;
&#60;/tomcat-users&#62;
</pre>
<h3>6. Start Tomcat</h3>
<pre>
/etc/init.d/tomcat start
</pre>
<p><span lang="de-de">Nun kann man den Tomcat Manager mit http://SERVER:8080/manager/html aufrufen.</span></p>
<h3><span lang="de-de">5. Installation des Apache2 Connectors</span></h3>
<p><span lang="de-de">Tomcat besitzt zwar einen eingebauten Webserver, jedoch ist der Apache2 Webserver wesentlich leistungsfähiger außerdem sind so die Apache Module verwendbar. (mod_rewrite zum Beipiel)</span><span lang="de-de"></span></p>
<pre>
aptitude install apache2 libapache2-mod-jk
</pre>
<pre>
vim /etc/apache2/workers.properties
</pre>
<pre>
workers.tomcat_home=/opt/tomcat
workers.java_home=/usr/lib/jvm/java-6-openjdk
ps=/
worker.list=default
worker.default.port=8009
worker.default.host=localhost
worker.default.type=ajp13
worker.default.lbfactor=1
</pre>
<p><em><span lang="de-de">Bemerkung: Falls die non-free Java Runtime von Sun verwendet wird, muss &#8220;/usr/lib/jvm/java-6-openjdk&#8221; durch &#8220;/usr/lib/jvm/java-6-sun&#8221; ersetzt werden.</span></em></p>
<p><span lang="de-de">JK Konfigurationsdatei</span></p>
<pre>
vim /etc/apache2/conf.d/jk.conf
</pre>
<pre>
&#60;ifmodule mod_jk.c&#62;
    JkWorkersFile /etc/apache2/workers.properties
    JkLogFile /var/log/apache2/mod_jk.log
    JkLogLevel error
&#60;/ifmodule&#62;
</pre>
<pre>
/etc/init.d/apache2 stop
/etc/init.d/tomcat restart
/etc/init.d/apache2 start
</pre>
<h3><span lang="de-de">6. Neuen Virtuellen Host anlegen</span></h3>
<p><span lang="de-de">Nun soll ein neuer VirtualHost angelegt werden. Dieser muss im Apache <strong>und</strong> im Tomcat angelegt werden.</span></p>
<h3><span lang="de-de">6.1 Verzeichnisse anlegen</span></h3>
<pre>
mkdir /var/www/vhost1
mkdir /var/www/vhost1/htdocs
mkdir /var/www/vhost1/logs
</pre>
<pre>
vim /etc/apache2/sites-available/vhost1
</pre>
<h3>6.2 Apache</h3>
<pre>
&#60;virtualhost www.testsrv.local&#62;
    JkMount /*.jsp default
    ServerName www.testsrv.local
    ServerAdmin servermaster@testsrv.local
    DocumentRoot /var/www/vhost1/htdocs
    ErrorLog /var/www/vhost1/logs/error.log
    CustomLog /var/www/vhost1/logs/access.log common
    &#60;directory /var/www/vhost1/htdocs&#62;
        Options -Indexes
    &#60;/directory&#62;
&#60;/virtualhost&#62;
</pre>
<p><span lang="de-de"><em>Bemerkung</em>: Man könnte auch alle Dateien an den Tomcat weiterleiten &#8220;<em>JkMount /*</em>&#8221; oder alle Dateien innerhalb eines Verzeichnisses &#8220;<em>JkMount /folder/*</em>&#8220;.</span><span lang="de-de"></span></p>
<pre>
a2ensite vhost1
/etc/init.d/apache2 reload
</pre>
<h3>6.3 Tomcat</h3>
<pre>
vim /opt/tomcat/conf/server.xml
</pre>
<pre>
&#60;!-- www.testsrv.local --&#62;
&#60;host name=&#34;www.testsrv.local&#34; appBase=&#34;/var/www/vhost1&#34; unpackWARs=&#34;true&#34; autoDeploy=&#34;true&#34;&#62;
    &#60;context path=&#34;&#34; docBase=&#34;htdocs&#34; debug=&#34;0&#34; reloadable=&#34;true&#34;/&#62;
    &#60;valve className=&#34;org.apache.catalina.valves.AccessLogValve&#34; directory=&#34;/var/www/vhost1/logs&#34;  prefix=&#34;tomcat_access_&#34; suffix=&#34;.log&#34; pattern=&#34;common&#34; resolveHosts=&#34;false&#34;/&#62;
&#60;/host&#62;
</pre>
<pre>
/etc/init.d/tomcat restart
</pre>
<p><em><span lang="de-de">Bemerkung: Man kann weitere Domains mit:</span></em></p>
<pre>
&#60;alias&#62;additionaldomain.com&#60;/alias&#62;
</pre>
<p><em><span lang="de-de">hinzufügen.</span></em></p>
<h3><span lang="de-de">7. Testseite anlegen</span></h3>
<pre>
vim /var/www/vhost1/htdocs/test.jsp
</pre>
<pre>
&#60;html&#62;
    &#60;head&#62;
        &#60;title&#62;Hello World&#60;/title&#62;
    &#60;/head&#62;
    &#60;body&#62;
        &#60;h1&#62;Hello World&#60;/h1&#62;
        Today is: &#60;%= new java.util.Date().toString() %&#62;
    &#60;/body&#62;
&#60;/html&#62;
</pre>
<p><span lang="de-de"></span><span lang="de-de">Nun kann man durch den Aufruf von http://www.testsrv.local/test.jsp die Konfiguration/Installation testen.</span></p>
]]></content:encoded>
			<wfw:commentRss>http://www.mogilowski.net/lang/de-de/2008/11/24/install-tomcat-6-on-debian-lenny-with-virtual-hosts-and-apache2-integration/feed</wfw:commentRss>
		<slash:comments>62</slash:comments>
		</item>
		<item>
		<title>VirtualHosts,OpenBlueDragon with Tomcat 5.5, Apache2 (mod_jk) on Debian Etch</title>
		<link>http://www.mogilowski.net/lang/de-de/2008/05/31/virtualhosts-mit-openbluedragon-unter-tomcat-55-apache2-mod_jk-auf-debian-etch</link>
		<comments>http://www.mogilowski.net/lang/de-de/2008/05/31/virtualhosts-mit-openbluedragon-unter-tomcat-55-apache2-mod_jk-auf-debian-etch#comments</comments>
		<pubDate>Sat, 31 May 2008 09:24:13 +0000</pubDate>
		<dc:creator>sebastian</dc:creator>
				<category><![CDATA[Coldfusion]]></category>
		<category><![CDATA[Development]]></category>
		<category><![CDATA[General]]></category>
		<category><![CDATA[Linux]]></category>
		<category><![CDATA[Apache]]></category>
		<category><![CDATA[apache2]]></category>
		<category><![CDATA[bluedragon]]></category>
		<category><![CDATA[cfm]]></category>
		<category><![CDATA[debian]]></category>
		<category><![CDATA[etch]]></category>
		<category><![CDATA[jsp]]></category>
		<category><![CDATA[mod_jk]]></category>
		<category><![CDATA[openbluedragon]]></category>
		<category><![CDATA[tomcat]]></category>
		<category><![CDATA[virtual host]]></category>
		<category><![CDATA[virtualhost]]></category>

		<guid isPermaLink="false">http://www.mogilowski.net/?p=24</guid>
		<description><![CDATA[Bereits im März hat New Atlanta eine OpenSource Version von BlueDragon angekündigt. Nun wurde sie unter OpenBlueDragon veröffentlicht. Da sich BlueDragon durchaus mit dem Coldfusion Server von Adobe messen kann, ist OpenBlueDragon ideal um Coldfusion in eine Linux/MySQL Umgebung zu integrieren und so eine direkte Konkurrenz zu der sonst üblichen PHP/MySQL Umgebungen werden. Nach dieser [...]]]></description>
			<content:encoded><![CDATA[<p><span lang="de-de">Bereits im März hat New Atlanta eine OpenSource Version von BlueDragon angekündigt. Nun wurde sie unter <a title="Open BlueDragon" href="http://www.openbluedragon.org" target="_blank">OpenBlueDragon</a> veröffentlicht. Da sich BlueDragon durchaus mit dem Coldfusion Server von Adobe messen kann, ist OpenBlueDragon ideal um Coldfusion in eine Linux/MySQL Umgebung zu integrieren und so eine direkte Konkurrenz zu der sonst üblichen PHP/MySQL Umgebungen werden.<br />
</span></p>
<p><span lang="de-de">N</span><span lang="de-de">ach dieser Anleitung soll <a title="Open BlueDragon" href="http://www.openbluedragon.org" target="_blank">OpenBlueDragon</a> mit Tomcat 5.5 unter Debian Etch installiert werden. Anschließend soll <a title="Tomcat" href="http://tomcat.apache.org" target="_blank">Tomcat</a> mit <a title="mod_jk" href="http://tomcat.apache.org/connectors-doc/" target="_blank">mod_jk</a> mit dem <a title="Apache2" href="http://httpd.apache.org" target="_blank">Apache2</a> verbunden werden.<br />
</span></p>
<p><span lang="de-de">Na</span><span lang="de-de">türlich kann diese Anleitung auch verwendet werden, um nur den Tomcat zusammen mit Apache einzurichten. In diesem Fall müssen nur die OpenBlueDragon Abschnitte ausgelassen werden.<br />
</span></p>
<p><span lang="de-de">Es gibt verschiedene Gründe warum man Tomcat zusammen mit Apache einsetzt. Der Apache kann langsame Verbindugen Buffern, man kann mit weitere Funktionen benutzen wie PHP oder Perl, Apache Module stehen zur Verfügung wie mod_rewrite außerdem können die Virtuellen Hosts so konfiguriert werden, dass sie eigene Tomcat Instanzen benutzen.<br />
</span>.</p>
<p><span lang="de-de">Für</span><span lang="de-de"> die Installation von Tomcat wird jedoch zuerst noch das Sun Java JDK gebraucht. Um diese zu installieren mussen in der /etc/apt/sources.list die &#8220;non-free&#8221; Pakete hinzugefügt werden:<br />
</span><span lang="de-de"><br />
</span></p>
<pre>deb-src http://ftp.debian.org/debian/ main </pre>
<p><span lang="de-de">A</span><span lang="de-de">nschließend kann mit<br />
</span><span lang="de-de"><br />
</span></p>
<pre># aptitude update
# aptitude install sun-java5-jdk</pre>
<p><span lang="de-de">das Sun Java JDK installiert werden.</span></p>
<p><span lang="de-de">Nun kann Apache Tomcat installiert werden:<br />
</span><span lang="de-de"><br />
</span></p>
<pre># aptitude install tomcat5.5 tomcat5.5-admin tomcat5.5-webapps</pre>
<p><span lang="de-de">Um zu überprüfen ob Tomcat läuft, kann man folgende URL im Browser aufrufen: http://SERVER:8180<br />
</span></p>
<p><span lang="de-de">Als nächstes muss ein Benutzer konfiguriert werden, mit dem Tomcat verwaltet werden soll.<br />
</span><span lang="de-de"><br />
</span></p>
<pre># /etc/init.d/tomcat5.5 stop
# vim /var/lib/tomcat5.5/conf/tomcat-users.xml</pre>
<pre>&#60;?xml version='1.0' encoding='utf-8'?&#62;
&#60;tomcat-users&#62;
&#60;role rolename="admin"/&#62;
&#60;role rolename="manager"/&#62;
&#60;role rolename="tomcat"/&#62;
&#60;user username="admin"
password="foobar"
roles="tomcat,admin,manager"/&#62;
&#60;/tomcat-users&#62;

# vim /etc/default/tomcat5.5
TOMCAT5_SECURITY=<strong>no
</strong></pre>
<pre># /etc/init.d/tomcat5.5 start</pre>
<p><span lang="de-de">Natürlich sollte das Passwort durch ein eigenes ersetzt werden ! Das deaktivieren von TOMCAT5_SECURITY ist notwendig um Zugriff auf die Administration zu erhalten. Sollte man die Administration nicht benötigen kann diesen Schritt natürlich weglassen oder nach dem festlegen der Einstellungen wieder aktivieren.<br />
</span></p>
<p><span lang="de-de">Nun kann man sich in den Tomcat Manager einloggen http://SERVER:8180/manager/html sowie in den Administrator http://SERVER:8180/admin<br />
</span></p>
<p><span lang="de-de">Dort kann im Abschnitt &#8220;Deploy&#8221; das <em>openbluedragon.war</em> Paket hochgeladen werden.<br />
</span></p>
<p><span lang="de-de">Nach dem Neustart von Tomcat &#8220;<em>/etc/init.d/tomcat5.5 restart</em>&#8221; findet man <strong>openbluedragon</strong> in der Applications List im Tomcat Manager.<br />
</span></p>
<p><span lang="de-de">Installation Apache2 mit Tomcat-Connector<br />
</span></p>
<p><span lang="de-de">Tomcat besitzt zwar einen eingebauten Webserver, jedoch ist der Apache2 Webserver wesentlich Leistungsfähiger.</span></p>
<p><span lang="de-de">Installation:</span></p>
<pre># aptitude install apache2 libapache2-mod-jk
# vim /etc/apache2/workers.properties

workers.tomcat_home=/usr/share/tomcat5.5
workers.java_home=/usr/lib/jvm/java-1.5.0-sun-1.5.0.14
ps=/
worker.list=default
worker.default.port=8009
worker.default.host=localhost
worker.default.type=ajp13
worker.default.lbfactor=1
JK Konfigurationsdatai
# vim /etc/apache2/conf.d/jk.conf
&#60;IfModule mod_jk.c&#62;
    JkWorkersFile /etc/apache2/workers.properties
    JkLogFile /var/log/apache2/mod_jk.log
    JkLogLevel error
&#60;/IfModule&#62;</pre>
<pre># /etc/init.d/apache2 stop
# /etc/init.d/tomcat5.5 restart
# /etc/init.d/apache2 start</pre>
<p><span lang="de-de">Nun soll ein neuer VirtualHost angelegt werden. Dieser muss im Apache und im Tomcat angelegt werden.<br />
</span></p>
<p><span lang="de-de">Verzeichnise vorbereiten:<br />
</span></p>
<pre># mkdir /var/www/vhost1
# mkdir /var/www/vhost1/htdocs
# mkdir /var/www/vhost1/logs</pre>
<p><span lang="de-de">WEB-INF kopieren:<br />
</span></p>
<pre># cp /var/lib/tomcat5.5/webapps/openbluedragon/WEB-INF /var/www/vhost1/htdocs/</pre>
<p><span lang="de-de">VirtualHost im Apache anlegen:<br />
</span></p>
<pre># vim /etc/apache2/sites-available/vhost1</pre>
<pre>&#60;VirtualHost www.testsrv.local&#62;
    JkMount /*.cfm default
    JkMount /*.cfc default
    JkMount /*.jsp default
    ServerName www.testsrv.local
    ServerAdmin servermaster@testsrv.local
    DocumentRoot /var/www/vhost1/htdocs
    ErrorLog /var/www/vhost1/logs/error.log
    CustomLog /var/www/vhost1/logs/access.log common
    &#60;Location /WEB-INF/ &#62;
      AllowOverride None
      deny from all
    &#60;/Location&#62;
&#60;/VirtualHost&#62;</pre>
<pre># a2ensite vhost1
# /etc/init.d/apache2 reload</pre>
<p><span lang="de-de"><em>Bemerkung</em>: Man könnte auch alle Dateien an den Tomcat weiterleiten &#8220;<em>JkMount /*</em>&#8221; oder alle Dateien innerhalb eines Verzeichnisses &#8220;<em>JkMount /folder/*</em>&#8220;.<br />
</span></p>
<p><span lang="de-de">Host im Tomcat anlegen:<br />
</span></p>
<pre># vim /etc/tomcat5.5/server.xml</pre>
<pre>&#60;!-- www.testsrv.local --&#62;
&#60;Host name="www.testsrv.local" appBase="/var/www/vhost1"
      unpackWARs="true" autoDeploy="true"&#62;
      &#60;Context path="" docBase="htdocs" debug="0" reloadable="true"/&#62;
      &#60;Valve className="org.apache.catalina.valves.AccessLogValve"
             directory="/var/www/vhost1/logs"  prefix="tomcat_access_" suffix=".log"
             pattern="common" resolveHosts="false"/&#62;
&#60;/Host&#62;</pre>
<p><span lang="de-de">Zum Schluss muss man den Tomcat sowie den Apache Server neu starten:<br />
</span></p>
<pre># /etc/init.d/tomcat5.5 restart
# /etc/init.d/apache2 restart</pre>
<p><strong>[UPDATE]</strong><br />
<br />
<span lang="de-de">Von diesen Artikel ist eine neue Version Verfügbar  <a href="http://www.mogilowski.net/?p=121">Tomcat 6 mit Lenny</a> und <a href="http://www.mogilowski.net/?p=154">OpenBlueDragon auf Tomcat 6</a></span></p>
]]></content:encoded>
			<wfw:commentRss>http://www.mogilowski.net/lang/de-de/2008/05/31/virtualhosts-mit-openbluedragon-unter-tomcat-55-apache2-mod_jk-auf-debian-etch/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>

<!-- Performance optimized by W3 Total Cache. Learn more: http://www.w3-edge.com/wordpress-plugins/

Page Caching using apc
Database Caching 79/147 queries in 0.118 seconds using apc
Object Caching 1091/1119 objects using apc

Served from: www.mogilowski.net @ 2012-05-19 07:29:44 -->
