19.04.2023

GroupWare

Open Xchange
SOGo
Kopano
Zarafa
Kerio Connect
sonstiges

Links zu den Projekten

Zimbra, Zimbra Wiki
Axigen
DOCUframe
OpenGroupware
SmarterMail
Community Projekt Tine.org
Kolab Community, Kolab Enterprise ausprobieren

Groupware Migration

audriga Groupware Migration

Seitenanfang

Open Xchange

Open-Xchange Community Version
Open-Xchange Forum
Peter's OX Server Admin GUI (für Community Edition)
Anleitungen (PDF) mehere Sprachen

Installation
MySQL einrichten
Apache konfigurieren
Konfiguration
Dateien
Administration
Backup / Restore
Clientsoftware / Outlook PlugIn
sonstiges

Die Groupware fragt einen lokalen/externen IMAP/SMTP Server ab, wenn die Parameter beim anlegen des Users mit übergeben wurden.

Parameter: --imapserver, --smtpserver und --imaplogin

Dabei ist zu beachten, das des OX Login Passwort den Passwort des IMAP/SMTP Servers entspricht, der Loginname ist variable, dieser wird ja beim anlegen des Users mit übergeben.

Seitenanfang

Installation unter Debian

- Update der /etc/apt/sources.list

# /etc/apt/sources.list
deb http://ftp.de.debian.org/debian/ lenny main contrib non-free
deb-src http://ftp.de.debian.org/debian/ lenny main contrib non-free
deb http://security.debian.org/ lenny/updates main contrib
deb-src http://security.debian.org/ lenny/updates main contrib

deb http://software.open-xchange.com/OX6/stable/DebianLenny/ /
# if you have a valid maintenance subscription, please uncomment the 
# following and add the ldb account data to the url so that the most recent
# packages get installed
# deb http://LDBACCOUNT:LDBPASSWORD@software.open-xchange.com/OX6/updates/DebianLenny /

- Offentlichen Schlüssel des OpenXchange Servers importieren

gpg --keyserver keys.gnupg.net --recv DD1A5E9CEED949F0
gpg --export --armor DD1A5E9CEED949F0 | apt-key add -
oder
wget http://software.open-xchange.com/oxbuildkey.pub -O - | apt-key add -

- Installation

apt-get install mysql-server open-xchange-meta-singleserver
oder
apt-get install mysql-server open-xchange-meta-singleserver \
   open-xchange-authentication-database open-xchange-spamhandler-default
Pakete Beschreibung
open-xchange-meta-admin all provisioning packages
open-xchange-meta-gui GUI Paket
open-xchange-meta-messaging the complete messaging packages like unified inbox, twitter, facebook, etc.
open-xchange-meta-mobility OXtender for business mobility
open-xchange-meta-pubsub all publish/subscribe related packages
open-xchange-meta-server the server backend packages
open-xchange-meta-singleserver most of the above

- Language Packages suchen

apt-cache search 'open-xchange-lang*'
apt-cache search 'open-xchange-gui-lang*'
Seitenanfang

MySQL einrichten

- MySQL Benutzer anlegen und Rechte setzen

mysql -h localhost -u root -P 3306 -p
CREATE USER openexchange IDENTIFIED BY 'db_password';
GRANT ALL ON *.* TO openexchange@localhost IDENTIFIED BY "db_password" WITH GRANT OPTION;

- MySQL Connection testen

mysql -h localhost -u openexchange -P 3306 -p
create database testdbox;
drop database testdbox;
exit

Im Beispiel werden folgende Benutzer mit dem Passwörtern anelegt.

Open-Xchange Benutzer
MySQL Datenbank-Benutzer (Datenbank)
Benutzername: openexchange
Passwort: db_password

Open-Xchange Admin Master (Verwaltung)
Benutzername: oxadminmaster
Passwort: admin_master_password

Context Admin
Benutzername: oxadmin
Passwort: admin_password

/opt/open-xchange/sbin/initconfigdb --configdb-pass=db_password -a
oder
/opt/open-xchange/sbin/initconfigdb --configdb-pass=db_password -i
/opt/open-xchange/sbin/oxinstaller --servername=oxserver --configdb-pass=db_password \
 --master-pass=admin_master_password --add-license=f-o-o-b-a-r
