PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : Anleitung für IMP Webmail



snoopy99
10.05.02, 09:37
Kennt von Euch jemand eine gute Anleitung zur Installation von IMP Webmail. Mit der mitgelieferten Doku komm ich irgendwie nicht klar.

Sven_R
11.05.02, 18:30
hi
also ich hab nach langem hin und her endlich horde mit imp zum laufen gebracht.

also ich geb dir mal einen kleinen überblick wie ich das gemacht hab.
ich hab diesbezüglich auch nichts gescheitetes gefunden.

als erstes hab ich mit SSL angefangen, weil imp auf meinen firmen servern
läuft und meine mitarbeiter sich dadurch etwas sicherer fühlen.


SSL
./config
make
make test
make install


MOD_SSL
./configure --with-apache=../pfad_zu_den_apache_sourcen

PERL
perl Makefile.PL EVERYTHING=1
APACHE_SRC=../pfad_zu_den_apache_sourcen/src
USE_APACI=1
PREP_HTTPD=1
DO_HTTPD=1
make
make install

APACHE im DSO Modus
SSL_BASE=../pfad_zu_openssl ./configure
--enable-module=ssl
--prefix=/usr/local/httpd
--enable-rule=SHARED_CORE
--enable-module=so
--enable-shared=ssl
--activate-module=src/modules/perl/libperl.a
--enable-module=perl
make
make certificate TYPE= dummy ODER test
make install

dann PHP 4

./configure --with-apxs=/usr/local/httpd/bin/apxs
--with-xml --> für imp/horde erforderlich
--with-imap --> für imp/horde erforderlich
--enable-versioning
--enable-ftp
--with-ldap --> bei verwendung ldap 1.xx inst.
--with-gettetext --> für imp/horde erforderlich bei suse in der serie N
--enable-trans-sid
--with-mcrypt=/usr/local --> für imp/horde erforderlich bei suse in der serie N
--with-imap --> für imp/horde erforderlich bei suse in der serie N
--with-imap-ssl=/usr/local/ssl --> für imp/horde erforderlich ohne gibt es eine fehlermeldung
--with-ssl --> für ssl erforderlich sonst läuft apache nicht
--with-snmp --> für imap brauchbar
--enable-track-vars=yes
--enable-memory-limit=yes -->optional
make
make install

dann muss noch die httpd.conf von apache geändert werden:

für cgi, php4 und perl

1. erhöht etwas die sicherheit


#
# DocumentRoot: The directory out of which you will serve your
# documents. By default, all requests are taken from this directory, but
# symbolic links and aliases may be used to point to other locations.
#
DocumentRoot "/usr/local/httpd/htdocs"

#
# Each directory to which Apache has access, can be configured with respect
# to which services and features are allowed and/or disabled in that
# directory (and its subdirectories).
#
# First, we configure the "default" to be a very restrictive set of
# permissions.
#
Directory /

Options -FollowSymLinks +Multiviews
AllowOverride None
/Directory


2. zum ausführen von perl/cgi und php4


#
# This may also be "None", "All", or any combination of "Indexes",
# "Includes", "FollowSymLinks", "ExecCGI", or "MultiViews".
#
# Note that "MultiViews" must be named *explicitly* --- "Options All"
# doesn't give it to you.
#
Options Indexes -FollowSymLinks +Includes MultiViews +ExecCGI

3. damit auch index.php usw angezeigt wird


#
# DirectoryIndex: Name of the file or files to use as a pre-written HTML
# directory index. Separate multiple entries with spaces.
#
IfModule mod_dir.c
DirectoryIndex index.html index.php index.htm index.php3
/IfModule


4. kleine sicherheitslücke vermeiden


#Alias /manual/ "/usr/local/httpd/htdocs/manual/"

#Directory "/usr/local/httpd/htdocs/manual"
# Options Indexes FollowSymlinks MultiViews
# AllowOverride None
# Order allow,deny
# Allow from all
#/Directory


5. sonst wird cgi/perl nur unter dem apache cgi-bin aufgeführt


#ScriptAlias /cgi-bin/ "/usr/local/httpd/cgi-bin/"

#
# "/usr/local/httpd/cgi-bin" should be changed to whatever your ScriptAliased
# CGI directory exists, if you have that configured.
#
#Directory "/usr/local/httpd/cgi-bin"
# AllowOverride None
# Options None
# Order allow,deny
# Allow from all
#/Directory


