Debian Open-Xchange: Unterschied zwischen den Versionen

Aus Wiki
Zur Navigation springen Zur Suche springen
Keine Bearbeitungszusammenfassung
Keine Bearbeitungszusammenfassung
Zeile 69: Zeile 69:
==User anlegen==
==User anlegen==
User die auf Open-Xchange Zugriff erhalten sollen müssen zuvor in der Datenbank angelegt werden.
User die auf Open-Xchange Zugriff erhalten sollen müssen zuvor in der Datenbank angelegt werden.
Damit später Imap-User gegen die Open-Xchange Datenbank authorisiert werden können, muß noch das Passwort-Hashing-Verfahren auf CRYPT geändert werden:
Damit später Imap-User gegen die Open-Xchange Datenbank authorisiert werden können ([[Debian_Open-Xchange#Optional: Imap User gegen Open-Xchange authorisieren||→ siehe hier]]) , muß noch das Passwort-Hashing-Verfahren auf CRYPT geändert werden:
  vi /opt/open-xchange/etc/admindaemon/User.properties
  vi /opt/open-xchange/etc/admindaemon/User.properties
Den Eintrag DEFAULT_PASSWORD_MECHANISM von SHA auf CRYPT abändern:
Den Eintrag DEFAULT_PASSWORD_MECHANISM von SHA auf CRYPT abändern:
  DEFAULT_PASSWORD_MECHANISM=CRYPT
  DEFAULT_PASSWORD_MECHANISM=CRYPT
createuser kennt folgende Optionen:
{| border="1"
!Long Parameter
!Short Parameter
!Bedeutung
|-
| --adminuser
| -A
| Adminuser der zur Authorisierung nötig ist. Normalerweise '''oxadmin'''
|-
| --adminpass
| -P
|Passwort '''''admin_pwd''''' des Users '''oxadmin'''
|-
| --contextid
| -c
|Context-ID. Normalerweise '''1'''
|-
| --username
| -u
|Username (Loginname)
|-
| --displayname
| -d
|Displayname: In Open-Xchange angezeigter Name
|-
| --password
| -p
|Passwort des neu anzulegenden Users
|-
| --email
| -e
|Emailadresse des neuen Users
|-
| --givenname
| -g
|Givenname: Z.B. Vorname des Users
|-
| --surname
| -s
|Nachname des Users
|-
| --language
| -l
|Defaultsprache der Open-Xchange Oberfläche des neuen Users. Kann auch in den Optionen später vom Nutzer selbst geändert werden.
|-
| --department
| -x
|Abteilung
|-
| --company
| -z
|Firma
|-
| --imaplogin
|
|Loginname des Nutzers auf dem Imap-Server
|-
| --imapserver
|
|Hostadresse des Imap-Servers. Normalerweise '''localhost'''
|-
| --smtpserver
|
|Hostadresse des SMTP-Servers. Normalerweise '''localhost'''
|}


Anlegen des Users Tux (Befehl besteht aus zwei Zeilen):
Anlegen des Users Tux (Befehl besteht aus zwei Zeilen):
Zeile 148: Zeile 216:
Rechte anpassen, um das Datenbank-Passwort im File libnss-mysql-root.cfg vor fremdem Zugriff zu schützen:
Rechte anpassen, um das Datenbank-Passwort im File libnss-mysql-root.cfg vor fremdem Zugriff zu schützen:
  chmod 600 /etc/libnss-mysql-root.cfg
  chmod 600 /etc/libnss-mysql-root.cfg
chmod 600 /etc/libnss-mysql.cfg
chmod 600 /etc/pam.d/imap
chmod 600 /etc/pam.d/sieve

Version vom 12. April 2009, 07:04 Uhr

Allgemein

Voraussetzungen:

Installation

Installation der Pakete

Hinweis: Folgende Zeilen stellen einen Befehl dar, der sich über mehrere Zeilen erstreckt.
apt-get install mysql-server open-xchange-admin-client \
open-xchange-admin-doc open-xchange-admin-plugin-hosting-doc \
open-xchange-admin-plugin-hosting open-xchange-admin \
open-xchange-authentication-database open-xchange-cache \
open-xchange-charset open-xchange-common open-xchange-configjump-generic \
open-xchange-configread open-xchange-control open-xchange-data-conversion-ical4j \
open-xchange-conversion-engine open-xchange-conversion-servlet \
open-xchange-global open-xchange-group-managerequest open-xchange-gui \
open-xchange-i18n open-xchange-imap open-xchange-jcharset open-xchange-mailfilter \
open-xchange-management open-xchange-monitoring open-xchange-online-help-de \
open-xchange-online-help-en open-xchange-online-help-fr \
open-xchange-passwordchange-database open-xchange-passwordchange-servlet \
open-xchange-push-udp open-xchange-resource-managerequest open-xchange-server \
open-xchange-sessiond open-xchange-settings-extensions open-xchange-smtp \
open-xchange-spamhandler-default open-xchange open-xchange-contactcollector

Nach dem Download aller Pakete erscheint das Java Licence Agreement. Dieses mit OK bestätigen: Tab+Enter Die Java Einverständnis-Frage mit ja beantworten: Cursor links/rechts + Enter

Datenbank anlegen

Open-Xchange bringt ein umfangreiches Script mit, um die Datenbank anzulegen und einzurichten. Dieses funktioniert allerdings nur, wenn dem MySQL-Superuser root kein Paswort zugeordnet ist. Zum Entfernen des Paswortes folgenden Befehl eingeben:

mysqladmin -u root -p password 

Das alte root_pwd eingeben, um das Paswort endgültig zu löschen.

Einrichten der Datenbank (ox_pwd mit einem sinnvollen Passwort für die Datenbank ersetzen):

/opt/open-xchange/sbin/initconfigdb --configdb-pass=ox_pwd -a


Achtung:
Unbedingt wieder das Root-Passwort für den MySQL-Datenbankserver vergeben, da ansonsten jeder Datenbanken und weitere User anlegen, löschen oder sich Rechte erteilen könnte:
mysqladmin -u root password root_pwd

Abschließen der Installation

Starten des Adminservers:

/etc/init.d/open-xchange-admin start

Vergeben eines Passwortes für den Administrator: admin_pwd

cd /opt/open-xchange/sbin
./oxinstaller --servername=oxserver --configdb-pass=ox_pwd --master-pass=admin_pwd --ajp-bind-port=localhost

Registrieren des Servers bei der Datenbank:

./registerserver -n oxserver -A oxadminmaster -P admin_pwd 

Anlegen eines lokalen Filestore:

mkdir /var/opt/filestore
chown open-xchange:open-xchange /var/opt/filestore
./registerfilestore -A oxadminmaster -P admin_pwd -t file:///var/opt/filestore

Registrieren der Groupware Datenbank:

./registerdatabase -A oxadminmaster -P admin_pwd -n oxdatabase -p ox_pwd -m true

Context anlegen (Befehl besteht aus zwei Zeilen ; domain.org durch reale Domain ersetzen):

./createcontext -A oxadminmaster -P admin_pwd -c 1 -u oxadmin -d "Context Admin" -g Admin -s User\
-p admin_pwd -L defaultcontext -e oxadmin@domain.org -q 1024 --access-combination-name=all

User anlegen

User die auf Open-Xchange Zugriff erhalten sollen müssen zuvor in der Datenbank angelegt werden. Damit später Imap-User gegen die Open-Xchange Datenbank authorisiert werden können (|→ siehe hier) , muß noch das Passwort-Hashing-Verfahren auf CRYPT geändert werden:

vi /opt/open-xchange/etc/admindaemon/User.properties

Den Eintrag DEFAULT_PASSWORD_MECHANISM von SHA auf CRYPT abändern:

DEFAULT_PASSWORD_MECHANISM=CRYPT

createuser kennt folgende Optionen:

Long Parameter Short Parameter Bedeutung
--adminuser -A Adminuser der zur Authorisierung nötig ist. Normalerweise oxadmin
--adminpass -P Passwort admin_pwd des Users oxadmin
--contextid -c Context-ID. Normalerweise 1
--username -u Username (Loginname)
--displayname -d Displayname: In Open-Xchange angezeigter Name
--password -p Passwort des neu anzulegenden Users
--email -e Emailadresse des neuen Users
--givenname -g Givenname: Z.B. Vorname des Users
--surname -s Nachname des Users
--language -l Defaultsprache der Open-Xchange Oberfläche des neuen Users. Kann auch in den Optionen später vom Nutzer selbst geändert werden.
--department -x Abteilung
--company -z Firma
--imaplogin Loginname des Nutzers auf dem Imap-Server
--imapserver Hostadresse des Imap-Servers. Normalerweise localhost
--smtpserver Hostadresse des SMTP-Servers. Normalerweise localhost


Anlegen des Users Tux (Befehl besteht aus zwei Zeilen):

createuser -c 1 -A oxadmin -P admin_pwd -u tux -d "User Tux" -g tux -s Tux_Vorname \
-p tux_pwd -e tux@domain.org --imaplogin tux --imapserver localhost --smtpserver localhost


Groupwarestart und Funktionscheck

Zunächst muß der Groupware-Server gestartet werden:

/etc/init.d/open-xchange-groupware start

Webbrowser öffnen und Adresse http://IP_Des_Servers/ox6 eingeben. Der Login-Bildschirm von Open-Exchange erscheint.


Optional: Imap User gegen Open-Xchange authorisieren

Nachdem Open-Xchange eine komplette Userverwaltung mitbringt, empfiehlt es sich die Imap-user gegen die Open-Xchange Datenbank zu authorisieren. Dies hat den Vorteil, dass die Passwörter nur einmal gepflegt werden müssen. Weiterhin kann jeder User sein Passwort in der Open-Xchangen Weboberfläche sehr einfach ändern.

apt-get install libnss-mysql libpam-mysql
vi /etc/pam.d/imap 

Alle vorhandenen Einträge auskommentieren (#-Zeichen davor setzen) und folgende Zeilen einfügen {{Rechteck3:Hinweis:

Sämtliche Einträge hinter auth in eine Zeile und hinter accout in eine Zeile. Die Zeilenumbrüche sind nur zur Erhöhung der Übersichtlichkeit eingefügt.}}
auth    optional pam_mysql.so host=/var/run/mysqld/mysqld.sock user=openexchange passwd=ox_pwd db=oxdatabase_7
        [table=login2user LEFT JOIN user ON login2user.id=user.id AND login2user.cid=user.cid] [where=user.cid=1]
        usercolumn=login2user.uid passwdcolumn=user.userPassword crypt=1
account required pam_mysql.so host=/var/run/mysqld/mysqld.sock user=openexchange passwd=ox_pwd db=oxdatabase_7
        [table=login2user LEFT JOIN user ON login2user.id=user.id AND login2user.cid=user.cid]  [where=user.cid=1]
        usercolumn=login2user.uid passwdcolumn=user.userPassword crypt=1
cp /etc/pam.d/imap /etc/pam.d/sieve
vi /etc/libnss-mysql.cfg

Folgende Zeilen einfügen: {{Rechteck3:Hinweis:

Einträge, die ganz links beginnen in eine Zeile schreiben. Die Zeilenumbrüch und Einrückungen wurden nur zur Erhöhung der Übersichtlichkeit eingefügt.}}
getpwnam  SELECT login2user.uid,'x',user.uidNumber,user.gidNumber,prg_contacts.field01,user.homeDirectory,user.loginShell 
          FROM login2user,user,prg_contacts WHERE login2user.cid=1 AND login2user.id=user.id 
          AND login2user.id=prg_contacts.userid AND login2user.uid='%1$s' LIMIT 1
getpwuid  SELECT login2user.uid,'x',user.uidNumber,user.gidNumber,prg_contacts.field01,user.homeDirectory,user.loginShell
          FROM login2user,user,prg_contacts WHERE user.cid=1 AND login2user.id=user.id AND prg_contacts.userid=user.id 
          AND user.uidNumber='%1$u' LIMIT 1
getspnam  SELECT login2user.uid,'x',user.uidNumber,user.gidNumber,user.shadowLastChange,0,0,-1,-1,'A' 
          FROM login2user,user WHERE login2user.cid=1 AND login2user.id=user.id AND login2user.uid='%1$s' LIMIT 1
getpwent  SELECT login2user.uid,'x',user.uidNumber,user.gidNumber,prg_contacts.field01,user.homeDirectory,user.loginShell
          FROM login2user,user,prg_contacts WHERE login2user.cid=1 AND login2user.id=user.id
          AND login2user.id=prg_contacts.userid
getspent  SELECT login2user.uid,user.userPassword,user.shadowLastChange,0,0,-1,-1,'A' FROM login2user,user
          WHERE login2user.cid=1 AND login2user.id=user.id;
getgrnam  SELECT identifier,'x',gidNumber FROM groups WHERE groups.cid=1 AND identifier='%1$s' LIMIT 1
getgrgid  SELECT identifier,'x',gidNumber FROM groups WHERE groups.cid=1 AND gidNumber='%1$u' LIMIT 1
getgrent  SELECT identifier,'x',gidNumber FROM groups WHERE groups.cid=1
memsbygid SELECT login2user.uid FROM login2user,groups,groups_member WHERE groups.cid=1 AND groups.id=groups_member.id
          AND  groups_member.member=login2user.id AND groups.gidNumber='%1$u'
gidsbymem SELECT groups.gidNumber FROM groups,groups_member,user,login2user WHERE groups.cid=1
          AND groups_member.member=user.id AND user.id=login2user.id AND groups.id=groups_member.id
          AND login2user.uid='%1$s';
host      localhost
database  oxdatabase_7
username  openexchange
password  ox_pwd
vi /etc/libnss-mysql-root.cfg

Folgende Zeilen einfügen:

username    openexchange
password    ox_pwd
vi /etc/nsswitch.conf

Alle vorhandenen Zeilen auskommentieren (#Zeichen davor setzen) und folgende Zeilen einfügen:

passwd:         files mysql
group:          files mysql
hosts:          files dns

Rechte anpassen, um das Datenbank-Passwort im File libnss-mysql-root.cfg vor fremdem Zugriff zu schützen:

chmod 600 /etc/libnss-mysql-root.cfg
chmod 600 /etc/libnss-mysql.cfg
chmod 600 /etc/pam.d/imap 
chmod 600 /etc/pam.d/sieve