/etc/init.d/open-xchange-admin start
/opt/open-xchange/sbin/registerserver -n oxserver -A oxadminmaster -P admin_master_password

- Filestore anlegen

mkdir /var/opt/filestore
chown open-xchange:open-xchange /var/opt/filestore
/opt/open-xchange/sbin/registerfilestore -A oxadminmaster -P admin_master_password \
 -t file:///var/opt/filestore
/opt/open-xchange/sbin/registerdatabase -A oxadminmaster -P admin_master_password \
 -n oxdatabase -p db_password -m true
Seitenanfang

Apache konfigurieren

notwendigen Module

defate.load
expires.load
headers.load
ssl.conf
ssl.load
proxy.load

wenn mehrere Server im Cluster laufen, wird noch das Modul proxy_balancer.load benötigt.

a2enmod proxy
a2enmod proxy_ajp
a2enmod expires
a2enmod deflate
a2enmod headers

- Link zu den Modulen setzen

cd /etc/apache2/mods-enabled
ln -s ../mods-available/expires.load
ln -s ../mods-available/headers.load
ln -s ../mods-available/ssl.conf
ln -s ../mods-available/ssl.load
ln -s ../mods-available/proxy.load
ln -s ../mods-available/proxy_ajp.load
ln -s ../mods-available/proxy_balancer.load

Datei /etc/apache2/conf.d/ox.conf

<IfModule mod_proxy_ajp.c>
 <Proxy /ajax>
  AddDefaultCharset UTF-8
  Order allow,deny
  Allow from all
 </Proxy>
<Proxy /servlet>
  AddDefaultCharset UTF-8
  Order allow,deny
  Allow from all
</Proxy>
# <Proxy balancer://oxcluster>
#  BalancerMember ajp://ox1:8009 smax=0 ttl=60 retry=5 loadfactor=50 route=OX-1
#  BalancerMember ajp://ox2:8009 smax=0 ttl=60 retry=5 loadfactor=50 route=OX-2
# </Proxy>
# ProxyPass /ajax/ balancer://oxcluster/ajax/ stickysession=JSESSIONID
# ProxyPass /servlet/ balancer://oxcluster/servlet/ stickysession=JSESSIONID
</IfModule>
<IfModule mod_defate.c>
  # Logging
  DefateFilterNote ratio
  LogFormat '"%r" %b (%{ratio}n) "%{User-agent}i"' defate
  CustomLog /var/log/apache2/defate.log defate
 <Directory /var/www/ox6>
  AddOutputFilterByType DEFLATE text/html text/plain text/xml text/css \
  text/javascript application/x-javascript
  # Netscape 4.x has some problems...
  BrowserMatch ^Mozilla/4 gzip-only-text/html
  # Netscape 4.06-4.08 have some more problems
  BrowserMatch ^Mozilla/4\.0[678] no-gzip
  # MSIE masquerades as Netscape, but it is fne
  BrowserMatch \bMSI[E] !no-gzip !gzip-only-text/html
  # Make sure proxies don't deliver the wrong content
  #Header append Vary User-Agent env=!dont-vary
  AddDefaultCharset UTF-8
  AddCharset UTF-8 .js
 </Directory>
</IfModule>

Datei /etc/apache2/sites-available/ox-he-ssl

