Linuxhotel Wiki

Wie ging das nochmal?

Benutzer-Werkzeuge

Webseiten-Werkzeuge


fortgeschrittene:egroupware

Unterschiede

Hier werden die Unterschiede zwischen zwei Versionen gezeigt.

Link zu der Vergleichsansicht

Beide Seiten, vorherige Überarbeitung Vorherige Überarbeitung
fortgeschrittene:egroupware [2026/03/16 17:11]
ingo_wichmann gelöscht
— (aktuell)
Zeile 1: Zeile 1:
-====== Installation eGroupWare ====== 
-===== Vorraussetzungen =====  
-  * [[ldap ​        | LDAP Server ]] 
-  * [[cyrus-imapd ​ | IMAP Server ]] ( [[cyrus-imapd-ssl | mit TLS/SSL ]] ) 
-  * [[postfix-ldap | SMTP Server ]] ( mit TLS/SSL )  
-  * [[apache ​      | Apache Webserver ]] ( [[apache-ssl | mit TLS/SSL ]] ) 
- 
-MySQL oder Postgres 
- 
- 
-==== OpenLDAP ==== 
-=== Debian 4.0 === 
-  zcat /​usr/​share/​doc/​egroupware-core/​ldap/​rfc2307bis.schema.gz > /​etc/​ldap/​schema/​rfc2307bis.schema 
- 
-''/​etc/​ldap/​slapd.conf''​ : ((Die Nutzung des rfc2307bis.schema ist optional, genaueres unter doc/​egroupware-core/​ldap/​README ))  
-<​file>​ 
-#​include ​        /​etc/​ldap/​schema/​nis.schema 
-include ​        /​etc/​ldap/​schema/​rfc2307bis.schema 
-include ​        /​etc/​ldap/​schema/​inetorgperson.schema 
-</​file>​ 
- 
-''/​etc/​ldap/​schema/​rfc2307bis.schema''​ : 
- 
-Hier müssen die Attribute ''​uidNumber''​ und ''​gidNumber''​ entfernt werden 
- 
-Für das Adressbuch werden noch folgende weitere Schemata empfohlen: 
-  * ''​./​addressbook/​doc/​mozillaabpersonalpha.schema''​ 
-  * ''​./​addressbook/​doc/​evolutionperson.schema''​ 
- 
-<​file>​ 
-include ​        /​etc/​ldap/​schema/​mozillaabpersonalpha.schema 
-include ​        /​etc/​ldap/​schema/​evolutionperson.schema 
-</​file>​ 
- 
-Für [[samba-ldap|Samba]] wird das Samba-Schema benötigt: 
- 
-<​file>​ 
-include ​        /​etc/​ldap/​schema/​samba.schema 
-</​file>​ 
- 
-  slaptest 
- 
-=== SuSE 10.0 === 
-''/​etc/​openldap/​slapd.conf''​ : 
-<​file>​ 
-include ​        /​etc/​openldap/​schema/​rfc2307bis.schema 
-include ​        /​etc/​openldap/​schema/​inetorgperson.schema 
-</​file>​ 
- 
-=== Verzeichnisbaum füllen === 
- 
-OrganizationalUnits "​people"​ und "​groups"​ für Benutzer und Gruppen im LDAP-Baum anlegen: (( Die Kursschreibweise ''​ldapadd -x -W''​ ohne Angabe des Admin-Kontos funktioniert nur, wenn vorher eine [[ldap|Konfigurationsdatei]] ''​.ldaprc''​ oder ''​ldap.conf''​ angelegt wurde )) 
-<code bash> 
-DOMAIN="​dc=linuxhotel,​dc=de"​ 
-ldapadd -x -W <<​LDIF 
-</​code>​ 
- 
-<​file>​ 
-dn: cn=egroupware,​$DOMAIN 
-objectClass:​ simpleSecurityObject 
-objectClass:​ organizationalRole 
-cn: egroupware 
-userPassword:​ villa 
-description:​ egroupware access 
- 
-dn: ou=people,​$DOMAIN 
-objectClass:​ top 
-objectClass:​ organizationalUnit 
-ou: people 
- 
-dn: uid=admin,​ou=people,​$DOMAIN 
-objectClass:​ top 
-objectClass:​ inetOrgPerson 
-objectClass:​ posixAccount 
-objectClass:​ shadowAccount 
-uidNumber: 10000 
-gidNumber: 10000 
-loginShell: /bin/bash 
-uid: admin 
-homeDirectory:​ /home/admin 
-sn: admin 
-cn: Administrator 
-userPassword:​ villa 
- 
-dn: ou=groups,​$DOMAIN 
-objectClass:​ top 
-objectClass:​ organizationalUnit 
-ou: groups 
- 
-dn: cn=Default,​ou=groups,​$DOMAIN 
-objectClass:​ top 
-objectClass:​ posixGroup 
-objectClass:​ groupOfNames 
-gidNumber: 10001 
-cn: Default 
-memberUid: admin 
-member: uid=admin,​ou=people,​$DOMAIN 
- 
-dn: cn=Admins,​ou=groups,​$DOMAIN 
-objectClass:​ top 
-objectClass:​ posixGroup 
-objectClass:​ groupOfNames 
-gidNumber: 10000 
-cn: Admins 
-memberUid: admin 
-member: uid=admin,​ou=people,​$DOMAIN 
- 
-dn: ou=contacts,​$DOMAIN 
-objectClass:​ top 
-objectClass:​ organizationalUnit 
-ou: contacts 
- 
-dn: ou=shared,​ou=contacts,​$DOMAIN 
-objectClass:​ top 
-objectClass:​ organizationalUnit 
-ou: shared 
- 
-dn: ou=personal,​ou=contacts,​$DOMAIN 
-objectClass:​ top 
-objectClass:​ organizationalUnit 
-ou: personal 
- 
-</​file>​ 
- 
-==== MySQL ==== 
-=== Pakete === 
-== SuSE 10.3 == 
-  mysql 
- 
-=== Konfiguration === 
-  /​etc/​init.d/​mysql start 
-  mysql -u root -p 
-  CREATE DATABASE egroupware; 
-  GRANT ALL ON egroupware.* TO egroupware@localhost IDENTIFIED BY '​Passwort';​ 
-  quit; 
- 
- 
-==== Postgres ==== 
-=== Pakete === 
-== Debian 4.0 == 
-  postgresql 
- 
-=== Konfiguration === 
-  su - postgres 
-  createuser --no-adduser --no-createdb -P egroupware 
-  createdb --encoding=utf-8 --owner egroupware egroupware 
- 
-Als root: 
- 
-''/​etc/​postgresql/​*/​*/​pg_hba.conf''​ : ( Debian 4.0 ) 
-<​file>​ 
-host  egroupware ​ egroupware ​ 127.0.0.1 ​ 255.255.255.255 ​ md5 
-</​file>​ 
- 
-''/​etc/​postgresql/​*/​*/​postgresql.conf''​ : ( Debian 4.0 ) 
-<​file>​ 
-tcpip_socket = true 
-</​file>​ 
- 
-  /​etc/​init.d/​postgresql-* restart 
- 
-===== Pakete ===== 
-==== SuSE 10.3 ==== 
-  zypper addrepo http://​download.opensuse.org/​repositories/​server:/​eGroupWare/​openSUSE_10.3/​ eGroupWare-10.3 
-  zypper install eGroupWare php5-mysql php5-ldap php5-pear-auth_sasl ​ 
- 
- 
-==== Debian 4.0 ==== 
-eGroupWare ist in Debain Etch nicht enthalten, aber es gibt ein passendes backports.org-Paket. Dieses Paket enthält allerdings noch Version 1.2.x. In Version 1.3.007 wurde die [[  http://​www.egroupware.org/​index.php?​page_name=wiki&​lang=de&​wikipage=AddresbookAccountsConcept | LDAP Unterstützung erheblich ]] verbessert. Damit sind die aktuellen [[http://​packages.debian.org/​egroupware | Debian-Pakete ]] in  
-[[http://​packages.debian.org/​sarge/​egroupware | sarge ]],  
-[[http://​packages.debian.org/​etch-backports/​egroupware | etch-backports ]] und  
-[[http://​packages.debian.org/​lenny/​egroupware | lenny ]]  
- für //mich// zur Zeit (9.5.2008) uninteressant. In  
-[[http://​packages.debian.org/​sid/​egroupware | sid ]],  
-ist eine Version 1.4.x ... mal sehen wann die in den backports ankommt. ​ 
- 
-Bleibt das Original von der [[ http://​sourceforge.net/​projects/​egroupware/​ | egroupware Sourceforge Seite ]] 
- 
-=== Original === 
-  aptitute install ​ apache2 libapache2-mod-php5 php5-gd php5-pgsql php5-imap php5-auth-pam php-log php-pear php5-ldap php5-mcrypt php5-mhash 
-  mkdir -p /​var/​www/​egroupware/​html 
-  cd /​var/​www/​egroupware 
-  tar xjf /​tmp/​eGroupWare-1.4.004-2.tar.bz2 
-  tar xjf /​tmp/​eGroupWare-egw-pear-1.4.004-2.tar.bz2 
-  mv egroupware/ html 
- 
-=== Alte Version 1.2.x === 
-Diese Version benutzt ein eigenes LDAP-Schema für Benutzer und Kontakt-Daten. 
-Habe ich daher nicht getestet. 
- 
-''/​etc/​apt/​sources.list''​ 
-<​file>​ 
-deb http://​www.backports.org/​debian etch-backports main contrib non-free 
-</​file>​ 
-  wget -O - http://​backports.org/​debian/​archive.key | apt-key add - 
-  apt-get update 
-  aptitude install egroupware ​ 
- 
-=== Version 1.4.x aus sid === 
-(funktioniert unter etch nicht, debhelper version 7 erforderlich) 
- 
-''/​etc/​apt/​sources.list''​ : 
-<​file>​ 
-deb-src http://​ftp.de.debian.org/​debian sid main 
-</​file>​ 
- 
-  aptitude update 
-  aptitude install fakeroot 
-  apt-get build-dep egroupware 
- 
-Als Nutzer: 
-  apt-get source egroupware-egw-pear 
-  cd egroupware-egw-pear-1.4.*/​ 
-  dpkg-buildpackage -rfakeroot -uc -b 
- 
-  cd .. 
- 
-  apt-get source egroupware 
-  cd egroupware-1.4.*.dfsg/​ 
-  dpkg-buildpackage -rfakeroot -uc -b 
- 
-Als root: 
-  dpkg -i /​home/​nutzer/​egroupware*.deb 
- 
- 
- 
- 
- 
- 
- 
-===== Konfiguration ===== 
-  /​etc/​init.d/​apache2 restart 
- 
-''/​setup/​check_install.php''​ ausführen und angezeigte Konfigurationen vornehmen 
- 
-Beim Ausfüllen der Webformulare beachten: ein bestehender LDAP-Nutzer (hier: nutzer17) sollte zum eGroupWare admin gemacht werden. Mit dem Admin ist hier nicht der "​Setup-/​Konfigurationsadmin"​ und auch nicht der "​Benutzer Headerverwaltung"​ gemeint. ​ 
-  firefox http://​notebook17.linuxhotel.de/​egroupware/​setup/​index.php 
- 
-''​header.inc.php''​ : ( Auszug ) 
-<code php> 
-        $GLOBALS['​egw_info'​]['​server'​]['​header_admin_user'​] = '​admin';​ 
-        $GLOBALS['​egw_info'​]['​server'​]['​header_admin_password'​] = '​admin-passwort-hash';​ 
-        $GLOBALS['​egw_info'​]['​server'​]['​setup_acl'​] = '';​ 
- 
-        /* eGroupWare domain-specific db settings */ 
-        $GLOBALS['​egw_domain'​]['​naturnah.de'​] = array( 
-                '​db_host'​ => '​localhost',​ 
-                '​db_port'​ => '​5432',​ 
-                '​db_name'​ => '​egroupware',​ 
-                '​db_user'​ => '​egroupware',​ 
-                '​db_pass'​ => '​datenbank-passwort',​ 
-                // Look at the README file 
-                '​db_type'​ => '​pgsql',​ 
-                // This will limit who is allowed to make configuration modifications 
-                '​config_user' ​  => '​admin',​ 
-                '​config_passwd'​ => '​admin-passwort-hash';;​ 
-        ); 
- 
-</​code>​ 
-  chown root:​www-data header.inc.php 
-  chmod 640 header.inc.php 
- 
-  psql -c '​SELECT * from egw_config;'​ -d egroupware 
-( Auszug ) 
-<​file>​ 
- ​config_app ​  ​| ​       config_name ​       | config_value 
- 
- ​phpgwapi ​    | site_title ​               | Linuxhotel Lab 
- ​phpgwapi ​    | email_address_format ​     | account 
- ​phpgwapi ​    | ldap_contact_context ​     | dc=lab,​dc=linuxhotel,​dc=de 
- ​phpgwapi ​    | login_logo_url ​           | http://​www.linuxhotel.de 
- ​phpgwapi ​    | login_logo_title ​         | Linuxhotel Lab Groupware 
- ​phpgwapi ​    | login_logo_file ​          | linuxhotel-logo-150.png 
- ​phpgwapi ​    | ldap_contact_host ​        | localhost 
- ​phpgwapi ​    | mail_server ​              | localhost 
- ​phpgwapi ​    | mail_server_type ​         | imap 
- ​bookmarks ​   | mail_footer ​              | \n\n--\nThis was sent from eGroupWare\nhttp://​www.egroupware.org\n 
- ​phpgwapi ​    | system_charset ​           | utf-8 
- ​phpgwapi ​    | temp_dir ​                 | /tmp 
- ​phpgwapi ​    | files_dir ​                | /​var/​lib/​egroupware/​lab.linuxhotel.de/​files 
- ​phpgwapi ​    | backup_dir ​               | /​var/​lib/​egroupware/​lab.linuxhotel.de/​backup 
- ​phpgwapi ​    | webserver_url ​            | https://​egroupware.lab.linuxhotel.de 
- ​phpgwapi ​    | hostname ​                 | egroupware.lab.linuxhotel.de 
- ​phpgwapi ​    | smtp_port ​                | 25 
- ​phpgwapi ​    | auth_type ​                | ldap 
- ​phpgwapi ​    | account_repository ​       | ldap 
- ​phpgwapi ​    | account_min_id ​           | 10000 
- ​phpgwapi ​    | account_max_id ​           | 20000 
- ​phpgwapi ​    | auto_create_acct ​         | lowercase 
- ​phpgwapi ​    | auto_create_expire ​       | 604800 
- ​phpgwapi ​    | ldap_host ​                | localhost 
- ​phpgwapi ​    | ldap_context ​             | ou=people,​dc=lab,​dc=linuxhotel,​dc=de 
- ​phpgwapi ​    | ldap_group_context ​       | ou=groups,​dc=lab,​dc=linuxhotel,​dc=de 
- ​phpgwapi ​    | ldap_root_dn ​             | cn=egroupware,​dc=lab,​dc=linuxhotel,​dc=de 
- ​phpgwapi ​    | ldap_root_pw ​             | ig4Fahso 
- ​phpgwapi ​    | ldap_encryption_type ​     | md5 
- ​phpgwapi ​    | ldap_extra_attributes ​    | True 
- ​phpgwapi ​    | ldap_account_home ​        | /home 
- ​phpgwapi ​    | ldap_account_shell ​       | /bin/bash 
- ​manual ​      | manual_remote_egw_url ​    | http://​manual.egroupware.org/​egroupware 
- ​manual ​      | manual_update_url ​        | http://​manual.egroupware.org/​egroupware/​wiki/​index.php?​page=Manual&​action=xml 
- ​phpgwapi ​    | contact_repository ​       | sql-ldap 
- ​phpgwapi ​    | mail_login_type ​          | vmailmgr 
- ​phpgwapi ​    | mail_suffix ​              | lab.linuxhotel.de 
- ​phpgwapi ​    | smtp_server ​              | localhost 
- ​phpgwapi ​    | smpt_port ​                | 25 
- 
-</​file>​ 
- 
-Admin-Benutzer admin anlegen. Existiert zwar schon im LDAP, aber hat noch keine Anwendungen. ​ 
- 
-LDAP-Passwort ansehen: ( als Benutzer postgres ) 
-  psql -d egroupware -c "​select config_value from egw_config where config_name = '​ldap_root_pw'​ and config_app = '​phpgwapi';"​ 
- 
-LDAP-Passwort setzen: ( als Benutzer postgres ) 
-  psql -d egroupware -c "​update egw_config set config_value = '​passwort'​ where config_name = '​ldap_root_pw'​ and config_app = '​phpgwapi';"​ 
- 
-===== Dokus & Links ===== 
-  * /​usr/​share/​doc/​egroupware-core/​README.Debian ( Debian ) 
-  * addressbook/​doc/​README 
-  * phpgwapi/​doc/​ldap/​README 
- 
- 
-===== Fragen ===== 
-  * Systemzeichensatz:​ ist utf8 ok? Oder gibts da bei PHP noch Probleme?