6. damit apache auch php und perl überhaupt startet


Location /cgi-bin

AllowOverride None
Options +ExecCGI -Includes
SetHandler cgi-script

IfDefine PERL
AddHandler perl-script .pl
PerlHandler Apache::Registry
PerlSendHeader On
/IfDefine
/Location


7. damit apache weiß wie er mit php endungen umzugehen hat


AddType application/x-httpd-php .php .php2 .php3 .php4
AddType Application/x-httpd-php-source .phps


8. damit apache weiß welche endungen zu perl/cgi gehören


AddHandler cgi-script .cgi
AddHandler cgi-script .pl


9. die sektionen "server-satus" und "server-info" ausser betrieb nehmen --> wegen der sicherheit.

das solltes es gewesen sein.

jetzt nach /inst_pfad_für_apache wechseln und apache starten

für apache mit ssl --> ./apachectl startssl
für apache ohne ssl --> ./apachectl start

wenn du apache mit SSL und php4 übersetzt hast kann es vorkommen das apache die fehlermeldung


[Sat May 11 19:22:01 2002] [warn]
Loaded DSO libexec/libphp4.so uses plain Apache 1.3 API,
this module might crash under EAPI! (please recompile it with -DEAPI)
/usr/local/httpd/bin/apachectl startssl: httpd started

auswirft.
keine sorge er läuft trotzdem einwandfrei.
das hat so weit ich weiß mit perl zu tun, ich bin noch dabei das zu testen.
bin aber nocht nicht dazu gekommen, ich war froh das ich imp/horde zum laufen bekommen hab.


dann von Horde (http://www.horde.org)

einmal Horde 2.0 (ftp://ftp.horde.org/pub/horde/tarballs/horde-2.0.tar.gz)
und IMP 3.0 (ftp://ftp.horde.org/pub/imp/tarballs/imp-3.0.tar.gz) holen.

im apache docroot einen ordner erstellen der horde heist
und horde 2.0 reinkopieren.
dann im ordner horde einen ordner imp erstellen und imp 3.0 reinkopieren.

dann auf der konsole
mysqladmin create horde
dann nach /horde/scripts/db wechseln
mit einem editior die datei mysql_create.sql öffnen
und die zeile:

CREATE DATABASE horde;
auskommentieren. sonst schmeist sql eine fehlermeldung beim einlesen der datei aus.
dann auf der konsole
mysql horde < mysql_create.sql

eigentlich sollte keine fehlermeldung erscheinen.
jetzt mysql neustarten.

jetzt in den ordner /horde/config wechseln

alle dateien die ...php.dist heissen ohne "dist" kopieren, oder umbenenen.
das gleich unter /horde/imp/config

jetzt die datei horde.php mit einem editor öffnen und unter "Horde Authentication"
nach dem BACKEND suchen


// What backend should we use for authenticating users to Horde? Valid
// options are currently 'imap', 'ldap', 'mcal', 'sql', and 'ftp'.
$conf['auth']['driver'] = 'sql';


wenn du sql ldap oder imap verwendest musst du einen entsprechenden user mit passwort haben, sonst kommst du nicht rein.

jetzt den punkt "Preference System Settings" suchen.
unter


/* This is an example configuration for a MySQL preference backend.
* Be sure to set the prefs driver to 'sql' above if you use this
* configuration.
*/
$conf['prefs']['params']['phptype'] = 'mysql';
$conf['prefs']['params']['hostspec'] = 'localhost';
$conf['prefs']['params']['username'] = 'horde';
$conf['prefs']['params']['password'] = '';
$conf['prefs']['params']['database'] = 'horde';
$conf['prefs']['params']['table'] = 'horde_prefs';


kannst die daten für den zugriff auf die horde sql datenbank einstellen.
ich hab mir dafür einen eigenen user angelegt der "horde" heißt.
das passwort hab ich mal weggelassen weill ich im moment am testen bin.


in der Datei /horde/config/registry.php kannst du noch andere services von horde akivieren, z.B. turba, kronolith.
einfach die // entfernen.

jetzt kannst du mit dem per browser versuche horde zu starten.

sollten fehler auftreten solltest du die zugriffsrechte überprüfen.
die ordner sollten 777 haben die conf dateien 444 haben. alles andere kanst du mit 666 einstellen.

Cu

snoopy99
12.05.02, 08:34
Stark Sven!
Vielen Dank für die vielen Hinweise.
Ich werd´s die Tage mal ausprobieren.