NameVirtualHost *:443
<VirtualHost *:443>
  ServerAdmin webmaster@localhost
  DocumentRoot /var/www/ox6
  DirectoryIndex index.html index.cgi index.pl index.php index.xhtml ox.html
  <Directory />
   Options FollowSymLinks
   AllowOverride None
  </Directory>
    <Directory /var/www/ox6>
    Options Indexes FollowSymLinks MultiViews
    AllowOverride None
    Order allow,deny
    allow from all
    # Uncomment this directive is you want to see apache2's
    # default start page (in /apache2-default) when you go to /
    #RedirectMatch ^/$ /apache2-default/
    </Directory>
   ScriptAlias /cgi-bin/ /usr/lib/cgi-bin/
  <Directory "/usr/lib/cgi-bin">
   AllowOverride None
   Options +ExecCGI -MultiViews +SymLinksIfOwnerMatch
   Order allow,deny
   Allow from all
  </Directory>
   #EXPIRE
   ExpiresActive On
   ExpiresByType image/gif "access plus 23 hours"
   ExpiresByType image/png "access plus 23 hours"
   ExpiresByType image/jpg "access plus 23 hours"
   ExpiresByType image/jpeg "access plus 23 hours"
   ExpiresByType text/javascript "access plus 23 hours"
   ExpiresByType text/css "access plus 23 hours"
   ExpiresByType text/html "access plus 23 hours"
   ExpiresByType application/x-javascript "acces plus 23 hours"
   <Files ~ "\.(js|css|gif|jpe?g|png)$">
     Header append Cache-Control "public"
   </Files>
   # SSL Protocol Adjustments
   # needs to be removed from mods-available/ssl.conf
   SetEnvIf User-Agent ".*MSIE [0-6]\..*" \
   nokeepalive ssl-unclean-shutdown \
   downgrade-1.0 force-response-1.0
   ErrorLog /var/log/apache2/error.log
   # Possible values include: debug, info, notice, warn, error, crit,
   # alert, emerg.
   LogLevel warn
   CustomLog /var/log/apache2/access.log combined
   ServerSignature On
   SSLEngine On
   SSLCertificateFile /etc/apache2/ssl/server.crt
   SSLCertificateKeyFile /etc/apache2/ssl/server.key
</VirtualHost>

- Datei aktivieren

a2ensite ox-he-ssl

- SSL Zertifikat erstellen (5 Jahre Laufzeit)

mkdir /etc/apache2/ssl
openssl req -new -x509 -nodes -out server.crt -keyout server.key -days 1825
oder
openssl req -new -key server.key -out server.csr
openssl x509 -req -days 1825 -in server.csr -out server.crt -signkey server.key
Seitenanfang

Konfiguration

- Content Admin Account erstellen

/opt/open-xchange/sbin/createcontext -A oxadminmaster -P admin_master_password -c 1 -u oxadmin \
-d "Context Admin" -g Admin -s User -p admin_password -e oxadmin@example.com \
-q 1024 -L defaultcontext --access-combination-name=all

- ersten Benutzer erstellen

/opt/open-xchange/sbin/createuser -c 1 -A oxadmin -P admin_password -u testuser \
-d "Test User" -g Test -s User -p secret -e testuser@example.com \
--imaplogin testuser --imapserver 127.0.0.1 --smtpserver 127.0.0.1

- Apache und Groupware starten

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

Fehlersuche

tail -f -n200 /var/log/open-xchange/open-xchange.log.0
tail -f -n200 /var/log/open-xchange/open-xchange-admin.log.0

- Registrierte Server anzeigen

/opt/open-xchange/sbin/listserver lists -A oxadminmaster -P admin_master_password

Mailserver Installation

Cyrus

Anleitung

apt-get install cyrus-admin-2.2 cyrus-imapd-2.2 sasl2-bin libsasl2-modules postfix

Datei /etc/imapd.conf anpassen

unixhierarchysep: yes
admins: cyrus

Cyrus neustarten

/etc/init.d/cyrus2.2 restart

Cyrus Benutzer erstellen

saslpasswd2 -c cyrus
saslpasswd2 -c oxadmin

an die Cyrus Shell mit dem gerade erstellten Passwort anmelden.

cyradm --user cyrus --authz cyrus localhost
Password:
localhost>
cm user/oxadmin
quit

Postfix

Datei /etc/group anpassen

mail:x:8:postfix

/etc/postfix/master.cf

# ==========================================================================
# service type  private unpriv  chroot  wakeup  maxproc command + args
#               (yes)   (yes)   (yes)   (never) (100)
# ==========================================================================
...
lmtp      unix  -       -       n       -       -       lmtp
...

/etc/postfix/main.cf

mynetworks = 127.0.0.1/8, ip.of.ox.server
...
canonical_maps = hash:/etc/postfix/canonical
mailbox_transport = lmtp:unix:/var/run/cyrus/socket/lmtp
local_recipient_maps = proxy:unix:passwd.byname $alias_maps hash:/etc/postfix/cyrus_recipients

/etc/postfix/canonical

oxadmin oxadmin@example.com OK

postmap Befehl ausführen, um die Änderung der Datei zu übernehmen

postmap hash:/etc/postfix/canonical

/etc/postfix/cyrus_recipients

oxadmin OK

postmap Befehl ausführen, um die Änderung der Datei zu übernehmen

postmap hash:/etc/postfix/cyrus_recipients

Postfix neustarten

/etc/init.d/postfix restart
Seitenanfang

Dateien

Dateiname Bedeutung
/opt/open-xchange/etc/admindaemon/system.properties  
/opt/open-xchange/etc/admindaemon/AdminDaemon.properties AdminDaemon Konfigurationsdatei
/opt/open-xchange/etc/admindaemon/mpasswd Verwalter Passwortdatei
/opt/open-xchange/etc/groupware/mailfilter.properties Sieve Server Einstellungen
/opt/open-xchange/etc/groupware/mail.properties MailServer Einstellungen
   
   
   
   

/opt/open-xchange/etc/groupware/mail.properties

...
com.openexchange.mail.mailServer=imap://127.0.0.1:143
com.openexchange.mail.transportServer=smtp://127.0.0.1:25
...

 

 

Seitenanfang

Administration

Benutzer anlegen

/opt/open-xchange/sbin/createuser -c 1 -A oxadmin -P admin_password -u max \
-d "erster Benutzer" -g Max -s Mustermann -p geheim -e mmustermann@domain.tld \
--imaplogin max --imapserver 127.0.0.1 --smtpserver 127.0.0.1

Parameter
-u Login Name des neuen Nutzers
-d Beschreibung
-g Vorname
-s Nachname
-p Login Passwort
-e eMail Adresse
--imaplogin IMAP Login Name
--imapserver IP IMAP Server
--smtpserver IP SMTP Server

wenn mit dem Parameter --imaplogin der Login-Name gesetzt wurde, muß in der Datei /opt/open-xchange/etc/groupware/mail.properties der Parameter
com.openexchange.mail.credSrc=user.imapLogin gesetzt sein.

Benutzer anzeigen

/opt/open-xchange/sbin/listuser lists -A oxadmin -P admin_password -c 1
Id	Name		Displayname	Email
2	oxadmin		Context Admin	oxadmin@example.com
3	testuser	Test User	testuser@example.com
4	benutzer1	Benutzer1	benutzer1@example.com

Parameter
-A Benutzername Context Admin
-P Passwort Context Admin
-c 1 ContextID

Benutzer ändern

changeuser --imapserver imap.gmx.net --smtpserver smtp.gmx.net \
 --imaplogin user.name@gmx.com -u benutzer1 -p secret

Parameter
-u OX Loginname
-p OX Passwort
--imaplogin externer/interner IMAP Loginname
--imapserver IMAP Servername
--smtpserver SMTP Servername

Benutzer "testuser" löschen

/opt/open-xchange/sbin/deleteuser -A oxadmin -P admin_password -c 1 -u testuser

 

Seitenanfang

Backup / Restore

- Backup der Datenbank

mysqldump --all-databases --single-transaction -u <Benutzer> -p > oxbackup.sav

 

Seitenanfang

Clientsoftware / Outlook PlugIn

Reparatur OXtender Outlook PlugIn bei Problemen mit der Syncronisation

  1. Software deinstallieren OXtender 2 und anschließend den OX Updater
  2. Entfernen Sie nun die Inhalte im folgenden Ordner %localappdata%\OXSTORE2
  3. Windows neu starten
  4. Software installieren OX Updater und anschließend den OXtender 2

 

Seitenanfang

sonstiges

- Datei /opt/open-xchange/etc/admindaemon/mpasswd neu erstellen, das Passwort für den Verwalter (oxadminmaster) wird neu gesetzt.

/opt/open-xchange/sbin/generatempasswd

- Überprüfung, ob der Mailfilter aktiv ist

/opt/open-xchange/sbin/listbundles | grep mail

- Deaktivieren des Mailfilters mit

/opt/open-xchange/sbin/stopbundle com.openexchange.mail.filter

- mehere Mail Adressen für einen User

/opt/open-xchange/sbin/changeuser --access-multiple-mail-accounts <on/off>