Projekt

Allgemein

Profil

Herunterladen (26,8 KB) Statistiken
| Zweig: | Markierung: | Revision:
0603f8f1 Moritz Bunkus
Table of Contents
*****************
7b642ce6 Moritz Bunkus
Inhalt der Anleitung
1 Aktuelle Hinweise
4c24a5f4 Sven Schöling
2 Benötigte Software und Pakete
8b03f6ca Sven Schöling
2.1 Betriebssystem
2.2 Pakete
3 Manuelle Installation des Programmpaketes
7b642ce6 Moritz Bunkus
4 Anpassung der PostgreSQL-Konfiguration
4c24a5f4 Sven Schöling
4.1 Zeichensätze/die Verwendung von UTF-8
4.2 Änderungen an Konfigurationsdateien
4.3 Erweiterung für servergespeicherte Prozeduren
3acaa523 Moritz Bunkus
4.4 Datenbankbenutzer anlegen
7b642ce6 Moritz Bunkus
5 Apache-Konfiguration
8c7e4493 Moritz Bunkus
6 Benutzerauthentifizierung und Administratorpasswort
6.1 Grundlagen zur Benutzerauthentifizierung
6.2 Administratorpasswort
6.3 Authentifizierungsdatenbank
4c24a5f4 Sven Schöling
6.4 Passwortüberprüfung
8c7e4493 Moritz Bunkus
6.5 Name des Session-Cookies
6.6 Anlegen der Authentifizierungsdatenbank
7 Benutzer- und Gruppenverwaltung
4c24a5f4 Sven Schöling
7.1 Zusammenhänge
8c7e4493 Moritz Bunkus
7.2 Datenbanken anlegen
7.3 Gruppen anlegen
7.4 Benutzer anlegen
7.5 Gruppenmitgliedschaften verwalten
7.6 Migration alter Installationen
8 OpenDocument-Vorlagen
9 Lx-Office ERP verwenden
7b642ce6 Moritz Bunkus

Inhalt der Anleitung
********************

1 Aktuelle Hinweise
*******************

Aktuelle Installations- und Konfigurationshinweise gibt es:

* auf der Lx-Office Homepage unter
`http://lx-office.org/index.php?id=dokumentation'

* im Lx-Office-Wiki unter Dokumentation
(`http://wiki.lx-office.org/index.php/Lx-Office_ERP')

* im Lx-Office-Forum: `http://www.lx-office.org/forum/'

4c24a5f4 Sven Schöling
2 Benötigte Software und Pakete
********************************
7b642ce6 Moritz Bunkus
8b03f6ca Sven Schöling
2.1 Betriebssystem
==================

Lx-Office ist für Linux konzipiert, und sollte auf jedem unixoiden
Betriebssystem zum Laufen zu kriegen sein. Getestet ist diese Version im
speziellen auf Debian und Ubuntu, grundsätzlich wurde bei der Auswahl
der Pakete aber darauf Rücksicht genommen, dass es ohne große Probleme
auf den derzeit aktuellen verbreiteten Distributionen läuft.

Anfang 2011 sind das folgende Systeme:

* Ubuntu 8.04 LTS Hardy Heron

* Ubuntu 9.10 Karmic Koala

* Ubuntu 10.04 Lucid Lynx

* Ubuntu 10.10 Maverick Meerkat

* Debian 5.0 Lenny

* Debian 6.0 Squeeze

* openSUSE 11.2

* openSUSE 11.3

* SuSE Linux Enterprice Server 11

* Fedora 13

* Fedora 14

Für die debianoiden Betriebssysteme existiert ein .deb, das deutlich
einfacher zu installieren ist.

Ubuntu 8.04 LTS hat zusätzlich die Schwierigkeit, dass die Module im
Archiv recht alt sind, und das viele der benötigten Module nicht
einfach zu installieren sind. Dafür sollte es kurz nach dem Release ein
eigenes .deb geben.

Alternativ dazu kann die normale Installation durchgeführt werden
(*note Manuelle Installation des Programmpaketes::), wenn vorher ein
Kompatibilitätspaket installiert wird, das die fehlenden Pakete
bereitstellt. Das Paket ist auf Sourceforge
(https://sourceforge.net/projects/lx-office/files/Lx-Office%20ERP/2.6.2/)
unter dem Namen `lx-erp-perl-libs-compat-v2.tar.gz' hinterlegt.

Zur Installation das Paket in das entpackte Lx-Office Verzeichnis
entpacken:

`tar xzf lx-erp-perl-libs-compat-v2.tar.gz /path/to/lx-office/'

2b609827 Sven Schöling
Zusätzlich müssen dann noch die folgenden Pakete installiert weerden

`libbit-vector-perl libsub-exporter-perl libclone-perl
libclass-factory-util-perl'

8b03f6ca Sven Schöling
Danach sollte der Installationscheck (*note Pakete::) die
enthaltenen Pakete erkennen.

2.2 Pakete
==========

7b642ce6 Moritz Bunkus
Zum Betrieb von Lx-Office werden zwingend ein Webserver (meist Apache)
54377653 Moritz Bunkus
und ein Datenbankserver (PostgreSQL, mindestens v8.2) benötigt.
7b642ce6 Moritz Bunkus
4c24a5f4 Sven Schöling
Zusätzlich benötigt Lx-Office die folgenden Perl-Pakete, die nicht
7b642ce6 Moritz Bunkus
Bestandteil einer Standard-Perl-Installation sind:

50b60645 Sven Schöling
* parent

8eb4af24 Sven Schöling
* Archive::Zip

* Class::Accessor

* CGI::Ajax

d1987c14 Sven Schöling
* DateTime

7b642ce6 Moritz Bunkus
* DBI

* DBD::Pg

8eb4af24 Sven Schöling
* Email::Address
7b642ce6 Moritz Bunkus
8eb4af24 Sven Schöling
* List::MoreUtils
7b642ce6 Moritz Bunkus
8eb4af24 Sven Schöling
* PDF::API2

c65ce0ef Moritz Bunkus
* Rose::Object

* Rose::DB

* Rose::DB::Object

8eb4af24 Sven Schöling
* Template
7b642ce6 Moritz Bunkus
* Text::CSV_XS

8eb4af24 Sven Schöling
* Text::Iconv
7b642ce6 Moritz Bunkus
8eb4af24 Sven Schöling
* URI

* XML::Writer
0603f8f1 Moritz Bunkus
7b642ce6 Moritz Bunkus
* YAML

8eb4af24 Sven Schöling
Gegenüber Version 2.6.0 sind zu dieser Liste 2 Pakete hinzugekommen,
`URI' und `XML::Writer' sind notwendig. Ohne startet Lx-Office nicht.
7b642ce6 Moritz Bunkus
50b60645 Sven Schöling
Gegenüber Version 2.6.1 sind `parent', `DateTime', `Rose::Object',
`Rose::DB' und `Rose::DB::Object' neu hinzugekommen. `IO::Wrap' wurde
entfernt.

8eb4af24 Sven Schöling
`Email::Address' und `List::MoreUtils' sind schon länger feste
Abhängigkeiten, wurden aber bisher mit Lx-Office mitgeliefert. Beide
sind auch in 2.6.1 weiterhin mit ausgeliefert, wurden in einer
zukünftigen Version aber aus dem Paket entfernt werden. Es wird
empfohlen diese Module zusammen mit den anderen als Bibliotheken zu
installieren.
1b50cdbb Moritz Bunkus
8eb4af24 Sven Schöling
`CGI::Ajax' ist nach wie vor in einer modifizierten Version
mitgeliefert und braucht nicht nachinstalliert werden.
1b50cdbb Moritz Bunkus
8eb4af24 Sven Schöling
Die zu installierenden Pakete können in den verschiedenen
Distributionen unterschiedlich heißen.
7b642ce6 Moritz Bunkus
4c24a5f4 Sven Schöling
Für Debian oder Ubuntu benötigen Sie diese Pakete:
7b642ce6 Moritz Bunkus
50b60645 Sven Schöling
`apache2 postgresql libparent-perl libarchive-zip-perl
libclass-accessor-perl libdatetime-perl libdbi-perl libdbd-pg-perl
libpg-perl libemail-address-perl liblist-moreutils-perl
libpdf-api2-perl librose-object-perl librose-db-perl
librose-db-object-perl libtemplate-perl libtext-csv-xs-perl
libtext-iconv-perl liburi-perl libxml-writer-perl libyaml-perl'
7b642ce6 Moritz Bunkus
8eb4af24 Sven Schöling
Für Fedora Core benötigen Sie diese Pakete:
7b642ce6 Moritz Bunkus
50b60645 Sven Schöling
`httpd postgresql-server perl-parent perl-Class-Accessor
perl-DateTime perl-DBI perl-DBD-Pg perl-Email-Address
perl-List-MoreUtils perl-PDF-API2 perl-Rose-Object perl-Rose-DB
perl-Rose-DB-Object perl-Template-Toolkit perl-Text-CSV_XS
perl-Text-Iconv perl-URI perl-XML-Writer perl-YAML'
7b642ce6 Moritz Bunkus
4c24a5f4 Sven Schöling
Für OpenSuSE benötigen Sie diese Pakete:
7b642ce6 Moritz Bunkus
8eb4af24 Sven Schöling
`apache2 postgresql-server perl-Archive-Zip perl-Class-Accessor
50b60645 Sven Schöling
perl-DateTime perl-DBI perl-DBD-Pg perl-MailTools perl-List-MoreUtils
perl-PDF-API2 perl-Template-Toolkit perl-Text-CSV_XS perl-Text-Iconv
perl-URI perl-XML-Writer perl-YAML'

Bei openSuSE 11 ist `parent' bereits enthalten, und braucht nicht
nachinstalliert werden. Die `Rose::*' Pakete sind derzeit nicht für
SuSE gepackt, und müssen anderweitig nachinstalliert werden.
7b642ce6 Moritz Bunkus
4c24a5f4 Sven Schöling
Lx-Office enthält ein Script, mit dem überprüft werden kann, ob alle
benötigten Perl-Module installiert sind. Der Aufruf lautet wie folgt:
be180538 Moritz Bunkus
`./scripts/installation_check.pl'

8b03f6ca Sven Schöling
3 Manuelle Installation des Programmpaketes
*******************************************
7b642ce6 Moritz Bunkus
54377653 Moritz Bunkus
Die Lx-Office ERP Installationsdatei (lxoffice-erp-2.6.2.tgz) wird im
24e130ef Sven Schöling
Dokumentenverzeichnis des Webservers (z.B. `/var/www/html/',
7b642ce6 Moritz Bunkus
`/srv/www/htdocs' oder `/var/www/') entpackt:

`cd /var/www
54377653 Moritz Bunkus
tar xvzf lxoffice-erp-2.6.2.tgz'
7b642ce6 Moritz Bunkus
4c24a5f4 Sven Schöling
Verändern Sie evtl. noch den Namen des Verzeichnisses mit
7b642ce6 Moritz Bunkus
`mv lxoffice-erp/ lx-erp/'

4c24a5f4 Sven Schöling
Alternativ können Sie auch einen Alias in der Webserverkonfiguration
benutzen, um auf das tatsächliche Installationsverzeichnis zu verweisen.
7b642ce6 Moritz Bunkus
4c24a5f4 Sven Schöling
Die Verzeichnisse `users', `spool' und `webdav' müssen für den
Benutzer beschreibbar sein, unter dem der Webserver läuft. Die
restlichen Dateien müssen für diesen Benutzer lesbar sein. Der
76b009b0 Moritz Bunkus
Benutzername ist bei verschiedenen Distributionen unterschiedlich (z.B.
bei Debian/Ubuntu `www-data', bei Fedora core `apache' oder bei
OpenSuSE `wwwrun').

4c24a5f4 Sven Schöling
Der folgende Befehl ändert den Besitzer für die oben genannten
76b009b0 Moritz Bunkus
Verzeichnisse auf einem Debian/Ubuntu-System:

efa178c8 Moritz Bunkus
`chown -R www-data lx-office-erp/users lx-office-erp/spool
lx-office-erp/webdav'
7b642ce6 Moritz Bunkus
814aaaa2 Moritz Bunkus
Weiterhin muss der Webserver-Benutzer im Verzeichnis `templates'
4c24a5f4 Sven Schöling
Verzeichnisse für jeden neuen Benutzer, der in lx-office angelegt wird,
anlegen dürfen:
814aaaa2 Moritz Bunkus
`chgrp www-data lx-office-erp/templates; chmod g+w
lx-office-erp/templates'

7b642ce6 Moritz Bunkus
4 Anpassung der PostgreSQL-Konfiguration
****************************************

PostgreSQL muss auf verschiedene Weisen angepasst werden.

4c24a5f4 Sven Schöling
4.1 Zeichensätze/die Verwendung von UTF-8
==========================================
3acaa523 Moritz Bunkus
Lx-Office kann komplett mit UTF-8 als Zeichensatz verwendet werden.
Dabei gibt es zwei Punkte zu beachten: PostgreSQL muss in Version 8.0
oder neuer benutzt werden, und der PostgreSQL-Datenbankcluster muss
ebenfalls mit UTF-8 als Locale angelegt worden sein.

4c24a5f4 Sven Schöling
Dieses ist kann überprüft werden: ist das Encoding der Datenbank
3acaa523 Moritz Bunkus
"template1" "UTF8", so kann auch Lx-Office mit UTF-8 betrieben werden.
Andernfalls ist es notwendig, einen neuen Datenbankcluster mit
UTF-8-Encoding anzulegen und diesen zu verwenden. Unter Debian und
Ubuntu kann dies z.B. mit dem folgenden Befehl getan werden:

`pg_createcluster --locale=de_DE.UTF-8 --encoding=UTF-8 8.2
clustername'

4c24a5f4 Sven Schöling
Die Datenbankversionsnummer muss an die tatsächlich verwendete
3acaa523 Moritz Bunkus
Versionsnummer angepasst werden.

4c24a5f4 Sven Schöling
Unter anderen Distributionen gibt es ähnliche Methoden.
3acaa523 Moritz Bunkus
Wurde PostgreSQL nicht mit UTF-8 als Encoding initialisiert und ist
4c24a5f4 Sven Schöling
ein Neuanlegen eines weiteren Clusters nicht möglich, so kann Lx-Office
1b50cdbb Moritz Bunkus
mit ISO-8859-15 als Encoding betrieben werden.
3acaa523 Moritz Bunkus
4c24a5f4 Sven Schöling
Das Encoding einer Datenbank kann in `psql' mit `\l' geprüft werden.
814aaaa2 Moritz Bunkus
4c24a5f4 Sven Schöling
4.2 Änderungen an Konfigurationsdateien
========================================
7b642ce6 Moritz Bunkus
In der Datei `postgresql.conf', die je nach Distribution in
verschiedenen Verzeichnissen liegen kann (z.B. `/var/lib/pgsql/data/'
oder `/etc/postgresql/', muss sichergestellt werden, dass
54377653 Moritz Bunkus
TCP/IP-Verbindungen aktiviert sind. Das Verhalten wird über den
Parameter `listen_address' gesteuert. Laufen PostgreSQL und Lx-Office
auf demselben Rechner, so kann dort der Wert `localhost' verwendet
werden. Andernfalls müssen Datenbankverbindungen auch von anderen
Rechnern aus zugelassen werden, was mit dem Wert \`*' geschieht.
2b5da843 Moritz Bunkus
7b642ce6 Moritz Bunkus
In der Datei `pg_hba.conf', die im gleichen Verzeichnis wie die
4c24a5f4 Sven Schöling
`postgresql.conf' zu finden sein sollte, müssen die Berichtigungen für
den Zugriff geändert werden. Hier gibt es mehrere Möglichkeiten. Eine
7b642ce6 Moritz Bunkus
besteht darin, lokale Verbindungen immer zuzulassen

`local all all trust
host all all 127.0.0.1 255.0.0.0 trust'

4c24a5f4 Sven Schöling
Besser ist es, für eine bestimmte Datenbank Zugriff nur per Passwort
7b642ce6 Moritz Bunkus
zuzulassen. Beispielsweise:

`local all lxoffice
password
host all lxoffice 127.0.0.1 255.255.255.255
password'

4c24a5f4 Sven Schöling
4.3 Erweiterung für servergespeicherte Prozeduren
==================================================
7b642ce6 Moritz Bunkus
4c24a5f4 Sven Schöling
In der Datenbank `template1' muss die Unterstützung für
servergespeicherte Prozeduren eingerichet werden. Melden Sie sich dafür
als Benutzer "postgres" an der Datenbank an, und führen Sie die
7b642ce6 Moritz Bunkus
folgenden Kommandos aus:

c416204e Moritz Bunkus
`create language 'plpgsql';'

Achtung: In älteren Postgresversionen (vor 8.0) muss der Handler für
die Sprache manuell anlelegt werden, diese Versionen werden aber nicht
mehr offiziell von Lx-Office unterstützt. Dafür dann die folgenden
Kommandos:

7b642ce6 Moritz Bunkus
`create function plpgsql_call_handler () returns opaque as
'/usr/lib/pgsql/plpgsql.so' language 'c';
create language 'plpgsql' handler plpgsql_call_handler lancompiler
'pl/pgsql';'

Bitte beachten Sie, dass der Pfad zur Datei `plpgsql.so' von
Distribution zu Distribution verschiedlich sein kann. Bei Debian/Ubuntu
c416204e Moritz Bunkus
befindet sie sich unter `/usr/lib/postgresql/lib/plpgsql.so'.
7b642ce6 Moritz Bunkus
3acaa523 Moritz Bunkus
4.4 Datenbankbenutzer anlegen
7b642ce6 Moritz Bunkus
=============================

Wenn Sie nicht den Datenbanksuperuser "postgres" zum Zugriff benutzen
wollen, so sollten Sie bei PostgreSQL einen neuen Benutzer anlegen. Ein
4c24a5f4 Sven Schöling
Beispiel, wie Sie einen neuen Benutzer anlegen können:
7b642ce6 Moritz Bunkus
`su - postgres
createuser -d -P lxoffice'

4c24a5f4 Sven Schöling
Wenn Sie später einen Datenbankzugriff konfigurieren, verändern Sie
7b642ce6 Moritz Bunkus
den evtl. voreingestellten Benutzer "postgres" auf "lxoffice" bzw. den
4c24a5f4 Sven Schöling
hier gewählten Benutzernamen.
7b642ce6 Moritz Bunkus
5 Apache-Konfiguration
**********************

54377653 Moritz Bunkus
Hinweis: Für einen deutlichen Performanceschub sorgt die Ausführung
mittels FCGI. Die Einrichtung wird ausführlich in der Datei
`INSTALL.fcgi' beschrieben.

Der Zugriff auf das Programmverzeichnis muss in der Apache
4c24a5f4 Sven Schöling
Webserverkonfigurationsdatei `httpd.conf' eingestellt werden. Fügen Sie
7b642ce6 Moritz Bunkus
den folgenden Abschnitt dieser Datei oder einer anderen Datei hinzu,
die beim Starten des Webservers eingelesen wird:

`
AddHandler cgi-script .pl
Alias /lx-erp/ /var/www/lx-erp/
<Directory /var/www/lx-erp>
Options ExecCGI Includes FollowSymlinks
</Directory>
<Directory /var/www/lx-erp/users>
Order Deny,Allow
Deny from All
</Directory>
'

Ersetzen Sie dabei die Pfade durch diejenigen, in die Sie vorher das
Lx-Office-Archiv entpacket haben.

Achtung: Vor den einzelnen Optionen muss bei einigen Distributionen
ein Plus `+' gesetzt werden.

Auf einigen Webservern werden manchmal die Grafiken und Style-Sheets
4c24a5f4 Sven Schöling
nicht ausgeliefert. In solchen Fällen hat es oft geholfen, die folgende
7b642ce6 Moritz Bunkus
Option in die Konfiguration aufzunehmen:

`EnableSendfile Off'

8c7e4493 Moritz Bunkus
6 Benutzerauthentifizierung und Administratorpasswort
*****************************************************

4c24a5f4 Sven Schöling
Informationen über die Einrichtung der Benutzerauthentifizierung, über
8c7e4493 Moritz Bunkus
die Verwaltung von Gruppen und weitere Einstellungen

6.1 Grundlagen zur Benutzerauthentifizierung
============================================

Lx-Office verwaltet die Benutzerinformationen in einer Datenbank, die
4c24a5f4 Sven Schöling
im folgenden "Authentifizierungsdatenbank" genannt wird. Für jeden
Benutzer kann dort eine eigene Datenbank für die eigentlichen
Finanzdaten hinterlegt sein. Diese beiden Datenbanken können, müssen
8c7e4493 Moritz Bunkus
aber nicht unterschiedlich sein.

4c24a5f4 Sven Schöling
Im einfachsten Fall gibt es für Lx-Office nur eine einzige Datenbank,
8c7e4493 Moritz Bunkus
in der sowohl die Benutzerinformationen als auch die Daten abgelegt
werden.

4c24a5f4 Sven Schöling
Zusätzlich ermöglicht es Lx-Office, dass die Benutzerpasswörter
8c7e4493 Moritz Bunkus
entweder gegen die Authentifizierungsdatenbank oder gegen einen
4c24a5f4 Sven Schöling
LDAP-Server überprüft werden.
8c7e4493 Moritz Bunkus
4c24a5f4 Sven Schöling
Welche Art der Passwortüberprüfung Lx-Office benutzt und wie
8c7e4493 Moritz Bunkus
Lx-Office die Authentifizierungsdatenbank erreichen kann, wird in der
Konfigurationsdatei `config/authentication.pl' festgelegt. Diese muss
3001e127 Moritz Bunkus
bei der Installation und bei einem Upgrade von einer Version vor v2.6.0
8c7e4493 Moritz Bunkus
angelegt werden. Eine Beispielkonfigurationsdatei
`config/authentication.pl.default' existiert, die als Vorlage benutzt
werden kann.

6.2 Administratorpasswort
=========================

Das Passwort, das zum Zugriff auf das Aministrationsinterface benutzt
wird, wird ebenfalls in dieser Datei gespeichert. Es kann auch nur dort
4c24a5f4 Sven Schöling
und nicht mehr im Administrationsinterface selber geändert werden. Der
Parameter dazu heißt `$self->{admin_password}'.
8c7e4493 Moritz Bunkus
6.3 Authentifizierungsdatenbank
===============================

Die Verbindung zur Authentifizierungsdatenbank wird mit den Parametern
in `$self->{DB_config}' konfiguriert. Hier sind die folgenden Parameter
anzugeben:

* `host' - Der Rechnername oder die IP-Adresse des Datenbankservers

* `port' - Die Portnummer des Datenbankservers, meist 5432

* `db' - Der Name der Authentifizierungsdatenbank

* `user' - Der Benutzername, mit dem sich Lx-Office beim
Datenbankserver anmeldet (z.B. "postgres")

4c24a5f4 Sven Schöling
* `password' - Das Passwort für den Datenbankbenutzer
8c7e4493 Moritz Bunkus
Die Datenbank muss noch nicht existieren. Lx-Office kann sie
automatisch anlegen (mehr dazu siehe unten).

4c24a5f4 Sven Schöling
6.4 Passwortüberprüfung
=========================
8c7e4493 Moritz Bunkus
4c24a5f4 Sven Schöling
Lx-Office unterstützt Passwortüberprüfung auf zwei Arten: gegen die
8c7e4493 Moritz Bunkus
Authentifizierungsdatenbank und gegen einen externen LDAP- oder
Active-Directory-Server. Welche davon benutzt wird, regelt der
Parameter `$self->{module}'.

4c24a5f4 Sven Schöling
Sollen die Benutzerpasswörter in der Authentifizierungsdatenbank
8c7e4493 Moritz Bunkus
gespeichert werden, so muss der Parameter `$self->{module}' den Wert
4c24a5f4 Sven Schöling
`DB' enthalten. In diesem Fall können sowohl der Administrator als auch
die Benutzer selber ihre Psaswörter in Lx-Office ändern.
8c7e4493 Moritz Bunkus
Soll hingegen ein externer LDAP- oder Active-Directory-Server benutzt
werden, so muss der Parameter `$self->{module}' auf `LDAP' gesetzt
4c24a5f4 Sven Schöling
werden. In diesem Fall müssen zusätzliche Informationen über den
8c7e4493 Moritz Bunkus
LDAP-Server in `$self->{LDAP_config}' angegeben werden:

* `host' - Der Rechnername oder die IP-Adresse des LDAP- oder
Active-Directory-Servers. Diese Angabe ist zwingend erforderlich.

* `port' - Die Portnummer des LDAP-Servers; meist 389.

4c24a5f4 Sven Schöling
* `tls' - Wenn Verbindungsverschlüsselung gewünscht ist, so diesen
8c7e4493 Moritz Bunkus
Wert auf `1' setzen, andernfalls auf `0' belassen

1b50cdbb Moritz Bunkus
* `attribute' - Das LDAP-Attribut, in dem der Benutzername steht,
4c24a5f4 Sven Schöling
den der Benutzer eingegeben hat. Für Active-Directory-Server ist
dies meist `sAMAccountName', für andere LDAP-Server hingegen
8c7e4493 Moritz Bunkus
`uid'. Diese Angabe ist zwingend erforderlich.
7b642ce6 Moritz Bunkus
8c7e4493 Moritz Bunkus
* `base_dn' - Der Abschnitt des LDAP-Baumes, der durchsucht werden
soll. Diese Angabe ist zwingend erforderlich.

4c24a5f4 Sven Schöling
* `filter' - Ein optionaler LDAP-Filter. Enthält dieser Filter das
8c7e4493 Moritz Bunkus
Wort `<%login%>', so wird dieses durch den vom Benutzer
eingegebenen Benutzernamen ersetzt. Andernfalls wird der LDAP-Baum
nach einem Element durchsucht, bei dem das oben angegebene Attribut
mit dem Benutzernamen identisch ist.

* `bind_dn' und `bind_password' - Wenn der LDAP-Server eine
Anmeldung erfordert, bevor er durchsucht werden kann (z.B. ist
dies bei Active-Directory-Servern der Fall), so kann diese hier
4c24a5f4 Sven Schöling
angegeben werden. Für Active-Directory-Server kann als `bind_dn'
8c7e4493 Moritz Bunkus
entweder eine komplette LDAP-DN wie z.B. `cn=Martin
Mustermann,cn=Users,dc=firmendomain' auch nur der volle Name des
Benutzers eingegeben werden; in diesem Beispiel also `Martin
Mustermann'.

6.5 Name des Session-Cookies
============================

Sollen auf einem Server mehrere Lx-Office-Installationen aufgesetzt
4c24a5f4 Sven Schöling
werden, so müssen die Namen der Session-Cookies für alle Installationen
8c7e4493 Moritz Bunkus
unterschiedlich sein. Der Name des Cookies wird mit dem Parameter
`$self->{cookie_name}' gesetzt.

Diese Angabe ist optional, wenn nur eine Installation auf dem Server
existiert.

6.6 Anlegen der Authentifizierungsdatenbank
===========================================

Nachdem alle Einstellungen in `config/authentication.pl' vorgenommen
wurden, muss Lx-Office die Authentifizierungsdatenbank anlegen. Dieses
geschieht automatisch, wenn Sie sich im Administrationsmodul anmelden,
das unter der folgenden URL erreichbar sein sollte:

`http://localhost/lx-erp/admin.pl'

7 Benutzer- und Gruppenverwaltung
*********************************

4c24a5f4 Sven Schöling
Nach der Installation müssen Benutzer, Gruppen und Datenbanken angelegt
werden. Dieses geschieht im Administrationsmenü, das Sie unter
8c7e4493 Moritz Bunkus
folgender URL finden:
7b642ce6 Moritz Bunkus
`http://localhost/lx-erp/admin.pl'

8c7e4493 Moritz Bunkus
Verwenden Sie zur Anmeldung das Password, dass Sie in der Datei
`config/authentication.pl' eingetragen haben.

4c24a5f4 Sven Schöling
7.1 Zusammenhänge
==================
8c7e4493 Moritz Bunkus
Lx-Office verwendet eine Datenbank zum Speichern all seiner
Informationen wie Kundendaten, Artikel, Angebote, Rechnungen etc. Um
4c24a5f4 Sven Schöling
mit Lx-Office arbeiten zu können, muss eine Person einen
8c7e4493 Moritz Bunkus
Benutzeraccount haben. Jedem Benutzeraccount wiederum wird genau eine
Datenbank zugewiesen, mit der dieser Benutzer arbeiten kann. Es ist
4c24a5f4 Sven Schöling
möglich und normal, dass mehreren Benutzern die selbe Datenbank
zugewiesen wird, sodass sie alle mit den selben Daten arbeiten können.
8c7e4493 Moritz Bunkus
Die Basisdaten der Benutzer, die in der Administration eingegeben
4c24a5f4 Sven Schöling
werden können, werden in einer zweiten Datenbank gespeichert, der
bereits erwähnten Authentifizierungsdatenbank. Diese ist also den
8c7e4493 Moritz Bunkus
Produktivdaten enthaltenden Datenbanken vorgeschaltet. Pro
Lx-Office-Installation gibt es nur eine Authentifizierungsdatenbank,
aber beliebig viele Datenbanken mit Firmendaten.

1b50cdbb Moritz Bunkus
Lx-Office kann seinen Benutzern Zugriff auf bestimmte
8c7e4493 Moritz Bunkus
Funktionsbereiche erlauben oder verbieten. Wird der Zugriff nicht
4c24a5f4 Sven Schöling
gestattet, so werden der entsprechenden Menüpunkte auch nicht
8c7e4493 Moritz Bunkus
angezeigt. Diese Rechte werden ebenfalls in der
Authentifizierungsdatenbank gespeichert.

4c24a5f4 Sven Schöling
Um Rechte verteilen zu können, verwendet Lx-Office ein
8c7e4493 Moritz Bunkus
Gruppen-Prinzip. Einer Gruppe kann der Zugriff auf bestimmte Bereiche
erlaubt werden. Ein Benutzer wiederum kann Mitglied in einer oder
mehrerer Gruppen sein. Der Benutzer hat Zugriff auf alle diejenigen
Funktionen, die mindestens einer Gruppe erlaubt sind, in der der
Benutzer Mitglied ist.

Die allgemeine Reihenfolge, in der Datenbanken, Gruppen und Benutzer
angelegt werden sollten, lautet:

1. Datenbank anlegen

2. Gruppen anlegen

3. Benutzer anlegen

4. Benutzer den Gruppen zuordnen

7.2 Datenbanken anlegen
=======================

4c24a5f4 Sven Schöling
Zuerst muss eine Datenbank angelegt werden. Verwenden Sie für den
8c7e4493 Moritz Bunkus
Datenbankzugriff den vorhin angelegten Benutzer (in unseren Beispielen
ist dies `lxoffice').
7b642ce6 Moritz Bunkus
4c24a5f4 Sven Schöling
Wenn Sie für die Lx-Office-Installation nicht den europäischen
7b642ce6 Moritz Bunkus
Schriftsatz ISO-8859-15 sondern UTF-8 (Unicode) benutzen wollen, so
4c24a5f4 Sven Schöling
müssen Sie vor dem Anlegen der Datenbank in der Datei
2c1c6a9a Moritz Bunkus
`config/lx_office.conf' die Variable `dbcharset' im Abschnitt `system'
auf den Wert `UTF-8' setzen. Zusätzlich muss beim Anlegen der Datenbank
`UTF-8 Unicode' als Schriftsatz ausgewählt werden.
8c7e4493 Moritz Bunkus
Bitte beachten Sie, dass alle Datenbanken den selben Zeichensatz
4c24a5f4 Sven Schöling
verwenden müssen, da diese Einstellungen momentan global in Lx-Office
8c7e4493 Moritz Bunkus
vorgenommen wird und nicht nach Datenbank unterschieden werden kann.
Auch die Authentifizierungsdatenbank muss mit diesem Zeichensatz
angelegt worden sein.

7.3 Gruppen anlegen
===================

Eine Gruppe wird in der Gruppenverwaltung angelegt. Ihr muss ein Name
gegeben werden, eine Beschreibung ist hingegen optional. Nach dem
4c24a5f4 Sven Schöling
Anlegen können Sie die verschiedenen Bereiche wählen, auf die
8c7e4493 Moritz Bunkus
Mitglieder dieser Gruppe Zugriff haben sollen.

4c24a5f4 Sven Schöling
Benutzergruppen sind unabhängig von Datenbanken, da sie in der
Authentifizierungsdatenbank gespeichert werden. Sie gelten für alle
8c7e4493 Moritz Bunkus
Datenbanken, die in dieser Installation verwaltet werden.

7.4 Benutzer anlegen
====================

4c24a5f4 Sven Schöling
Beim Anlegen von Benutzern werden für viele Parameter
8c7e4493 Moritz Bunkus
Standardeinstellungen vorgenommen, die den Gepflogenheiten des
deutschen Raumes entsprechen.

Zwingend anzugeben sind der Loginname sowie die komplette
4c24a5f4 Sven Schöling
Datenbankkonfiguration. Wenn die Passwortauthentifizierung über die
8c7e4493 Moritz Bunkus
Datenbank eingestellt ist, so kann hier auch das Benutzerpasswort
4c24a5f4 Sven Schöling
gesetzt bzw. geändert werden. Ist hingegen die LDAP-Authentifizierung
8c7e4493 Moritz Bunkus
aktiv, so ist das Passwort-Feld deaktiviert.

4c24a5f4 Sven Schöling
In der Datenbankkonfiguration müssen die Zugriffsdaten einer der eben
8c7e4493 Moritz Bunkus
angelegten Datenbanken eingetragen werden.

7.5 Gruppenmitgliedschaften verwalten
=====================================

4c24a5f4 Sven Schöling
Nach dem Anlegen von Benutzern und Gruppen müssen Benutzer den Gruppen
zugewiesen werden. Dazu gibt es zwei Möglichkeiten:
8c7e4493 Moritz Bunkus
4c24a5f4 Sven Schöling
1. In der Gruppenverwaltung wählt man eine Gruppe aus. Im folgenden
Dialog kann man dann einzeln die Benutzer der Gruppe hinzufügen.
8c7e4493 Moritz Bunkus
4c24a5f4 Sven Schöling
2. In der Gruppenverwaltung wählt man das Tool zur Verwaltung der
8c7e4493 Moritz Bunkus
Gruppenmitgliedschaft. Hier wird eine Matrix angezeigt, die alle im
4c24a5f4 Sven Schöling
System angelegten Gruppen und Benutzer enthält. Durch Setzen der
Häkchen wird der Benutzer in der ausgewählten Zeile der Gruppe in
der ausgewählten Spalte hinzugefügt.
8c7e4493 Moritz Bunkus
7.6 Migration alter Installationen
==================================

54377653 Moritz Bunkus
Wenn Lx-Office 2.6.2 über eine ältere Version installiert wird, in der
24e130ef Sven Schöling
die Benutzerdaten noch im Dateisystem im Verzeichnis `users' verwaltet
wurden, so bietet Lx-Office die Möglichkeit, diese Benutzerdaten
automatisch in die Authentifizierungsdatenbank zu übernehmen. Dies
geschieht, wenn man sich nach dem Update der Installation das erste Mal
im Administrationsbereich anmeldet. Findet Lx-Office die Datei
`users/members', so wird der Migrationsprozess gestartet.
8c7e4493 Moritz Bunkus
Der Migrationsprozess ist nahezu vollautomatisch. Alle Benutzerdaten
4c24a5f4 Sven Schöling
können übernommen werden. Nach den Benutzerdaten bietet Lx-Office noch
die Möglichkeit an, dass automatisch eine Benutzergruppe angelegt wird.
Dieser Gruppe wird Zugriff auf alle Funktionen von Lx-Office gewährt.
8c7e4493 Moritz Bunkus
Alle migrierten Benutzern werden Mitglied in dieser Gruppe. Damit wird
das Verhalten von Lx-Office bis Version 2.4.3 inklusive
4c24a5f4 Sven Schöling
wiederhergestellt, und die Benutzer können sich sofort wieder anmelden
8c7e4493 Moritz Bunkus
und mit dem System arbeiten.

8 OpenDocument-Vorlagen
7b642ce6 Moritz Bunkus
***********************

4c24a5f4 Sven Schöling
Lx-Office unterstützt die Verwendung von Vorlagen im
7b642ce6 Moritz Bunkus
OpenDocument-Format, wie es OpenOffice.org ab Version 2 erzeugt.
Lx-Office kann dabei sowohl neue OpenDocument-Dokumente als auch aus
4c24a5f4 Sven Schöling
diesen direkt PDF-Dateien erzeugen. Um die Unterstützung von
8c7e4493 Moritz Bunkus
OpenDocument-Vorlagen zu aktivieren muss in der Datei
2c1c6a9a Moritz Bunkus
`config/lx_office.conf' die Variable `opendocument' im Abschnitt
`print_templates' auf `1' stehen. Dieses ist die Standardeinstellung.
7b642ce6 Moritz Bunkus
2c1c6a9a Moritz Bunkus
Weiterhin muss in der Datei `config/lx_office.conf' die Variable
`dbcharset' im Abschnitt `system' auf die Zeichenkodierung gesetzt
werden, die auch bei der Speicherung der Daten in der Datenbank
verwendet wird. Diese ist in den meisten Fällen "UTF-8".
7b642ce6 Moritz Bunkus
4c24a5f4 Sven Schöling
Während die Erzeugung von reinen OpenDocument-Dateien keinerlei
weitere Software benötigt, wird zur Umwandlung dieser Dateien in PDF
OpenOffice.org benötigt. Soll dieses Feature genutzt werden, so muss
7b642ce6 Moritz Bunkus
neben OpenOffice.org ab Version 2 auch der "X virtual frame buffer"
(xvfb) installiert werden. Bei Debian ist er im Paket "xvfb"
enthalten. Andere Distributionen enthalten ihn in anderen Paketen.

2c1c6a9a Moritz Bunkus
Nach der Installation müssen in der Datei `config/lx_config.conf'
zwei weitere Variablen angepasst werden: `openofficeorg_writer' muss
4c24a5f4 Sven Schöling
den vollständigen Pfad zur OpenOffice.org Writer-Anwendung enthalten.
2c1c6a9a Moritz Bunkus
`xvfb' muss den Pfad zum "X virtual frame buffer" enthalten. Beide
stehen im Abschnitt `applications'.
7b642ce6 Moritz Bunkus
4c24a5f4 Sven Schöling
Zusätzlich gibt es zwei verschiedene Arten, wie Lx-Office mit
7b642ce6 Moritz Bunkus
OpenOffice kommuniziert. Die erste Variante, die benutzt wird, wenn die
Variable `$openofficeorg_daemon' gesetzt ist, startet ein OpenOffice,
das auch nach der Umwandlung des Dokumentes gestartet bleibt. Bei
weiteren Umwandlungen wird dann diese laufende Instanz benutzt. Der
Vorteil ist, dass die Zeit zur Umwandlung deutlich reduziert wird, weil
4c24a5f4 Sven Schöling
nicht für jedes Dokument ein OpenOffice gestartet werden muss. Der
7b642ce6 Moritz Bunkus
Nachteil ist, dass diese Methode Python und die Python-UNO-Bindings
4c24a5f4 Sven Schöling
benötigt, die Bestandteil von OpenOffice 2 sind.
7b642ce6 Moritz Bunkus
4c24a5f4 Sven Schöling
Ist `$openofficeorg_daemon' nicht gesetzt, so wird für jedes
7b642ce6 Moritz Bunkus
Dokument OpenOffice neu gestartet und die Konvertierung mit Hilfe eines
4c24a5f4 Sven Schöling
Makros durchgeführt. Dieses Makro muss in der Dokumentenvorlage
enthalten sein und "Standard.Conversion.ConvertSelfToPDF()" heißen. Die
Beispielvorlage `templates/German-invoice.odt' enthält ein solches
7b642ce6 Moritz Bunkus
Makro, das in jeder anderen Dokumentenvorlage ebenfalls enthalten sein
muss.

Als letztes muss herausgefunden werden, welchen Namen OpenOffice.org
Writer dem Verzeichnis mit den Benutzereinstellungen gibt. Unter Debian
ist dies momentan `~/.openoffice.org2'. Sollte der Name bei Ihrer
OpenOffice.org-Installation anders sein, so muss das Verzeichnis
`users/.openoffice.org2' entsprechend umbenannt werden. Ist der Name
4c24a5f4 Sven Schöling
z.B. einfach nur `.openoffice', so wäre folgender Befehl auszuführen:
7b642ce6 Moritz Bunkus
`mv users/.openoffice.org2 users/.openoffice'

Dieses Verzeichnis, wie auch das komplette `users'-Verzeichnis, muss
8b03f6ca Sven Schöling
vom Webserver beschreibbar sein. Dieses wurde bereits erledigt (*note
Manuelle Installation des Programmpaketes::), kann aber erneut überprüft
4c24a5f4 Sven Schöling
werden, wenn die Konvertierung nach PDF fehlschlägt.
7b642ce6 Moritz Bunkus
8c7e4493 Moritz Bunkus
9 Lx-Office ERP verwenden
7b642ce6 Moritz Bunkus
*************************

Nach erfolgreicher Installation ist der Loginbildschirm unter folgender
URL erreichbar:

`http://localhost/lx-office-erp/login.pl'

Die Administrationsseite erreichen Sie unter:

`http://localhost/lx-office-erp/admin.pl'

0c74481b Moritz Bunkus

Local Variables:
coding: utf-8
End: