Difference between revisions of "Zarafa on SME8"
Line 47: | Line 47: | ||
== INSTALLATION of VERSION 7.0.x == | == INSTALLATION of VERSION 7.0.x == | ||
− | === Search latest php53-mapi.rpm for 7.0. | + | === Search latest php53-mapi.rpm for 7.0.x === |
SME8 uses PHP5.3<br> | SME8 uses PHP5.3<br> | ||
Line 54: | Line 54: | ||
https://community.zarafa.com/pg/blog/read/1837/support-for-php-53-in-rhel-5-via-new-php53mapi-rpm-package | https://community.zarafa.com/pg/blog/read/1837/support-for-php-53-in-rhel-5-via-new-php53mapi-rpm-package | ||
− | So, search on the EPEL-repositories <u>'''the latest''' php53-mapi-package</u>. | + | So, search on the EPEL-repositories <u>'''the latest''' php53-mapi-package</u> for 7.0.x (NOT 7.1.x !). |
https://admin.fedoraproject.org/updates/search/php53-mapi? | https://admin.fedoraproject.org/updates/search/php53-mapi? |
Revision as of 09:42, 16 February 2014
- New zarafa-7.0.x- and z-push-install/upgradescripts for SME8
These new scipts always take the default NEW-config-files from the zarafa.rpms (found in /usr/share/doc/zarafa/example-config/) and make SME-templates of these default config-files ! So, you will always have the newest templated config-files, even after upgrading to a new Zarafa-version with altered config-files !
There is even more integration with the SME-perlDB too. (Most of the zarafa-config-keys can be set in the SME-perlDB !). - You can find a upgrade-path to Z-push 2.0 (tested with Zarafa 7.0.12 and Z-push 2.0.7).
- For version 1.3 of the Webapp you need minimum zarafa 7.0.12.
_____________________
- Placeholder for Zarafa quick install script
Maintainer
Frederik POLLET : email
Description
Zarafa is a groupware-server which enables the sharing of mail, contacts, appointments, notes and tasks in a web-interface and/or Microsoft Outlook (or even other clients). It supports MAPI, POP3, IMAP, CalDAV/iCal. It can be used as a MS Exchange replacement, even featuring public folders. Connecting Microsoft Outlook with this groupware-server is simple, enabling most of the MS Exchange-functions.
Z-push is an implementation of Microsoft's ActiveSync protocol which is used 'over-the-air' for multi platform active sync devices, including Windows Mobile and active sync used on Apple's iPhone, Sony Ericsson and Nokia phones. Open source Z-Push enables any PHP-based groupware package to become fully syncable with any ActiveSync-compliant device.
Making some decisions before installing :
Zarafa can be configured with 3 different 'user-backends' :
- database (db)
- unix-users
- LDAP/AD (not implemented in this howto)
Using the db-plugin in the Zarafa-configuration, let you make your zarafa-users in the MySQL-zarafadatabase, with a separate user-password for every Zarafa-user and a store. So, you make your separated Zarafa-users and the stores for these Zarafa-users one by one in the Zarafa-MySQL-database with the zarafa-admin-tool and sripts in this howto. There is no syncronisation between the SME-user-passwords and the Zarafa-user-passwords. You can only enable maildelivery for a SME/unix-user to a Zarafa-user with the same logon-name.
When using the unix-plugin in the Zarafa-configuration, Zarafa makes a store for every SME/unix-user on your system, except for those who are excluded by the template used in this howto. Zarafa uses the passwords of the SME/unix-users. There are no separated Zarafa-users and no separated passwords. You can enable maildelivery for a SME/unix-user to Zarafa. Since the unix files do not contain enough information for Zarafa, there are some properties of a user that will be stored in the MySQL-zarafadatabase. These properties are the email address, overriding quota settings, and administrator settings. The zarafa-admin-tool has to be used to update these user properties. All other user-properties are done using the normal unix tools. The unix-plugin seems to be your best choice if all your SME-users will use Zarafa Webaccess/Microsoft Outlook, and you don't need a multicompany-environment.
In a multicompany-evironment every company has his own Global Adressbook and public folders.
INSTALLATION of VERSION 7.0.x
Search latest php53-mapi.rpm for 7.0.x
SME8 uses PHP5.3
Unfortunately, PHP 5.1 and PHP 5.3 are ABI incompatible, that means that PHP modules that were compiled for PHP 5.1 (like the php-mapi.rpm compiled in the Zarafa-rpms for RHEL 5) can not be run using PHP 5.3 :
https://community.zarafa.com/pg/blog/read/1837/support-for-php-53-in-rhel-5-via-new-php53mapi-rpm-package
So, search on the EPEL-repositories the latest php53-mapi-package for 7.0.x (NOT 7.1.x !).
https://admin.fedoraproject.org/updates/search/php53-mapi?
Set the epel-repository (incl. epel-testing) :
/sbin/e-smith/db yum_repositories set epel repository \ Name 'Epel - EL5' \ BaseUrl 'http://download.fedoraproject.org/pub/epel/5/$basearch' \ MirrorList 'http://mirrors.fedoraproject.org/mirrorlist?repo=epel-5&arch=$basearch' \ EnableGroups no \ GPGCheck yes \ GPGKey http://download.fedora.redhat.com/pub/epel/RPM-GPG-KEY-EPEL \ Visible no \ status disabled
/sbin/e-smith/db yum_repositories set epel-testing repository \ Name 'Epel-testing - EL5' \ BaseUrl 'http://download.fedoraproject.org/pub/epel/testing/5/$basearch' \ MirrorList 'http://mirrors.fedoraproject.org/mirrorlist?repo=testing-epel5&arch=$basearch' \ EnableGroups no \ GPGCheck yes \ GPGKey http://download.fedora.redhat.com/pub/epel/RPM-GPG-KEY-EPEL \ Visible no \ status disabled
signal-event yum-modify
Download via the Zarafawebsite the package for ZCP corresponding with the php53-mapi.rpm (cf. version above !!)
Make an installdirectory (ex. : /root/InstallZarafa)
mkdir -p /root/InstallZarafa
Go (cd /...) to the installdirectory (ex. : /root/InstallZarafa) :
cd /to the installdirectory
ex.:
cd /root/InstallZarafa
wget http://download.zarafa.com/community/final/7.0/[version]/zcp-[version]-rhel-5-[cpu-arch]-free.tar.gz
The 'free'-version has the ability to connect with Microsoft Outlook (default 3 users for free, buy zarafa-CAL's if you want more).
Unpack the corresponding package for ZCP :
tar -zxvf zcp-*
Remove the devel packages
Go (cd ./zcp-...) to the created subdirectory (zcp-...) :
cd ./zcp- ... rm -f *-dev*.rpm
Move the windows-directory to an installshare in your network
Download the latest webapp.rpm too in the same subdirectory :
wget http://download.zarafa.com/community/final/WebApp/[version]/rhel/[zarafa-webapp-version.noarch.rpm]
Install all rpm's in the unpacked package of ZCP and the webapp.rpm too :
yum localinstall *.rpm
All packages have dependencies that cannot be resolved if you install only part of the rpm's.
Remove the default php-mapi.rpm
We have to remove the installation of the default php-mapi (because it's not built for php 5.3).
rpm -e php-mapi --nodeps
Install the php53-mapi.rpm
-If you downloaded the rpm :
rpm -Uvh --force php53-mapi
-If you did set the EPEL-repository :
yum install php53-mapi-[same ZCP-verion as above] --enablerepo=epel --enablerepo=epel-testing
Make install/update-actions
INSTALLSCRIPT
nano -w /etc/e-smith/events/actions/zarafa-install
#!/usr/bin/env bash clear if [ `whoami` != "root" ]; then echo "This installation must be run as user root." echo "Become root, and run this script again." echo exit 1 fi ########################################## # Creating some Zarafa-actions ########################################## # #--- zarafa-expand-templates --- # echo echo "Creating zarafa-expand-templates-action ..." echo cat <<HERE1 > /etc/e-smith/events/actions/zarafa-expand-templates #!/bin/sh /sbin/e-smith/expand-template /etc/zarafa/gateway.cfg /sbin/e-smith/expand-template /etc/zarafa/ical.cfg /sbin/e-smith/expand-template /etc/zarafa/server.cfg /sbin/e-smith/expand-template /etc/zarafa/unix.cfg /sbin/e-smith/expand-template /etc/zarafa/monitor.cfg /sbin/e-smith/expand-template /etc/zarafa/indexer.cfg /sbin/e-smith/expand-template /etc/zarafa/spooler.cfg /sbin/e-smith/expand-template /etc/zarafa/dagent.cfg /sbin/e-smith/expand-template /etc/zarafa/licensed.cfg /etc/e-smith/events/actions/qmail-update-user HERE1 # #--- zarafa-services --- # echo echo "Creating zarafa-services-action ..." echo cat <<HERE2 > /etc/e-smith/events/actions/zarafa-services #!/bin/sh FILE=/etc/rc.d/init.d/zarafa-licensed if [ "\$1" == start ]; then /etc/rc.d/init.d/zarafa-dagent start /etc/rc.d/init.d/zarafa-gateway start /etc/rc.d/init.d/zarafa-ical start if [ -a \$FILE ]; then \$FILE start; fi /etc/rc.d/init.d/zarafa-monitor start /etc/rc.d/init.d/zarafa-spooler start /etc/rc.d/init.d/zarafa-indexer start /etc/rc.d/init.d/zarafa-server start exit 0 fi if [ "\$1" == stop ]; then /etc/rc.d/init.d/zarafa-dagent stop /etc/rc.d/init.d/zarafa-gateway stop /etc/rc.d/init.d/zarafa-ical stop if [ -a \$FILE ]; then \$FILE stop; fi /etc/rc.d/init.d/zarafa-indexer stop /etc/rc.d/init.d/zarafa-spooler stop /etc/rc.d/init.d/zarafa-server stop /etc/rc.d/init.d/zarafa-monitor stop exit 0 fi if [ "\$1" == restart ]; then /etc/rc.d/init.d/zarafa-dagent stop /etc/rc.d/init.d/zarafa-gateway stop /etc/rc.d/init.d/zarafa-ical stop if [ -a \$FILE ]; then \$FILE stop; fi /etc/rc.d/init.d/zarafa-monitor stop /etc/rc.d/init.d/zarafa-indexer stop /etc/rc.d/init.d/zarafa-spooler stop /etc/rc.d/init.d/zarafa-server stop /etc/rc.d/init.d/zarafa-dagent start /etc/rc.d/init.d/zarafa-gateway start /etc/rc.d/init.d/zarafa-ical start if [ -a \$FILE ]; then \$FILE start; fi /etc/rc.d/init.d/zarafa-monitor start /etc/rc.d/init.d/zarafa-server start /etc/rc.d/init.d/zarafa-spooler start /etc/rc.d/init.d/zarafa-indexer start exit 0 fi if [ "\$1" == enabled ]; then config setprop zarafa-gateway status enabled config setprop zarafa-ical status enabled if [ -a \$FILE ]; then config setprop zarafa-licensed status enabled; fi config setprop zarafa-monitor status enabled config setprop zarafa-server status enabled config setprop zarafa-spooler status enabled config setprop zarafa-indexer status enabled config setprop zarafa-dagent status enabled exit 0 fi if [ "\$1" == disabled ]; then config setprop zarafa-gateway status disabled config setprop zarafa-ical status disabled if [ -a \$FILE ]; then config setprop zarafa-licensed status disabled; fi config setprop zarafa-monitor status disabled config setprop zarafa-server status disabled config setprop zarafa-spooler status disabled config setprop zarafa-indexer status disabled config setprop zarafa-dagent status disabled exit 0 fi echo "Usage: start|stop|restart|enabled|disabled" exit 0 HERE2 # #--- zarafa-create-user-action --- # echo echo "Creating zarafa-create-user-action ..." echo cat <<HERE3 > /etc/e-smith/events/actions/zarafa-create-user #!/bin/sh clear /bin/echo "Enter the username of the ZARAFA-user" /bin/echo "If you have a multicompany-setup, format of the SME-username and the ZARAFA-username" /bin/echo "has to be [username].[companyname] !!!" read USERNAME /bin/echo "Enter password:" read PASSWORD /bin/echo "Enter e-mail address:" read EMAIL /bin/echo "Enter full name:" read FULLNAME /bin/echo "Executing..." /usr/bin/zarafa-admin -c "\$USERNAME" -p "\$PASSWORD" -e "\$EMAIL" -f "\$FULLNAME" /usr/bin/zarafa-admin -l /sbin/e-smith/db accounts setprop \$USERNAME zarafa enabled /etc/e-smith/events/actions/qmail-update-user HERE3 # #--- zarafa-create-company-action --- # echo echo "Creating zarafa-create-company-action ..." echo cat <<HERE4 > /etc/e-smith/events/actions/zarafa-create-company #!/bin/sh clear /bin/echo "Enter the companyname :" read COMPANYNAME /bin/echo "Executing..." /usr/bin/zarafa-admin --create-company "\$COMPANYNAME" HERE4 /bin/chmod 554 /etc/e-smith/events/actions/zarafa-expand-templates /bin/chmod 554 /etc/e-smith/events/actions/zarafa-services /bin/chmod 554 /etc/e-smith/events/actions/zarafa-create-user /bin/chmod 554 /etc/e-smith/events/actions/zarafa-create-company # #--- zarafa-configuration-helper-action --- # echo echo "Creating zarafa-configuration-helper-action ..." echo cat <<HERE5 > /etc/e-smith/events/actions/helpers.inc # -*- Mode: sh -*- replace() { file=\$1 option=\$2 value=\$3 # escape &-signs, and % for sed value=\`echo \$value | sed -e 's/\&/\\\\\&/g' -e 's/\%/\\\\\%/g'\` sed -i -e "s%\([[:space:]]*\$option[[:space:]]*=[[:space:]]*\).*%\1\$value%" \$file } HERE5 . /etc/e-smith/events/actions/helpers.inc ########################################## # Creating zarafa-db-creation-templates ########################################## # #--- /etc/e-smith/db/configuration/migrate/80zarafa --- # echo echo "Creating /etc/e-smith/db/configuration/migrate/80zarafa ..." echo cat <<HERE6 > /etc/e-smith/db/configuration/migrate/80zarafa { use MIME::Base64 qw(encode_base64); my \$rec = \$DB->get('zarafa-server') || \$DB->new_record('zarafa-server', {type => 'service'}); my \$pw = \$rec->prop('DbPassword'); return "" if \$pw; \$rec->set_prop('DbPassword', sprintf("%15.0f", int( (1000000000000000) * rand() ))); } HERE6 # #--- /etc/e-smith/templates/etc/e-smith/sql/init/80zarafa --- # echo echo "Creating /etc/e-smith/templates/etc/e-smith/sql/init/80zarafa ..." echo cat <<HERE7 > /etc/e-smith/templates/etc/e-smith/sql/init/80zarafa { my \$db = \${'zarafa-server'}{DbName} || 'zarafa'; my \$user = \${'zarafa-server'}{DbUser} || 'zarafa'; my \$pass = \${'zarafa-server'}{DbPassword} || 'changeme'; \$OUT .= <<END #! /bin/sh if [ -d /var/lib/mysql/\$db ]; then exit fi /usr/bin/mysql <<EOF CREATE DATABASE \$db DEFAULT CHARACTER SET utf8 COLLATE utf8_general_ci; use \$db; use mysql; GRANT ALL PRIVILEGES ON \$db.* TO \$user\@localhost IDENTIFIED BY '\$pass'; flush privileges; EOF END } HERE7 # #--- /etc/e-smith/templates.metadata/etc/e-smith/sql/init/80zarafa --- # echo echo "Creating /etc/e-smith/templates.metadata/etc/e-smith/sql/init/80zarafa ..." echo cat <<HERE8 > /etc/e-smith/templates.metadata/etc/e-smith/sql/init/80zarafa PERMS=0750 HERE8 ########################################## # Creating SME-HTTPD-templates ########################################## # #--- /etc/e-smith/templates/etc/httpd/conf/httpd.conf/VirtualHosts/29ZarafaAliases --- # echo echo "Creating /etc/e-smith/templates/etc/httpd/conf/httpd.conf/VirtualHosts/29ZarafaAliases ..." echo cat <<HERE9 > /etc/e-smith/templates/etc/httpd/conf/httpd.conf/VirtualHosts/29ZarafaAliases { # vim: ft=perl: \$haveSSL = (exists \${modSSL}{status} and \${modSSL}{status} eq "enabled") ? 'yes' : 'no'; my \$zwebmailStatus = \$zarafa{'status'} || "disabled"; my \$zwebmailAccessType = \$zarafa{'access'} || "SSL"; my \$dirs; \$dirs{zarafa} = '/usr/share/zarafa-webaccess'; \$dirs{webaccess} = '/usr/share/zarafa-webaccess'; \$dirs{webmail} = '/usr/share/zarafa-webaccess'; if (\$imp{'status'} eq 'enabled') {\$dirs{webmail} = ''}; \$dirs{webapp} = '/usr/share/zarafa-webapp'; return " # Zarafa is disabled in this VirtualHost\n" unless \$zwebmailStatus eq 'enabled'; foreach \$place ('zarafa','webmail','webaccess','webapp') { if ((\$port eq "80") && (\$haveSSL eq 'yes') && (\$zwebmailAccessType eq 'SSL')) { \$OUT .= " RewriteRule ^/\$place(/.*|\\$) https://%{HTTP_HOST}/\$place\\\$1 [L,R]\n"; } else { if ((\$dirs{\$place}) ne '') {\$OUT .= " Alias /\$place \$dirs{\$place}\n"}; } } } HERE9 # #--- /etc/e-smith/templates/etc/httpd/conf/httpd.conf/86ZarafaAlias --- # echo echo "Creating /etc/e-smith/templates/etc/httpd/conf/httpd.conf/86ZarafaAlias ..." echo cat <<HERE10 > /etc/e-smith/templates/etc/httpd/conf/httpd.conf/86ZarafaAlias { my \$zstatus = \$zarafa{'status'}; if (defined \$zstatus && \$zstatus eq 'enabled') { \$OUT .= qq( #-------------------------------------------------------------------- # Zarafa specific configuration files. #-------------------------------------------------------------------- Alias /zarafa /usr/share/zarafa-webaccess/ <Directory /usr/share/zarafa-webaccess/> Options -Indexes AllowOverride All order allow,deny allow from all AddType application/x-httpd-php .php php_flag magic_quotes_gpc off php_flag track_vars on </Directory> Alias /webapp /usr/share/zarafa-webapp/ <Directory /usr/share/zarafa-webapp/> Options -Indexes AllowOverride All order allow,deny allow from all AddType application/x-httpd-php .php php_flag magic_quotes_gpc off php_flag track_vars on </Directory> ); } else { \$OUT .= "# Zarafa Webmail is not configured as it is disabled in the config db"; } } HERE10 ########################################## # Creating SME-QMAIL-user-templates ########################################## # #--- /etc/e-smith/templates-user/.qmail/80Zarafa --- # echo echo "Creating /etc/e-smith/templates-user/.qmail/80Zarafa ..." echo cat <<HERE11 > /etc/e-smith/templates-user/.qmail/80Zarafa { my \$zarafa = \$user->prop('zarafa') || 'disabled'; my \$zarafa2 = \${'zarafa-server'}{GlobalForward} || 'disabled'; if (\$zarafa eq 'enabled' || \$zarafa2 eq 'enabled') { return "| /usr/bin/zarafa-dagent -q \$USERNAME ; if [ \\$\\? -ne 0 ] ; then exit -1; else exit 99; fi;" } } HERE11 # #--- /etc/e-smith/templates-user/.qmail-junkmail/01Zarafa --- # echo echo "Creating /etc/e-smith/templates-user/.qmail-junkmail/01Zarafa ..." echo cat <<HERE12 > /etc/e-smith/templates-user/.qmail-junkmail/01Zarafa { # vim: ft=perl: die "USERNAME not set." unless defined (\$USERNAME); use esmith::AccountsDB; \$adb = esmith::AccountsDB->open_ro or die "Couldn't open AccountsDB"; \$user = \$adb->get(\$USERNAME) or die "No user \$USERNAME in AccountsDB"; my \$zarafa = \$user->prop('zarafa') || 'disabled'; my \$zarafa2 = \${'zarafa-server'}{GlobalForward} || 'disabled'; return "| /usr/bin/zarafa-dagent -qj \$USERNAME ; if [ \\$\\? -ne 0 ] ; then exit -1; else exit 99; fi;" if (\$zarafa eq 'enabled' || \$zarafa2 eq 'enabled'); } HERE12 ########################################## # Creating Zarafa-configuration-templates ########################################## # #--- unix config --- # echo echo "Creating zarafa-unix-configuration-template ..." echo mkdir -p /etc/e-smith/templates/etc/zarafa/unix.cfg cat <<HERE13 > /etc/e-smith/templates/etc/zarafa/unix.cfg/unix.cfg { use esmith::AccountsDB } ############################################################## # UNIX USER PLUGIN SETTINGS # # Any of these directives that are required, are only required if the # userplugin parameter is set to unix. # Charset used in /etc/passwd for the fullname of a user. Normally this # is us-ascii, but this can differ according to your setup. # The charset specified here must be supported by your iconv(1) # setup. See iconv -l for all charsets. fullname_charset = iso-8859-15 # Default email domain for constructing new users # Required, no default default_domain = { \${'zarafa-server'}{DomainName} || \$DomainName; } # The lowest user id that is considered a regular user # Optional, default = 1000 min_user_uid = 101 # The highest user id that is considered a regular user # Optional, default = 10000 max_user_uid = 10000 # A list of user ids that are not considered to be regular users # Optional, default = empty # except_user_uids = except_user_uids = { \$accounts = esmith::AccountsDB->open_ro or die "Could not open AccountsDB"; { while ((\$name, \$passwd, \$uid, \$gid, \$quota, \$comment, \$gcos, \$dir, \$shell) = getpwent()) { \$user = \$accounts->get(\$name); \$OUT .= "\$uid " unless \$uid <= 101 or (defined \$user and \$user->prop('type') eq "user"); } } } # The lowest group id that is considered a regular group # Optional, default = 1000 min_group_gid = 5000 # The highest group id that is considered a regular group # Optional, default = 10000 max_group_gid = 10000 # A list of group ids that are not considered to be regular groups # Optional, default = empty # except_group_gids = except_group_gids = { setpwent(); while ((\$name, \$passwd, \$uid, \$gid, \$quota, \$comment, \$gcos, \$dir, \$shell) = getpwent()) { \$group = \$accounts->get(\$name); \$OUT .= "\$gid " unless \$gid < 5000 or (defined \$group and \$group->prop('type') eq "group"); } endpwent(); } # Create a user as non-active when it has this unix shell non_login_shell = /bin/false HERE13 # #--- sysconfig config --- # echo echo "Creating zarafa-sysconfig-configuration-template ..." echo mkdir -p /etc/e-smith/templates/etc/sysconfig/zarafa cat /etc/sysconfig/zarafa | sed -e 's/\r$//g' > /etc/e-smith/templates/etc/sysconfig/zarafa/zarafa replace /etc/e-smith/templates/etc/sysconfig/zarafa/zarafa ZARAFA_LOCALE '"{ ${'\''zarafa'\''}{language} || '\''en_US.UTF-8'\'' ; }"' replace /etc/e-smith/templates/etc/sysconfig/zarafa/zarafa ZARAFA_USERSCRIPT_LOCALE '"{ ${'\''zarafa'\''}{language} || '\''en_US.UTF-8'\'' ; }"' # #--- licensed config --- # echo echo "Creating zarafa-licensed-configuration-template ..." echo mkdir -p /etc/e-smith/templates/etc/zarafa/licensed.cfg cat /usr/share/doc/zarafa-licensed/example-config/licensed.cfg | sed -e 's/\r$//g' > /etc/e-smith/templates/etc/zarafa/licensed.cfg/licensed.cfg replace /etc/e-smith/templates/etc/zarafa/licensed.cfg/licensed.cfg log_method '{ ${'\''zarafa-licensed'\''}{log_method} || '\''file'\''; }' replace /etc/e-smith/templates/etc/zarafa/licensed.cfg/licensed.cfg log_level '{ ${'\''zarafa-licensed'\''}{log_level} || '\''2'\''; }' replace /etc/e-smith/templates/etc/zarafa/licensed.cfg/licensed.cfg log_timestamp '{ ${'\''zarafa-licensed'\''}{log_timestamp} || '\''1'\''; }' # #--- server config --- # echo echo "Creating zarafa-server-configuration-template ..." echo mkdir -p /etc/e-smith/templates/etc/zarafa/server.cfg cat /usr/share/doc/zarafa/example-config/server.cfg | sed -e 's/\r$//g' > /etc/e-smith/templates/etc/zarafa/server.cfg/server.cfg replace /etc/e-smith/templates/etc/zarafa/server.cfg/server.cfg server_tcp_enabled '{ ${'\''zarafa-server'\''}{server_tcp_enabled} || '\''yes'\''; }' replace /etc/e-smith/templates/etc/zarafa/server.cfg/server.cfg server_tcp_port '{ ${'\''zarafa-server'\''}{TCPPort} || '\''236'\''; }' replace /etc/e-smith/templates/etc/zarafa/server.cfg/server.cfg server_pipe_enabled '{ ${'\''zarafa-server'\''}{server_pipe_enabled} || '\''yes'\''; }' replace /etc/e-smith/templates/etc/zarafa/server.cfg/server.cfg server_name '{ ${'\''zarafa-server'\''}{server_name} || '\''Zarafa'\''; }' replace /etc/e-smith/templates/etc/zarafa/server.cfg/server.cfg database_engine '{ ${'\''zarafa-server'\''}{database_engine} || '\''mysql'\''; }' replace /etc/e-smith/templates/etc/zarafa/server.cfg/server.cfg allow_local_users '{ ${'\''zarafa-server'\''}{allow_local_users} || '\''yes'\''; }' replace /etc/e-smith/templates/etc/zarafa/server.cfg/server.cfg local_admin_users '{ ${'\''zarafa-server'\''}{local_admin_users} || '\''root'\''; }' replace /etc/e-smith/templates/etc/zarafa/server.cfg/server.cfg system_email_address '{ ${'\''zarafa-server'\''}{system_email_address} || '\''postmaster@localhost'\''; }' replace /etc/e-smith/templates/etc/zarafa/server.cfg/server.cfg session_timeout '{ ${'\''zarafa-server'\''}{session_timeout} || '\''300'\''; }' replace /etc/e-smith/templates/etc/zarafa/server.cfg/server.cfg license_timeout '{ ${'\''zarafa-server'\''}{license_timeout} || '\''10'\''; }' replace /etc/e-smith/templates/etc/zarafa/server.cfg/server.cfg log_method '{ ${'\''zarafa-server'\''}{log_method} || '\''file'\''; }' replace /etc/e-smith/templates/etc/zarafa/server.cfg/server.cfg log_level '{ ${'\''zarafa-server'\''}{log_level} || '\''2'\''; }' replace /etc/e-smith/templates/etc/zarafa/server.cfg/server.cfg log_timestamp '{ ${'\''zarafa-server'\''}{log_timestamp} || '\''1'\''; }' replace /etc/e-smith/templates/etc/zarafa/server.cfg/server.cfg audit_log_enabled '{ ${'\''zarafa-server'\''}{audit_log_enabled} || '\''no'\''; }' replace /etc/e-smith/templates/etc/zarafa/server.cfg/server.cfg audit_log_level '{ ${'\''zarafa-server'\''}{audit_log_level} || '\''1'\''; }' replace /etc/e-smith/templates/etc/zarafa/server.cfg/server.cfg audit_log_timestamp '{ ${'\''zarafa-server'\''}{audit_log_timestamp} || '\''1'\''; }' replace /etc/e-smith/templates/etc/zarafa/server.cfg/server.cfg mysql_host '{ ${'\''zarafa-server'\''}{mysql_host} || '\''localhost'\''; }' replace /etc/e-smith/templates/etc/zarafa/server.cfg/server.cfg mysql_port '{ ${'\''zarafa-server'\''}{mysql_port} || '\''3306'\''; }' replace /etc/e-smith/templates/etc/zarafa/server.cfg/server.cfg mysql_user '{ ${'\''zarafa-server'\''}{DbUser} || '\''zarafa'\''; }' replace /etc/e-smith/templates/etc/zarafa/server.cfg/server.cfg mysql_password '{ ${'\''zarafa-server'\''}{DbPassword}; }' replace /etc/e-smith/templates/etc/zarafa/server.cfg/server.cfg mysql_database '{ ${'\''zarafa-server'\''}{DbName} || '\''zarafa'\''; }' replace /etc/e-smith/templates/etc/zarafa/server.cfg/server.cfg attachment_storage '{ ${'\''zarafa-server'\''}{attachment_storage} || '\''files'\''; }' replace /etc/e-smith/templates/etc/zarafa/server.cfg/server.cfg attachment_path '/home/e-smith/files/zarafa' replace /etc/e-smith/templates/etc/zarafa/server.cfg/server.cfg attachment_compression '{ ${'\''zarafa-server'\''}{attachment_compression} || '\''6'\''; }' replace /etc/e-smith/templates/etc/zarafa/server.cfg/server.cfg server_ssl_enabled '{ ${'\''zarafa-ssl'\''}{server_ssl_enabled} || '\''yes'\''; }' replace /etc/e-smith/templates/etc/zarafa/server.cfg/server.cfg server_ssl_port '{ ${'\''zarafa-ssl'\''}{TCPPort} || '\''237'\''; }' replace /etc/e-smith/templates/etc/zarafa/server.cfg/server.cfg server_ssl_key_file '/home/e-smith/ssl.pem/{$SystemName}.{$DomainName}.pem' replace /etc/e-smith/templates/etc/zarafa/server.cfg/server.cfg server_ssl_key_pass '{ ${'\''zarafa-server'\''}{DbPassword}; }' replace /etc/e-smith/templates/etc/zarafa/server.cfg/server.cfg server_ssl_ca_file '/home/e-smith/ssl.crt/{$SystemName}.{$DomainName}.crt' replace /etc/e-smith/templates/etc/zarafa/server.cfg/server.cfg server_ssl_ca_path '/home/e-smith/ssl.crt' replace /etc/e-smith/templates/etc/zarafa/server.cfg/server.cfg sslkeys_path '/home/e-smith/ssl.pem' replace /etc/e-smith/templates/etc/zarafa/server.cfg/server.cfg threads '{ ${'\''zarafa-server'\''}{threads} || '\''8'\''; }' replace /etc/e-smith/templates/etc/zarafa/server.cfg/server.cfg watchdog_frequency '{ ${'\''zarafa-server'\''}{watchdog_frequency} || '\''1'\''; }' replace /etc/e-smith/templates/etc/zarafa/server.cfg/server.cfg watchdog_max_age '{ ${'\''zarafa-server'\''}{watchdog_max_age} || '\''500'\''; }' replace /etc/e-smith/templates/etc/zarafa/server.cfg/server.cfg server_max_keep_alive_requests '{ ${'\''zarafa-server'\''}{server_max_keep_alive_requests} || '\''100'\''; }' replace /etc/e-smith/templates/etc/zarafa/server.cfg/server.cfg server_recv_timeout '{ ${'\''zarafa-server'\''}{server_recv_timeout} || '\''5'\''; }' replace /etc/e-smith/templates/etc/zarafa/server.cfg/server.cfg server_read_timeout '{ ${'\''zarafa-server'\''}{server_read_timeout} || '\''60'\''; }' replace /etc/e-smith/templates/etc/zarafa/server.cfg/server.cfg server_send_timeout '{ ${'\''zarafa-server'\''}{server_send_timeout} || '\''60'\''; }' replace /etc/e-smith/templates/etc/zarafa/server.cfg/server.cfg softdelete_lifetime '{ ${'\''zarafa-server'\''}{softdelete_lifetime} || '\''30'\''; }' replace /etc/e-smith/templates/etc/zarafa/server.cfg/server.cfg sync_lifetime '{ ${'\''zarafa-server'\''}{sync_lifetime} || '\''365'\''; }' replace /etc/e-smith/templates/etc/zarafa/server.cfg/server.cfg sync_log_all_changes '{ ${'\''zarafa-server'\''}{sync_log_all_changes} || '\''no'\''; }' replace /etc/e-smith/templates/etc/zarafa/server.cfg/server.cfg enable_sso '{ ${'\''zarafa-server'\''}{enable_sso} || '\''no'\''; }' replace /etc/e-smith/templates/etc/zarafa/server.cfg/server.cfg enable_gab '{ ${'\''zarafa-server'\''}{enable_gab} || '\''yes'\''; }' replace /etc/e-smith/templates/etc/zarafa/server.cfg/server.cfg auth_method '{ ${'\''zarafa-server'\''}{auth_method} || '\''plugin'\''; }' replace /etc/e-smith/templates/etc/zarafa/server.cfg/server.cfg pam_service '{ ${'\''zarafa-server'\''}{pam_service} || '\''passwd'\''; }' replace /etc/e-smith/templates/etc/zarafa/server.cfg/server.cfg cache_cell_size '{ ${'\''zarafa-server'\''}{cache_cell_size} || '\''268435456'\''; }' replace /etc/e-smith/templates/etc/zarafa/server.cfg/server.cfg cache_object_size '{ ${'\''zarafa-server'\''}{cache_object_size} || '\''5242880'\''; }' replace /etc/e-smith/templates/etc/zarafa/server.cfg/server.cfg cache_indexedobject_size '{ ${'\''zarafa-server'\''}{cache_indexedobject_size} || '\''16777216'\''; }' replace /etc/e-smith/templates/etc/zarafa/server.cfg/server.cfg cache_quota_size '{ ${'\''zarafa-server'\''}{cache_quota_size} || '\''1048576'\''; }' replace /etc/e-smith/templates/etc/zarafa/server.cfg/server.cfg cache_quota_lifetime '{ ${'\''zarafa-server'\''}{cache_quota_lifetime} || '\''1'\''; }' replace /etc/e-smith/templates/etc/zarafa/server.cfg/server.cfg cache_acl_size '{ ${'\''zarafa-server'\''}{cache_acl_size} || '\''1048576'\''; }' replace /etc/e-smith/templates/etc/zarafa/server.cfg/server.cfg cache_store_size '{ ${'\''zarafa-server'\''}{cache_store_size} || '\''1048576'\''; }' replace /etc/e-smith/templates/etc/zarafa/server.cfg/server.cfg cache_user_size '{ ${'\''zarafa-server'\''}{cache_user_size} || '\''1048576'\''; }' replace /etc/e-smith/templates/etc/zarafa/server.cfg/server.cfg cache_userdetails_size '{ ${'\''zarafa-server'\''}{cache_userdetails_size} || '\''26214400'\''; }' replace /etc/e-smith/templates/etc/zarafa/server.cfg/server.cfg cache_userdetails_lifetime '{ ${'\''zarafa-server'\''}{cache_userdetails_lifetime} || '\''5'\''; }' replace /etc/e-smith/templates/etc/zarafa/server.cfg/server.cfg cache_server_size '{ ${'\''zarafa-server'\''}{cache_server_size} || '\''1048576'\''; }' replace /etc/e-smith/templates/etc/zarafa/server.cfg/server.cfg cache_server_lifetime '{ ${'\''zarafa-server'\''}{cache_server_lifetime} || '\''30'\''; }' replace /etc/e-smith/templates/etc/zarafa/server.cfg/server.cfg quota_warn '{ ${'\''zarafa-server'\''}{quota_warn} || '\''0'\''; }' replace /etc/e-smith/templates/etc/zarafa/server.cfg/server.cfg quota_soft '{ ${'\''zarafa-server'\''}{quota_soft} || '\''0'\''; }' replace /etc/e-smith/templates/etc/zarafa/server.cfg/server.cfg quota_hard '{ ${'\''zarafa-server'\''}{quota_hard} || '\''0'\''; }' replace /etc/e-smith/templates/etc/zarafa/server.cfg/server.cfg companyquota_warn '{ ${'\''zarafa-server'\''}{companyquota_warn} || '\''0'\''; }' replace /etc/e-smith/templates/etc/zarafa/server.cfg/server.cfg user_plugin '{ ${'\''zarafa-server'\''}{user_plugin} || '\''db'\''; }' replace /etc/e-smith/templates/etc/zarafa/server.cfg/server.cfg user_plugin_config '{ ${'\''zarafa-server'\''}{user_plugin_config}; }' replace /etc/e-smith/templates/etc/zarafa/server.cfg/server.cfg user_safe_mode '{ ${'\''zarafa-server'\''}{user_safe_mode} || '\''no'\''; }' replace /etc/e-smith/templates/etc/zarafa/server.cfg/server.cfg thread_stacksize '{ ${'\''zarafa-server'\''}{thread_stacksize} || '\''512'\''; }' replace /etc/e-smith/templates/etc/zarafa/server.cfg/server.cfg enable_hosted_zarafa '{ ${'\''zarafa-server'\''}{enable_hosted_zarafa} || '\''false'\''; }' replace /etc/e-smith/templates/etc/zarafa/server.cfg/server.cfg enable_distributed_zarafa '{ ${'\''zarafa-server'\''}{enable_distributed_zarafa} || '\''false'\''; }' replace /etc/e-smith/templates/etc/zarafa/server.cfg/server.cfg storename_format '{ ${'\''zarafa-server'\''}{storename_format} || '\''%f'\''; }' replace /etc/e-smith/templates/etc/zarafa/server.cfg/server.cfg loginname_format '{ ${'\''zarafa-server'\''}{loginname_format} || '\''%u'\''; }' replace /etc/e-smith/templates/etc/zarafa/server.cfg/server.cfg client_update_enabled '{ ${'\''zarafa-server'\''}{client_update_enabled} || '\''false'\''; }' replace /etc/e-smith/templates/etc/zarafa/server.cfg/server.cfg client_update_path '{ ${'\''zarafa-server'\''}{client_update_path} || '\''/var/lib/zarafa/client'\''; }' replace /etc/e-smith/templates/etc/zarafa/server.cfg/server.cfg client_update_log_level '{ ${'\''zarafa-server'\''}{client_update_log_level} || '\''1'\''; }' replace /etc/e-smith/templates/etc/zarafa/server.cfg/server.cfg hide_everyone '{ ${'\''zarafa-server'\''}{hide_everyone} || '\''yes'\''; }' replace /etc/e-smith/templates/etc/zarafa/server.cfg/server.cfg hide_system '{ ${'\''zarafa-server'\''}{hide_system} || '\''yes'\''; }' replace /etc/e-smith/templates/etc/zarafa/server.cfg/server.cfg index_services_enabled '{ ${'\''zarafa-server'\''}{index_services_enabled} || '\''no'\''; }' replace /etc/e-smith/templates/etc/zarafa/server.cfg/server.cfg index_services_search_timeout '{ ${'\''zarafa-server'\''}{index_services_search_timeout} || '\''10'\''; }' replace /etc/e-smith/templates/etc/zarafa/server.cfg/server.cfg index_services_prefix_chars '{ ${'\''zarafa-server'\''}{index_services_prefix_chars} || '\''3'\''; }' replace /etc/e-smith/templates/etc/zarafa/server.cfg/server.cfg enable_enhanced_ics '{ ${'\''zarafa-server'\''}{enable_enhanced_ics} || '\''yes'\''; }' replace /etc/e-smith/templates/etc/zarafa/server.cfg/server.cfg sync_gab_realtime '{ ${'\''zarafa-server'\''}{sync_gab_realtime} || '\''yes'\''; }' replace /etc/e-smith/templates/etc/zarafa/server.cfg/server.cfg disabled_features '{ ${'\''zarafa-server'\''}{disabled_features}; }' replace /etc/e-smith/templates/etc/zarafa/server.cfg/server.cfg max_deferred_records '{ ${'\''zarafa-server'\''}{max_deferred_records} || '\''0'\''; }' replace /etc/e-smith/templates/etc/zarafa/server.cfg/server.cfg max_deferred_records_folder '{ ${'\''zarafa-server'\''}{max_deferred_records_folder} || '\''20'\''; }' replace /etc/e-smith/templates/etc/zarafa/server.cfg/server.cfg coredump_enabled '{ ${'\''zarafa-server'\''}{coredump_enabled} || '\''yes'\''; }' replace /etc/e-smith/templates/etc/zarafa/server.cfg/server.cfg server_ssl_enable_v2 '{ ${'\''zarafa-server'\''}{server_ssl_enable_v2} || '\''no'\''; }' # #--- dagent config --- # echo echo "Creating zarafa-dagent-configuration-template ..." echo mkdir -p /etc/e-smith/templates/etc/zarafa/dagent.cfg cat /usr/share/doc/zarafa-dagent/example-config/dagent.cfg | sed -e 's/\r$//g' > /etc/e-smith/templates/etc/zarafa/dagent.cfg/dagent.cfg replace /etc/e-smith/templates/etc/zarafa/dagent.cfg/dagent.cfg log_method '{ ${'\''zarafa-dagent'\''}{log_method} || '\''file'\''; }' replace /etc/e-smith/templates/etc/zarafa/dagent.cfg/dagent.cfg log_level '{ ${'\''zarafa-dagent'\''}{log_level} || '\''2'\''; }' replace /etc/e-smith/templates/etc/zarafa/dagent.cfg/dagent.cfg log_timestamp '{ ${'\''zarafa-dagent'\''}{log_timestamp} || '\''1'\''; }' replace /etc/e-smith/templates/etc/zarafa/dagent.cfg/dagent.cfg log_raw_message '{ ${'\''zarafa-dagent'\''}{log_raw_message} || '\''no'\''; }' replace /etc/e-smith/templates/etc/zarafa/dagent.cfg/dagent.cfg lmtp_port '{ ${'\''zarafa-dagent'\''}{lmtp_port} || '\''2003'\''; }' replace /etc/e-smith/templates/etc/zarafa/dagent.cfg/dagent.cfg lmtp_max_threads '{ ${'\''zarafa-dagent'\''}{lmtp_max_threads} || '\''20'\''; }' replace /etc/e-smith/templates/etc/zarafa/dagent.cfg/dagent.cfg process_model '{ ${'\''zarafa-dagent'\''}{process_model} || '\''fork'\''; }' replace /etc/e-smith/templates/etc/zarafa/dagent.cfg/dagent.cfg spam_header_name '{ ${'\''zarafa-dagent'\''}{spam_header_name} || '\''X-Spam-Status'\''; }' replace /etc/e-smith/templates/etc/zarafa/dagent.cfg/dagent.cfg spam_header_value '{ ${'\''zarafa-dagent'\''}{spam_header_value} || '\''Yes'\''; }' replace /etc/e-smith/templates/etc/zarafa/dagent.cfg/dagent.cfg archive_on_delivery '{ ${'\''zarafa-dagent'\''}{archive_on_delivery} || '\''no'\''; }' replace /etc/e-smith/templates/etc/zarafa/dagent.cfg/dagent.cfg set_rule_headers '{ ${'\''zarafa-dagent'\''}{set_rule_headers} || '\''yes'\''; }' # #--- spooler config --- # echo echo "Creating zarafa-spooler-configuration-template ..." echo mkdir -p /etc/e-smith/templates/etc/zarafa/spooler.cfg cat /usr/share/doc/zarafa-spooler/example-config/spooler.cfg | sed -e 's/\r$//g' > /etc/e-smith/templates/etc/zarafa/spooler.cfg/spooler.cfg replace /etc/e-smith/templates/etc/zarafa/spooler.cfg/spooler.cfg smtp_port '{ ${'\''zarafa-spooler'\''}{smtp_port} || '\''25'\''; }' replace /etc/e-smith/templates/etc/zarafa/spooler.cfg/spooler.cfg log_method '{ ${'\''zarafa-spooler'\''}{log_method} || '\''file'\''; }' replace /etc/e-smith/templates/etc/zarafa/spooler.cfg/spooler.cfg log_level '{ ${'\''zarafa-spooler'\''}{log_level} || '\''3'\''; }' replace /etc/e-smith/templates/etc/zarafa/spooler.cfg/spooler.cfg log_timestamp '{ ${'\''zarafa-spooler'\''}{log_timestamp} || '\''1'\''; }' replace /etc/e-smith/templates/etc/zarafa/spooler.cfg/spooler.cfg max_threads '{ ${'\''zarafa-spooler'\''}{max_threads} || '\''5'\''; }' replace /etc/e-smith/templates/etc/zarafa/spooler.cfg/spooler.cfg fax_domain '{ ${'\''zarafa-spooler'\''}{fax_domain} || '\''fax.local'\''; }' replace /etc/e-smith/templates/etc/zarafa/spooler.cfg/spooler.cfg fax_international '{ ${'\''zarafa-spooler'\''}{fax_international} || '\''00'\''; }' replace /etc/e-smith/templates/etc/zarafa/spooler.cfg/spooler.cfg always_send_delegates '{ ${'\''zarafa-spooler'\''}{always_send_delegates} || '\''no'\''; }' replace /etc/e-smith/templates/etc/zarafa/spooler.cfg/spooler.cfg allow_redirect_spoofing '{ ${'\''zarafa-spooler'\''}{allow_redirect_spoofing} || '\''yes'\''; }' replace /etc/e-smith/templates/etc/zarafa/spooler.cfg/spooler.cfg copy_delegate_mails '{ ${'\''zarafa-spooler'\''}{copy_delegate_mails} || '\''yes'\''; }' replace /etc/e-smith/templates/etc/zarafa/spooler.cfg/spooler.cfg allow_delegate_meeting_request '{ ${'\''zarafa-spooler'\''}{allow_delegate_meeting_request} || '\''yes'\''; }' replace /etc/e-smith/templates/etc/zarafa/spooler.cfg/spooler.cfg allow_send_to_everyone '{ ${'\''zarafa-spooler'\''}{allow_send_to_everyone} || '\''yes'\''; }' replace /etc/e-smith/templates/etc/zarafa/spooler.cfg/spooler.cfg always_send_tnef '{ ${'\''zarafa-spooler'\''}{always_send_tnef} || '\''no'\''; }' replace /etc/e-smith/templates/etc/zarafa/spooler.cfg/spooler.cfg always_send_utf8 '{ ${'\''zarafa-spooler'\''}{always_send_utf8} || '\''no'\''; }' replace /etc/e-smith/templates/etc/zarafa/spooler.cfg/spooler.cfg charset_upgrade '{ ${'\''zarafa-spooler'\''}{charset_upgrade} || '\''windows-1252'\''; }' replace /etc/e-smith/templates/etc/zarafa/spooler.cfg/spooler.cfg expand_groups '{ ${'\''zarafa-spooler'\''}{expand_groups} || '\''no'\''; }' replace /etc/e-smith/templates/etc/zarafa/spooler.cfg/spooler.cfg archive_on_send '{ ${'\''zarafa-spooler'\''}{archive_on_send} || '\''no'\''; }' # #--- monitor config --- # echo echo "Creating zarafa-monitor-configuration-template ..." echo "The monitor program sends quota warning mails to users who are over quota." echo mkdir -p /etc/e-smith/templates/etc/zarafa/monitor.cfg cat /usr/share/doc/zarafa-monitor/example-config/monitor.cfg | sed -e 's/\r$//g' > /etc/e-smith/templates/etc/zarafa/monitor.cfg/monitor.cfg replace /etc/e-smith/templates/etc/zarafa/monitor.cfg/monitor.cfg log_method '{ ${'\''zarafa-monitor'\''}{log_method} || '\''file'\''; }' replace /etc/e-smith/templates/etc/zarafa/monitor.cfg/monitor.cfg log_level '{ ${'\''zarafa-monitor'\''}{log_level} || '\''2'\''; }' replace /etc/e-smith/templates/etc/zarafa/monitor.cfg/monitor.cfg log_timestamp '{ ${'\''zarafa-monitor'\''}{log_timestamp} || '\''1'\''; }' replace /etc/e-smith/templates/etc/zarafa/monitor.cfg/monitor.cfg quota_check_interval '{ ${'\''zarafa-monitor'\''}{quota_check_interval} || '\''15'\''; }' replace /etc/e-smith/templates/etc/zarafa/monitor.cfg/monitor.cfg mailquota_resend_interval '{ ${'\''zarafa-monitor'\''}{mailquota_resend_interval} || '\''1'\''; }' # #--- gateway config --- # echo echo "Creating zarafa-gateway-configuration-template ..." echo mkdir -p /etc/e-smith/templates/etc/zarafa/gateway.cfg cat /usr/share/doc/zarafa-gateway/example-config/gateway.cfg | sed -e 's/\r$//g' > /etc/e-smith/templates/etc/zarafa/gateway.cfg/gateway.cfg replace /etc/e-smith/templates/etc/zarafa/gateway.cfg/gateway.cfg server_socket 'http://localhost:{${'\''zarafa-server'\''}{TCPPort}||'\''236'\'';}/zarafa' replace /etc/e-smith/templates/etc/zarafa/gateway.cfg/gateway.cfg pop3_enable '{ if (${'\''zarafa-pop3'\''}{status} eq '\''enabled'\'') {'\''yes'\''} else {'\''no'\''}; }' replace /etc/e-smith/templates/etc/zarafa/gateway.cfg/gateway.cfg pop3_port '{ ${'\''zarafa-pop3'\''}{TCPPort} || '\''8110'\''; }' replace /etc/e-smith/templates/etc/zarafa/gateway.cfg/gateway.cfg pop3s_enable '{ if (${'\''zarafa-pop3s'\''}{status} eq '\''enabled'\'') {'\''yes'\''} else {'\''no'\''}; }' replace /etc/e-smith/templates/etc/zarafa/gateway.cfg/gateway.cfg pop3s_port '{ ${'\''zarafa-pop3s'\''}{TCPPort} || '\''8995'\''; }' replace /etc/e-smith/templates/etc/zarafa/gateway.cfg/gateway.cfg imap_enable '{ if (${'\''zarafa-imap'\''}{status} eq '\''enabled'\'') {'\''yes'\''} else {'\''no'\''}; }' replace /etc/e-smith/templates/etc/zarafa/gateway.cfg/gateway.cfg imap_port '{ ${'\''zarafa-imap'\''}{TCPPort} || '\''8143'\''; }' replace /etc/e-smith/templates/etc/zarafa/gateway.cfg/gateway.cfg imaps_enable '{ if (${'\''zarafa-imaps'\''}{status} eq '\''enabled'\'') {'\''yes'\''} else {'\''no'\''}; }' replace /etc/e-smith/templates/etc/zarafa/gateway.cfg/gateway.cfg imaps_port '{ ${'\''zarafa-imaps'\''}{TCPPort} || '\''8993'\''; }' replace /etc/e-smith/templates/etc/zarafa/gateway.cfg/gateway.cfg imap_only_mailfolders '{ ${'\''zarafa-imap'\''}{imap_only_mailfolders} || '\''yes'\''; }' replace /etc/e-smith/templates/etc/zarafa/gateway.cfg/gateway.cfg imap_public_folders '{ ${'\''zarafa-imap'\''}{imap_public_folders} || '\''yes'\''; }' replace /etc/e-smith/templates/etc/zarafa/gateway.cfg/gateway.cfg imap_capability_idle '{ ${'\''zarafa-imap'\''}{imap_capability_idle} || '\''yes'\''; }' replace /etc/e-smith/templates/etc/zarafa/gateway.cfg/gateway.cfg imap_max_messagesize '{ ${'\''zarafa-imap'\''}{imap_max_messagesize} || '\''134217728'\''; }' replace /etc/e-smith/templates/etc/zarafa/gateway.cfg/gateway.cfg imap_generate_utf8 '{ ${'\''zarafa-imap'\''}{imap_generate_utf8} || '\''no'\''; }' replace /etc/e-smith/templates/etc/zarafa/gateway.cfg/gateway.cfg imap_expunge_on_delete '{ ${'\''zarafa-imap'\''}{imap_expunge_on_delete} || '\''no'\''; }' replace /etc/e-smith/templates/etc/zarafa/gateway.cfg/gateway.cfg imap_store_rfc822 '{ ${'\''zarafa-imap'\''}{imap_store_rfc822} || '\''yes'\''; }' replace /etc/e-smith/templates/etc/zarafa/gateway.cfg/gateway.cfg ssl_private_key_file '/home/e-smith/ssl.key/{$SystemName}.{$DomainName}.key' replace /etc/e-smith/templates/etc/zarafa/gateway.cfg/gateway.cfg ssl_certificate_file '/home/e-smith/ssl.crt/{$SystemName}.{$DomainName}.crt' replace /etc/e-smith/templates/etc/zarafa/gateway.cfg/gateway.cfg ssl_verify_client '{ ${'\''zarafa-gateway'\''}{ssl_verify_client} || '\''no'\''; }' replace /etc/e-smith/templates/etc/zarafa/gateway.cfg/gateway.cfg process_model '{ ${'\''zarafa-gateway'\''}{process_model} || '\''fork'\''; }' replace /etc/e-smith/templates/etc/zarafa/gateway.cfg/gateway.cfg log_method '{ ${'\''zarafa-gateway'\''}{log_method} || '\''file'\''; }' replace /etc/e-smith/templates/etc/zarafa/gateway.cfg/gateway.cfg log_level '{ ${'\''zarafa-gateway'\''}{log_level} || '\''2'\''; }' replace /etc/e-smith/templates/etc/zarafa/gateway.cfg/gateway.cfg log_timestamp '{ ${'\''zarafa-gateway'\''}{log_timestamp} || '\''1'\''; }' replace /etc/e-smith/templates/etc/zarafa/gateway.cfg/gateway.cfg ssl_enable_v2 '{ ${'\''zarafa-gateway'\''}{ssl_enable_v2} || '\''no'\''; }' # #--- ical config --- # echo echo "Creating zarafa-ical-configuration-template ..." echo mkdir -p /etc/e-smith/templates/etc/zarafa/ical.cfg cat /usr/share/doc/zarafa-ical/example-config/ical.cfg | sed -e 's/\r$//g' > /etc/e-smith/templates/etc/zarafa/ical.cfg/ical.cfg replace /etc/e-smith/templates/etc/zarafa/ical.cfg/ical.cfg ical_enable '{ if (${'\''zarafa-ical'\''}{status} eq '\''enabled'\'') {'\''yes'\''} else {'\''no'\''}; }' replace /etc/e-smith/templates/etc/zarafa/ical.cfg/ical.cfg ical_port '{ ${'\''zarafa-ical'\''}{TCPPort} || '\''8088'\''; }' replace /etc/e-smith/templates/etc/zarafa/ical.cfg/ical.cfg icals_enable '{ if (${'\''zarafa-icals'\''}{status} eq '\''enabled'\'') {'\''yes'\''} else {'\''no'\''}; }' replace /etc/e-smith/templates/etc/zarafa/ical.cfg/ical.cfg icals_port '{ ${'\''zarafa-icals'\''}{TCPPort} || '\''8089'\''; }' replace /etc/e-smith/templates/etc/zarafa/ical.cfg/ical.cfg server_socket 'http://localhost:{${'\''zarafa-server'\''}{TCPPort}||'\''236'\'';}/zarafa' replace /etc/e-smith/templates/etc/zarafa/ical.cfg/ical.cfg process_model '{ ${'\''zarafa-ical'\''}{process_model} || '\''fork'\''; }' replace /etc/e-smith/templates/etc/zarafa/ical.cfg/ical.cfg log_method '{ ${'\''zarafa-ical'\''}{log_method} || '\''file'\''; }' replace /etc/e-smith/templates/etc/zarafa/ical.cfg/ical.cfg log_level '{ ${'\''zarafa-ical'\''}{log_level} || '\''2'\''; }' replace /etc/e-smith/templates/etc/zarafa/ical.cfg/ical.cfg log_timestamp '{ ${'\''zarafa-ical'\''}{log_timestamp} || '\''1'\''; }' replace /etc/e-smith/templates/etc/zarafa/ical.cfg/ical.cfg ssl_private_key_file '/home/e-smith/ssl.key/{$SystemName}.{$DomainName}.key' replace /etc/e-smith/templates/etc/zarafa/ical.cfg/ical.cfg ssl_certificate_file '/home/e-smith/ssl.crt/{$SystemName}.{$DomainName}.crt' replace /etc/e-smith/templates/etc/zarafa/ical.cfg/ical.cfg ssl_verify_client '{ ${'\''zarafa-ical'\''}{ssl_verify_client} || '\''no'\''; }' replace /etc/e-smith/templates/etc/zarafa/ical.cfg/ical.cfg server_timezone '{$TimeZone}' replace /etc/e-smith/templates/etc/zarafa/ical.cfg/ical.cfg default_charset '{ ${'\''zarafa-ical'\''}{default_charset} || '\''utf-8'\''; }' replace /etc/e-smith/templates/etc/zarafa/ical.cfg/ical.cfg enable_ical_get '{ ${'\''zarafa-ical'\''}{enable_ical_get} || '\''yes'\''; }' replace /etc/e-smith/templates/etc/zarafa/ical.cfg/ical.cfg ssl_enable_v2 '{ ${'\''zarafa-ical'\''}{ssl_enable_v2} || '\''no'\''; }' # #--- indexer config --- # echo echo "Creating zarafa-indexer-configuration-template ..." echo mkdir -p /etc/e-smith/templates/etc/zarafa/indexer.cfg cat /usr/share/doc/zarafa-indexer/example-config/indexer.cfg | sed -e 's/\r$//g' > /etc/e-smith/templates/etc/zarafa/indexer.cfg/indexer.cfg replace /etc/e-smith/templates/etc/zarafa/indexer.cfg/indexer.cfg cleanup_lockfiles '{ ${'\''zarafa-indexer'\''}{cleanup_lockfiles} || '\''no'\''; }' replace /etc/e-smith/templates/etc/zarafa/indexer.cfg/indexer.cfg limit_results '{ ${'\''zarafa-indexer'\''}{limit_results} || '\''0'\''; }' replace /etc/e-smith/templates/etc/zarafa/indexer.cfg/indexer.cfg log_method '{ ${'\''zarafa-indexer'\''}{log_method} || '\''file'\''; }' replace /etc/e-smith/templates/etc/zarafa/indexer.cfg/indexer.cfg log_level '{ ${'\''zarafa-indexer'\''}{log_level} || '\''2'\''; }' replace /etc/e-smith/templates/etc/zarafa/indexer.cfg/indexer.cfg log_timestamp '{ ${'\''zarafa-indexer'\''}{log_timestamp} || '\''1'\''; }' replace /etc/e-smith/templates/etc/zarafa/indexer.cfg/indexer.cfg index_interval '{ ${'\''zarafa-indexer'\''}{index_interval} || '\''5'\''; }' replace /etc/e-smith/templates/etc/zarafa/indexer.cfg/indexer.cfg index_threads '{ ${'\''zarafa-indexer'\''}{index_threads} || '\''1'\''; }' replace /etc/e-smith/templates/etc/zarafa/indexer.cfg/indexer.cfg index_max_field_length '{ ${'\''zarafa-indexer'\''}{index_max_field_length} || '\''10000'\''; }' replace /etc/e-smith/templates/etc/zarafa/indexer.cfg/indexer.cfg index_merge_factor '{ ${'\''zarafa-indexer'\''}{index_merge_factor} || '\''10'\''; }' replace /etc/e-smith/templates/etc/zarafa/indexer.cfg/indexer.cfg index_max_buffered_docs '{ ${'\''zarafa-indexer'\''}{index_max_buffered_docs} || '\''10'\''; }' replace /etc/e-smith/templates/etc/zarafa/indexer.cfg/indexer.cfg index_min_merge_docs '{ ${'\''zarafa-indexer'\''}{index_min_merge_docs} || '\''10'\''; }' replace /etc/e-smith/templates/etc/zarafa/indexer.cfg/indexer.cfg index_max_merge_docs '{ ${'\''zarafa-indexer'\''}{index_max_merge_docs} || '\''2147483647'\''; }' replace /etc/e-smith/templates/etc/zarafa/indexer.cfg/indexer.cfg index_term_interval '{ ${'\''zarafa-indexer'\''}{index_term_interval} || '\''128'\''; }' replace /etc/e-smith/templates/etc/zarafa/indexer.cfg/indexer.cfg index_cache_timeout '{ ${'\''zarafa-indexer'\''}{index_cache_timeout} || '\''0'\''; }' replace /etc/e-smith/templates/etc/zarafa/indexer.cfg/indexer.cfg index_attachments '{ ${'\''zarafa-indexer'\''}{index_attachments} || '\''no'\''; }' replace /etc/e-smith/templates/etc/zarafa/indexer.cfg/indexer.cfg index_attachment_max_size '{ ${'\''zarafa-indexer'\''}{index_attachment_max_size} || '\''5120'\''; }' replace /etc/e-smith/templates/etc/zarafa/indexer.cfg/indexer.cfg index_attachment_parser_max_memory '{ ${'\''zarafa-indexer'\''}{index_attachment_parser_max_memory} || '\''0'\''; }' replace /etc/e-smith/templates/etc/zarafa/indexer.cfg/indexer.cfg index_attachment_parser_max_cputime '{ ${'\''zarafa-indexer'\''}{index_attachment_parser_max_cputime} || '\''0'\''; }' ###################################### # Configuring SME-events : Templates to expand ###################################### /bin/echo /bin/echo "Configuring SME-events : Templates2expand" /bin/echo mkdir -p /etc/e-smith/events/email-update/templates2expand/etc/zarafa touch /etc/e-smith/events/email-update/templates2expand/etc/zarafa/gateway.cfg touch /etc/e-smith/events/email-update/templates2expand/etc/zarafa/ical.cfg touch /etc/e-smith/events/email-update/templates2expand/etc/zarafa/server.cfg touch /etc/e-smith/events/email-update/templates2expand/etc/zarafa/unix.cfg touch /etc/e-smith/events/email-update/templates2expand/etc/zarafa/spooler.cfg touch /etc/e-smith/events/email-update/templates2expand/etc/zarafa/licensed.cfg touch /etc/e-smith/events/email-update/templates2expand/etc/zarafa/monitor.cfg touch /etc/e-smith/events/email-update/templates2expand/etc/zarafa/dagent.cfg mkdir -p /etc/e-smith/events/group-create/templates2expand/etc/zarafa touch /etc/e-smith/events/group-create/templates2expand/etc/zarafa/unix.cfg mkdir -p /etc/e-smith/events/group-delete/templates2expand/etc/zarafa touch /etc/e-smith/events/group-delete/templates2expand/etc/zarafa/unix.cfg mkdir -p /etc/e-smith/events/group-modify/templates2expand/etc/zarafa touch /etc/e-smith/events/group-modify/templates2expand/etc/zarafa/unix.cfg mkdir -p /etc/e-smith/events/user-create/templates2expand/etc/zarafa touch /etc/e-smith/events/user-create/templates2expand/etc/zarafa/unix.cfg mkdir -p /etc/e-smith/events/user-delete/templates2expand/etc/zarafa touch /etc/e-smith/events/user-delete/templates2expand/etc/zarafa/unix.cfg mkdir -p /etc/e-smith/events/user-modify/templates2expand/etc/zarafa touch /etc/e-smith/events/user-modify/templates2expand/etc/zarafa/unix.cfg mkdir -p /etc/e-smith/events/ibay-create/templates2expand/etc/zarafa touch /etc/e-smith/events/ibay-create/templates2expand/etc/zarafa/unix.cfg mkdir -p /etc/e-smith/events/machine-account-create/templates2expand/etc/zarafa touch /etc/e-smith/events/machine-account-create/templates2expand/etc/zarafa/unix.cfg mkdir -p /etc/e-smith/events/post-upgrade/templates2expand/etc/zarafa touch /etc/e-smith/events/post-upgrade/templates2expand/etc/e-smith/sql/init/80zarafa touch /etc/e-smith/events/post-upgrade/templates2expand/etc/zarafa/gateway.cfg touch /etc/e-smith/events/post-upgrade/templates2expand/etc/zarafa/ical.cfg touch /etc/e-smith/events/post-upgrade/templates2expand/etc/zarafa/server.cfg touch /etc/e-smith/events/post-upgrade/templates2expand/etc/zarafa/unix.cfg touch /etc/e-smith/events/post-upgrade/templates2expand/etc/zarafa/spooler.cfg touch /etc/e-smith/events/post-upgrade/templates2expand/etc/zarafa/licensed.cfg touch /etc/e-smith/events/post-upgrade/templates2expand/etc/zarafa/monitor.cfg touch /etc/e-smith/events/post-upgrade/templates2expand/etc/zarafa/dagent.cfg ###################################### # Configuring SME-events : Services to adjust ###################################### /bin/echo /bin/echo "Configuring SME-events : Services2adjust" /bin/echo mkdir -p /etc/e-smith/events/machine-account-create/services2adjust ln -s reload /etc/e-smith/events/group-create/services2adjust/zarafa-server ln -s reload /etc/e-smith/events/group-delete/services2adjust/zarafa-server ln -s reload /etc/e-smith/events/group-modify/services2adjust/zarafa-server ln -s reload /etc/e-smith/events/user-create/services2adjust/zarafa-server ln -s reload /etc/e-smith/events/user-delete/services2adjust/zarafa-server ln -s reload /etc/e-smith/events/user-modify/services2adjust/zarafa-server ln -s reload /etc/e-smith/events/ibay-create/services2adjust/zarafa-server ln -s reload /etc/e-smith/events/machine-account-create/services2adjust/zarafa-server ln -s reload /etc/e-smith/events/timezone-update/services2adjust/zarafa-server ###################################### # Setting up SME-db-entries ###################################### /bin/echo /bin/echo "Enter the language of your choice for your zarafa-mailboxes and public store(s)." /bin/echo "Values: en_US.UTF-8, en_GB.UTF-8, nl_NL.UTF-8, fr_FR.UTF-8, de_DE.UTF-8, ..." /bin/echo read ZARAFALANGUAGE /sbin/e-smith/config set zarafa service status enabled language $ZARAFALANGUAGE /sbin/e-smith/expand-template /etc/sysconfig/zarafa /bin/echo /bin/echo "Initialize-default-databases" /bin/echo /etc/e-smith/events/actions/initialize-default-databases /bin/echo /bin/echo "Setting up db-entries for Zarafa" /bin/echo /sbin/e-smith/db configuration setprop mysqld InnoDB enabled /sbin/e-smith/db configuration setprop smtpd tnef2mime disabled /sbin/e-smith/db configuration setprop zarafa-server access private status enabled TCPPort 236 index_services_enabled yes /bin/echo /bin/echo "Enter your user plugin." /bin/echo "Values: unix or db (ldap is not supported, multicompany-support only with db-plugin)." /bin/echo read USERPLUGIN /sbin/e-smith/db configuration setprop zarafa-server user_plugin $USERPLUGIN if [ "$USERPLUGIN" == unix ]; then /sbin/e-smith/db configuration setprop zarafa-server user_plugin_config /etc/zarafa/unix.cfg fi if [ "$USERPLUGIN" == db ]; then /bin/echo /bin/echo "Do you want to set up a multicompany-environment ?" /bin/echo "Values: yes or no." /bin/echo read MULTICOMPANY /sbin/e-smith/db configuration setprop zarafa-server Multicompany $MULTICOMPANY /sbin/e-smith/db configuration delprop zarafa-server user_plugin_config if [ "$MULTICOMPANY" == yes ]; then /sbin/e-smith/db configuration setprop zarafa-server enable_hosted_zarafa true /sbin/e-smith/db configuration setprop zarafa-server loginname_format %u.%c else /sbin/e-smith/db configuration setprop zarafa-server enable_hosted_zarafa false /sbin/e-smith/db configuration setprop zarafa-server loginname_format %u fi fi /sbin/e-smith/db configuration setprop zarafa access SSL /sbin/e-smith/db configuration set zarafa-ical service access private status enabled TCPPort 8088 /sbin/e-smith/db configuration set zarafa-icals service access public status enabled TCPPort 8089 /sbin/e-smith/db configuration set zarafa-imap service access private status enabled TCPPort 8143 /sbin/e-smith/db configuration set zarafa-imaps service access public status enabled TCPPort 8993 /sbin/e-smith/db configuration set zarafa-pop3 service access private status enabled TCPPort 8110 /sbin/e-smith/db configuration set zarafa-pop3s service access public status enabled TCPPort 8995 /sbin/e-smith/db configuration set zarafa-ssl service access public status enabled TCPPort 237 /sbin/e-smith/db configuration set zarafa-gateway service status enabled /sbin/e-smith/db configuration set zarafa-spooler service status enabled /sbin/e-smith/db configuration set zarafa-monitor service status enabled /sbin/e-smith/db configuration set zarafa-indexer service status enabled /sbin/e-smith/db configuration set zarafa-licensed service status enabled /sbin/e-smith/db configuration set zarafa-dagent service status enabled ###################################### # Setting up the Zarafa-db ###################################### /bin/echo /bin/echo "Expanding the my.cnf-template" /bin/echo /sbin/e-smith/expand-template /etc/my.cnf /bin/echo /bin/echo "Restarting mysqld" /bin/echo /usr/bin/sv t /service/mysqld /bin/echo /bin/echo "Signal-event remoteaccess-update" /bin/echo /sbin/e-smith/signal-event remoteaccess-update /bin/echo /bin/echo "Creating the Zarafa-database" /bin/echo /sbin/e-smith/expand-template /etc/e-smith/sql/init/80zarafa /etc/rc.d/init.d/mysql.init start ###################################### # Expanding the Zarafa-configuration-templates ###################################### /bin/echo /bin/echo "Expanding the Zarafa-configuration-templates" /bin/echo /etc/e-smith/events/actions/zarafa-expand-templates ###################################### # Configuration of the Webaccess ###################################### /bin/echo /bin/echo "Configuration of the Webaccess" /bin/echo /bin/chown -R www:www /var/lib/zarafa-webaccess/tmp /bin/chown -R www:www /var/lib/zarafa-webapp/tmp FILE=/etc/httpd/conf.d/zarafa-webaccess.conf; if [ -a $FILE ]; then /bin/rm -f $FILE; fi FILE=/etc/httpd/conf.d/zarafa-webapp.conf; if [ -a $FILE ]; then /bin/rm -f $FILE; fi /bin/echo /bin/echo "Expanding http.conf-template" /bin/echo /sbin/e-smith/expand-template /etc/httpd/conf/httpd.conf /bin/echo /bin/echo "Restarting httpd" /bin/echo /usr/bin/sv restart /service/httpd-e-smith ###################################### # Setting up more symbolic links ###################################### /bin/echo /bin/echo "Setting up more symbolic links" /bin/echo if [ `getconf LONG_BIT` = "64" ]; then ln -s /usr/lib64/zarafa /usr/lib/zarafa ln -s /lib64/libcrypto.so.0.9.8e /usr/lib/libcrypto.so.0.9.8 ln -s /lib64/libssl.so.0.9.8e /usr/lib/libssl.so.0.9.8 else ln -s /lib/libcrypto.so.0.9.8e /usr/lib/libcrypto.so.0.9.8 ln -s /lib/libssl.so.0.9.8e /usr/lib/libssl.so.0.9.8 fi ln -s /etc/rc.d/init.d/e-smith-service /etc/rc.d/rc7.d/S99zarafa-dagent ln -s /etc/rc.d/init.d/e-smith-service /etc/rc.d/rc7.d/S99zarafa-gateway ln -s /etc/rc.d/init.d/e-smith-service /etc/rc.d/rc7.d/S99zarafa-indexer ln -s /etc/rc.d/init.d/e-smith-service /etc/rc.d/rc7.d/S99zarafa-licensed ln -s /etc/rc.d/init.d/e-smith-service /etc/rc.d/rc7.d/S99zarafa-monitor ln -s /etc/rc.d/init.d/e-smith-service /etc/rc.d/rc7.d/S99zarafa-spooler ln -s /etc/rc.d/init.d/e-smith-service /etc/rc.d/rc7.d/S99zarafa-ical ln -s /etc/rc.d/init.d/e-smith-service /etc/rc.d/rc7.d/S99zarafa-server ####################################### # Installing a license-key ####################################### /bin/echo /bin/echo "Installing a license-key" /bin/echo if [ -x /usr/bin/zarafa-licensed ]; then if [ ! -f /etc/zarafa/license/base ]; then mkdir -p /etc/zarafa/license SERIAL="0" while [ ${#SERIAL} -ne 25 -a ${#SERIAL} -ne 0 ]; do if [ -n "$SERIAL" ]; then echo "Serial number must be 25 characters or empty" fi echo -ne "Server serial number (leave empty for none) []\t\t: " read SERIAL done SERIAL=`echo $SERIAL | tr [a-z] [A-Z]` echo $SERIAL > /etc/zarafa/license/base echo echo "The correctness of the serial will be checked when the Zarafa-server starts." echo fi fi ####################################### # Starting Zarafa ####################################### /bin/echo /bin/echo "Starting Zarafa-services" /bin/echo /etc/e-smith/events/actions/zarafa-services start /bin/echo /bin/echo "Setting permissions on files" /bin/echo FILE=/var/log/zarafa/dagent.log; if [ -a $FILE ]; then /bin/chmod 666 $FILE; fi /bin/chmod 554 /etc/e-smith/events/actions/zarafa-update ####################################### # Creating public store(s) ####################################### if [ "$USERPLUGIN" == unix ]; then /bin/echo /bin/echo "creating Public store" /bin/echo /usr/bin/zarafa-admin --utf8 -s fi if [ "$USERPLUGIN" == db ]; then if [ "$MULTICOMPANY" == no ]; then /bin/echo /bin/echo "creating Public store" /bin/echo /usr/bin/zarafa-admin --utf8 -s fi fi if [ "$USERPLUGIN" == db ]; then if [ "$MULTICOMPANY" == yes ]; then /bin/echo /bin/echo "Make your first company. Enter your first companyname :" /bin/echo read COMPANYNAME /usr/bin/zarafa-admin --create-company "$COMPANYNAME" /bin/echo /bin/echo "!!! REMEMBER !!! : for a multicompany-environment the username-format of the SME-user and the ZARAFA-user," /bin/echo "has to be : [username].[companyname] !!!" /bin/echo fi fi
To save :
CTRL + X yes <ENTER>
UPGRADESCRIPT
nano -w /etc/e-smith/events/actions/zarafa-update
#!/bin/sh /bin/echo "Stopping the Zarafa-services" /etc/e-smith/events/actions/zarafa-services stop # #--- zarafa-configuration-helper-action --- # echo echo "Creating zarafa-configuration-helper-action ..." echo cat <<HERE1 > /etc/e-smith/events/actions/helpers.inc # -*- Mode: sh -*- replace() { file=\$1 option=\$2 value=\$3 # escape &-signs, and % for sed value=\`echo \$value | sed -e 's/\&/\\\\\&/g' -e 's/\%/\\\\\%/g'\` sed -i -e "s%\([[:space:]]*\$option[[:space:]]*=[[:space:]]*\).*%\1\$value%" \$file } HERE1 . /etc/e-smith/events/actions/helpers.inc # #--- sysconfig config --- # echo echo "Creating zarafa-sysconfig-configuration-template ..." echo mkdir -p /etc/e-smith/templates/etc/sysconfig/zarafa cat /etc/sysconfig/zarafa | sed -e 's/\r$//g' > /etc/e-smith/templates/etc/sysconfig/zarafa/zarafa replace /etc/e-smith/templates/etc/sysconfig/zarafa/zarafa ZARAFA_LOCALE '"{ ${'\''zarafa'\''}{language} || '\''en_US.UTF-8'\'' ; }"' replace /etc/e-smith/templates/etc/sysconfig/zarafa/zarafa ZARAFA_USERSCRIPT_LOCALE '"{ ${'\''zarafa'\''}{language} || '\''en_US.UTF-8'\'' ; }"' # #--- licensed config --- # echo echo "Creating zarafa-licensed-configuration-template ..." echo mkdir -p /etc/e-smith/templates/etc/zarafa/licensed.cfg cat /usr/share/doc/zarafa-licensed/example-config/licensed.cfg | sed -e 's/\r$//g' > /etc/e-smith/templates/etc/zarafa/licensed.cfg/licensed.cfg replace /etc/e-smith/templates/etc/zarafa/licensed.cfg/licensed.cfg log_method '{ ${'\''zarafa-licensed'\''}{log_method} || '\''file'\''; }' replace /etc/e-smith/templates/etc/zarafa/licensed.cfg/licensed.cfg log_level '{ ${'\''zarafa-licensed'\''}{log_level} || '\''2'\''; }' replace /etc/e-smith/templates/etc/zarafa/licensed.cfg/licensed.cfg log_timestamp '{ ${'\''zarafa-licensed'\''}{log_timestamp} || '\''1'\''; }' # #--- server config --- # echo echo "Creating zarafa-server-configuration-template ..." echo mkdir -p /etc/e-smith/templates/etc/zarafa/server.cfg cat /usr/share/doc/zarafa/example-config/server.cfg | sed -e 's/\r$//g' > /etc/e-smith/templates/etc/zarafa/server.cfg/server.cfg replace /etc/e-smith/templates/etc/zarafa/server.cfg/server.cfg server_tcp_enabled '{ ${'\''zarafa-server'\''}{server_tcp_enabled} || '\''yes'\''; }' replace /etc/e-smith/templates/etc/zarafa/server.cfg/server.cfg server_tcp_port '{ ${'\''zarafa-server'\''}{TCPPort} || '\''236'\''; }' replace /etc/e-smith/templates/etc/zarafa/server.cfg/server.cfg server_pipe_enabled '{ ${'\''zarafa-server'\''}{server_pipe_enabled} || '\''yes'\''; }' replace /etc/e-smith/templates/etc/zarafa/server.cfg/server.cfg server_name '{ ${'\''zarafa-server'\''}{server_name} || '\''Zarafa'\''; }' replace /etc/e-smith/templates/etc/zarafa/server.cfg/server.cfg database_engine '{ ${'\''zarafa-server'\''}{database_engine} || '\''mysql'\''; }' replace /etc/e-smith/templates/etc/zarafa/server.cfg/server.cfg allow_local_users '{ ${'\''zarafa-server'\''}{allow_local_users} || '\''yes'\''; }' replace /etc/e-smith/templates/etc/zarafa/server.cfg/server.cfg local_admin_users '{ ${'\''zarafa-server'\''}{local_admin_users} || '\''root'\''; }' replace /etc/e-smith/templates/etc/zarafa/server.cfg/server.cfg system_email_address '{ ${'\''zarafa-server'\''}{system_email_address} || '\''postmaster@localhost'\''; }' replace /etc/e-smith/templates/etc/zarafa/server.cfg/server.cfg session_timeout '{ ${'\''zarafa-server'\''}{session_timeout} || '\''300'\''; }' replace /etc/e-smith/templates/etc/zarafa/server.cfg/server.cfg license_timeout '{ ${'\''zarafa-server'\''}{license_timeout} || '\''10'\''; }' replace /etc/e-smith/templates/etc/zarafa/server.cfg/server.cfg log_method '{ ${'\''zarafa-server'\''}{log_method} || '\''file'\''; }' replace /etc/e-smith/templates/etc/zarafa/server.cfg/server.cfg log_level '{ ${'\''zarafa-server'\''}{log_level} || '\''2'\''; }' replace /etc/e-smith/templates/etc/zarafa/server.cfg/server.cfg log_timestamp '{ ${'\''zarafa-server'\''}{log_timestamp} || '\''1'\''; }' replace /etc/e-smith/templates/etc/zarafa/server.cfg/server.cfg audit_log_enabled '{ ${'\''zarafa-server'\''}{audit_log_enabled} || '\''no'\''; }' replace /etc/e-smith/templates/etc/zarafa/server.cfg/server.cfg audit_log_level '{ ${'\''zarafa-server'\''}{audit_log_level} || '\''1'\''; }' replace /etc/e-smith/templates/etc/zarafa/server.cfg/server.cfg audit_log_timestamp '{ ${'\''zarafa-server'\''}{audit_log_timestamp} || '\''1'\''; }' replace /etc/e-smith/templates/etc/zarafa/server.cfg/server.cfg mysql_host '{ ${'\''zarafa-server'\''}{mysql_host} || '\''localhost'\''; }' replace /etc/e-smith/templates/etc/zarafa/server.cfg/server.cfg mysql_port '{ ${'\''zarafa-server'\''}{mysql_port} || '\''3306'\''; }' replace /etc/e-smith/templates/etc/zarafa/server.cfg/server.cfg mysql_user '{ ${'\''zarafa-server'\''}{DbUser} || '\''zarafa'\''; }' replace /etc/e-smith/templates/etc/zarafa/server.cfg/server.cfg mysql_password '{ ${'\''zarafa-server'\''}{DbPassword}; }' replace /etc/e-smith/templates/etc/zarafa/server.cfg/server.cfg mysql_database '{ ${'\''zarafa-server'\''}{DbName} || '\''zarafa'\''; }' replace /etc/e-smith/templates/etc/zarafa/server.cfg/server.cfg attachment_storage '{ ${'\''zarafa-server'\''}{attachment_storage} || '\''files'\''; }' replace /etc/e-smith/templates/etc/zarafa/server.cfg/server.cfg attachment_path '/home/e-smith/files/zarafa' replace /etc/e-smith/templates/etc/zarafa/server.cfg/server.cfg attachment_compression '{ ${'\''zarafa-server'\''}{attachment_compression} || '\''6'\''; }' replace /etc/e-smith/templates/etc/zarafa/server.cfg/server.cfg server_ssl_enabled '{ ${'\''zarafa-ssl'\''}{server_ssl_enabled} || '\''yes'\''; }' replace /etc/e-smith/templates/etc/zarafa/server.cfg/server.cfg server_ssl_port '{ ${'\''zarafa-ssl'\''}{TCPPort} || '\''237'\''; }' replace /etc/e-smith/templates/etc/zarafa/server.cfg/server.cfg server_ssl_key_file '/home/e-smith/ssl.pem/{$SystemName}.{$DomainName}.pem' replace /etc/e-smith/templates/etc/zarafa/server.cfg/server.cfg server_ssl_key_pass '{ ${'\''zarafa-server'\''}{DbPassword}; }' replace /etc/e-smith/templates/etc/zarafa/server.cfg/server.cfg server_ssl_ca_file '/home/e-smith/ssl.crt/{$SystemName}.{$DomainName}.crt' replace /etc/e-smith/templates/etc/zarafa/server.cfg/server.cfg server_ssl_ca_path '/home/e-smith/ssl.crt' replace /etc/e-smith/templates/etc/zarafa/server.cfg/server.cfg sslkeys_path '/home/e-smith/ssl.pem' replace /etc/e-smith/templates/etc/zarafa/server.cfg/server.cfg threads '{ ${'\''zarafa-server'\''}{threads} || '\''8'\''; }' replace /etc/e-smith/templates/etc/zarafa/server.cfg/server.cfg watchdog_frequency '{ ${'\''zarafa-server'\''}{watchdog_frequency} || '\''1'\''; }' replace /etc/e-smith/templates/etc/zarafa/server.cfg/server.cfg watchdog_max_age '{ ${'\''zarafa-server'\''}{watchdog_max_age} || '\''500'\''; }' replace /etc/e-smith/templates/etc/zarafa/server.cfg/server.cfg server_max_keep_alive_requests '{ ${'\''zarafa-server'\''}{server_max_keep_alive_requests} || '\''100'\''; }' replace /etc/e-smith/templates/etc/zarafa/server.cfg/server.cfg server_recv_timeout '{ ${'\''zarafa-server'\''}{server_recv_timeout} || '\''5'\''; }' replace /etc/e-smith/templates/etc/zarafa/server.cfg/server.cfg server_read_timeout '{ ${'\''zarafa-server'\''}{server_read_timeout} || '\''60'\''; }' replace /etc/e-smith/templates/etc/zarafa/server.cfg/server.cfg server_send_timeout '{ ${'\''zarafa-server'\''}{server_send_timeout} || '\''60'\''; }' replace /etc/e-smith/templates/etc/zarafa/server.cfg/server.cfg softdelete_lifetime '{ ${'\''zarafa-server'\''}{softdelete_lifetime} || '\''30'\''; }' replace /etc/e-smith/templates/etc/zarafa/server.cfg/server.cfg sync_lifetime '{ ${'\''zarafa-server'\''}{sync_lifetime} || '\''365'\''; }' replace /etc/e-smith/templates/etc/zarafa/server.cfg/server.cfg sync_log_all_changes '{ ${'\''zarafa-server'\''}{sync_log_all_changes} || '\''no'\''; }' replace /etc/e-smith/templates/etc/zarafa/server.cfg/server.cfg enable_sso '{ ${'\''zarafa-server'\''}{enable_sso} || '\''no'\''; }' replace /etc/e-smith/templates/etc/zarafa/server.cfg/server.cfg enable_gab '{ ${'\''zarafa-server'\''}{enable_gab} || '\''yes'\''; }' replace /etc/e-smith/templates/etc/zarafa/server.cfg/server.cfg auth_method '{ ${'\''zarafa-server'\''}{auth_method} || '\''plugin'\''; }' replace /etc/e-smith/templates/etc/zarafa/server.cfg/server.cfg pam_service '{ ${'\''zarafa-server'\''}{pam_service} || '\''passwd'\''; }' replace /etc/e-smith/templates/etc/zarafa/server.cfg/server.cfg cache_cell_size '{ ${'\''zarafa-server'\''}{cache_cell_size} || '\''268435456'\''; }' replace /etc/e-smith/templates/etc/zarafa/server.cfg/server.cfg cache_object_size '{ ${'\''zarafa-server'\''}{cache_object_size} || '\''5242880'\''; }' replace /etc/e-smith/templates/etc/zarafa/server.cfg/server.cfg cache_indexedobject_size '{ ${'\''zarafa-server'\''}{cache_indexedobject_size} || '\''16777216'\''; }' replace /etc/e-smith/templates/etc/zarafa/server.cfg/server.cfg cache_quota_size '{ ${'\''zarafa-server'\''}{cache_quota_size} || '\''1048576'\''; }' replace /etc/e-smith/templates/etc/zarafa/server.cfg/server.cfg cache_quota_lifetime '{ ${'\''zarafa-server'\''}{cache_quota_lifetime} || '\''1'\''; }' replace /etc/e-smith/templates/etc/zarafa/server.cfg/server.cfg cache_acl_size '{ ${'\''zarafa-server'\''}{cache_acl_size} || '\''1048576'\''; }' replace /etc/e-smith/templates/etc/zarafa/server.cfg/server.cfg cache_store_size '{ ${'\''zarafa-server'\''}{cache_store_size} || '\''1048576'\''; }' replace /etc/e-smith/templates/etc/zarafa/server.cfg/server.cfg cache_user_size '{ ${'\''zarafa-server'\''}{cache_user_size} || '\''1048576'\''; }' replace /etc/e-smith/templates/etc/zarafa/server.cfg/server.cfg cache_userdetails_size '{ ${'\''zarafa-server'\''}{cache_userdetails_size} || '\''26214400'\''; }' replace /etc/e-smith/templates/etc/zarafa/server.cfg/server.cfg cache_userdetails_lifetime '{ ${'\''zarafa-server'\''}{cache_userdetails_lifetime} || '\''5'\''; }' replace /etc/e-smith/templates/etc/zarafa/server.cfg/server.cfg cache_server_size '{ ${'\''zarafa-server'\''}{cache_server_size} || '\''1048576'\''; }' replace /etc/e-smith/templates/etc/zarafa/server.cfg/server.cfg cache_server_lifetime '{ ${'\''zarafa-server'\''}{cache_server_lifetime} || '\''30'\''; }' replace /etc/e-smith/templates/etc/zarafa/server.cfg/server.cfg quota_warn '{ ${'\''zarafa-server'\''}{quota_warn} || '\''0'\''; }' replace /etc/e-smith/templates/etc/zarafa/server.cfg/server.cfg quota_soft '{ ${'\''zarafa-server'\''}{quota_soft} || '\''0'\''; }' replace /etc/e-smith/templates/etc/zarafa/server.cfg/server.cfg quota_hard '{ ${'\''zarafa-server'\''}{quota_hard} || '\''0'\''; }' replace /etc/e-smith/templates/etc/zarafa/server.cfg/server.cfg companyquota_warn '{ ${'\''zarafa-server'\''}{companyquota_warn} || '\''0'\''; }' replace /etc/e-smith/templates/etc/zarafa/server.cfg/server.cfg user_plugin '{ ${'\''zarafa-server'\''}{user_plugin} || '\''db'\''; }' replace /etc/e-smith/templates/etc/zarafa/server.cfg/server.cfg user_plugin_config '{ ${'\''zarafa-server'\''}{user_plugin_config}; }' replace /etc/e-smith/templates/etc/zarafa/server.cfg/server.cfg user_safe_mode '{ ${'\''zarafa-server'\''}{user_safe_mode} || '\''no'\''; }' replace /etc/e-smith/templates/etc/zarafa/server.cfg/server.cfg thread_stacksize '{ ${'\''zarafa-server'\''}{thread_stacksize} || '\''512'\''; }' replace /etc/e-smith/templates/etc/zarafa/server.cfg/server.cfg enable_hosted_zarafa '{ ${'\''zarafa-server'\''}{enable_hosted_zarafa} || '\''false'\''; }' replace /etc/e-smith/templates/etc/zarafa/server.cfg/server.cfg enable_distributed_zarafa '{ ${'\''zarafa-server'\''}{enable_distributed_zarafa} || '\''false'\''; }' replace /etc/e-smith/templates/etc/zarafa/server.cfg/server.cfg storename_format '{ ${'\''zarafa-server'\''}{storename_format} || '\''%f'\''; }' replace /etc/e-smith/templates/etc/zarafa/server.cfg/server.cfg loginname_format '{ ${'\''zarafa-server'\''}{loginname_format} || '\''%u'\''; }' replace /etc/e-smith/templates/etc/zarafa/server.cfg/server.cfg client_update_enabled '{ ${'\''zarafa-server'\''}{client_update_enabled} || '\''false'\''; }' replace /etc/e-smith/templates/etc/zarafa/server.cfg/server.cfg client_update_path '{ ${'\''zarafa-server'\''}{client_update_path} || '\''/var/lib/zarafa/client'\''; }' replace /etc/e-smith/templates/etc/zarafa/server.cfg/server.cfg client_update_log_level '{ ${'\''zarafa-server'\''}{client_update_log_level} || '\''1'\''; }' replace /etc/e-smith/templates/etc/zarafa/server.cfg/server.cfg hide_everyone '{ ${'\''zarafa-server'\''}{hide_everyone} || '\''yes'\''; }' replace /etc/e-smith/templates/etc/zarafa/server.cfg/server.cfg hide_system '{ ${'\''zarafa-server'\''}{hide_system} || '\''yes'\''; }' replace /etc/e-smith/templates/etc/zarafa/server.cfg/server.cfg index_services_enabled '{ ${'\''zarafa-server'\''}{index_services_enabled} || '\''no'\''; }' replace /etc/e-smith/templates/etc/zarafa/server.cfg/server.cfg index_services_search_timeout '{ ${'\''zarafa-server'\''}{index_services_search_timeout} || '\''10'\''; }' replace /etc/e-smith/templates/etc/zarafa/server.cfg/server.cfg index_services_prefix_chars '{ ${'\''zarafa-server'\''}{index_services_prefix_chars} || '\''3'\''; }' replace /etc/e-smith/templates/etc/zarafa/server.cfg/server.cfg enable_enhanced_ics '{ ${'\''zarafa-server'\''}{enable_enhanced_ics} || '\''yes'\''; }' replace /etc/e-smith/templates/etc/zarafa/server.cfg/server.cfg sync_gab_realtime '{ ${'\''zarafa-server'\''}{sync_gab_realtime} || '\''yes'\''; }' replace /etc/e-smith/templates/etc/zarafa/server.cfg/server.cfg disabled_features '{ ${'\''zarafa-server'\''}{disabled_features}; }' replace /etc/e-smith/templates/etc/zarafa/server.cfg/server.cfg max_deferred_records '{ ${'\''zarafa-server'\''}{max_deferred_records} || '\''0'\''; }' replace /etc/e-smith/templates/etc/zarafa/server.cfg/server.cfg max_deferred_records_folder '{ ${'\''zarafa-server'\''}{max_deferred_records_folder} || '\''20'\''; }' replace /etc/e-smith/templates/etc/zarafa/server.cfg/server.cfg coredump_enabled '{ ${'\''zarafa-server'\''}{coredump_enabled} || '\''yes'\''; }' replace /etc/e-smith/templates/etc/zarafa/server.cfg/server.cfg server_ssl_enable_v2 '{ ${'\''zarafa-server'\''}{server_ssl_enable_v2} || '\''no'\''; }' # #--- dagent config --- # echo echo "Creating zarafa-dagent-configuration-template ..." echo mkdir -p /etc/e-smith/templates/etc/zarafa/dagent.cfg cat /usr/share/doc/zarafa-dagent/example-config/dagent.cfg | sed -e 's/\r$//g' > /etc/e-smith/templates/etc/zarafa/dagent.cfg/dagent.cfg replace /etc/e-smith/templates/etc/zarafa/dagent.cfg/dagent.cfg log_method '{ ${'\''zarafa-dagent'\''}{log_method} || '\''file'\''; }' replace /etc/e-smith/templates/etc/zarafa/dagent.cfg/dagent.cfg log_level '{ ${'\''zarafa-dagent'\''}{log_level} || '\''2'\''; }' replace /etc/e-smith/templates/etc/zarafa/dagent.cfg/dagent.cfg log_timestamp '{ ${'\''zarafa-dagent'\''}{log_timestamp} || '\''1'\''; }' replace /etc/e-smith/templates/etc/zarafa/dagent.cfg/dagent.cfg log_raw_message '{ ${'\''zarafa-dagent'\''}{log_raw_message} || '\''no'\''; }' replace /etc/e-smith/templates/etc/zarafa/dagent.cfg/dagent.cfg lmtp_port '{ ${'\''zarafa-dagent'\''}{lmtp_port} || '\''2003'\''; }' replace /etc/e-smith/templates/etc/zarafa/dagent.cfg/dagent.cfg lmtp_max_threads '{ ${'\''zarafa-dagent'\''}{lmtp_max_threads} || '\''20'\''; }' replace /etc/e-smith/templates/etc/zarafa/dagent.cfg/dagent.cfg process_model '{ ${'\''zarafa-dagent'\''}{process_model} || '\''fork'\''; }' replace /etc/e-smith/templates/etc/zarafa/dagent.cfg/dagent.cfg spam_header_name '{ ${'\''zarafa-dagent'\''}{spam_header_name} || '\''X-Spam-Status'\''; }' replace /etc/e-smith/templates/etc/zarafa/dagent.cfg/dagent.cfg spam_header_value '{ ${'\''zarafa-dagent'\''}{spam_header_value} || '\''Yes'\''; }' replace /etc/e-smith/templates/etc/zarafa/dagent.cfg/dagent.cfg archive_on_delivery '{ ${'\''zarafa-dagent'\''}{archive_on_delivery} || '\''no'\''; }' replace /etc/e-smith/templates/etc/zarafa/dagent.cfg/dagent.cfg set_rule_headers '{ ${'\''zarafa-dagent'\''}{set_rule_headers} || '\''yes'\''; }' # #--- spooler config --- # echo echo "Creating zarafa-spooler-configuration-template ..." echo mkdir -p /etc/e-smith/templates/etc/zarafa/spooler.cfg cat /usr/share/doc/zarafa-spooler/example-config/spooler.cfg | sed -e 's/\r$//g' > /etc/e-smith/templates/etc/zarafa/spooler.cfg/spooler.cfg replace /etc/e-smith/templates/etc/zarafa/spooler.cfg/spooler.cfg smtp_port '{ ${'\''zarafa-spooler'\''}{smtp_port} || '\''25'\''; }' replace /etc/e-smith/templates/etc/zarafa/spooler.cfg/spooler.cfg log_method '{ ${'\''zarafa-spooler'\''}{log_method} || '\''file'\''; }' replace /etc/e-smith/templates/etc/zarafa/spooler.cfg/spooler.cfg log_level '{ ${'\''zarafa-spooler'\''}{log_level} || '\''3'\''; }' replace /etc/e-smith/templates/etc/zarafa/spooler.cfg/spooler.cfg log_timestamp '{ ${'\''zarafa-spooler'\''}{log_timestamp} || '\''1'\''; }' replace /etc/e-smith/templates/etc/zarafa/spooler.cfg/spooler.cfg max_threads '{ ${'\''zarafa-spooler'\''}{max_threads} || '\''5'\''; }' replace /etc/e-smith/templates/etc/zarafa/spooler.cfg/spooler.cfg fax_domain '{ ${'\''zarafa-spooler'\''}{fax_domain} || '\''fax.local'\''; }' replace /etc/e-smith/templates/etc/zarafa/spooler.cfg/spooler.cfg fax_international '{ ${'\''zarafa-spooler'\''}{fax_international} || '\''00'\''; }' replace /etc/e-smith/templates/etc/zarafa/spooler.cfg/spooler.cfg always_send_delegates '{ ${'\''zarafa-spooler'\''}{always_send_delegates} || '\''no'\''; }' replace /etc/e-smith/templates/etc/zarafa/spooler.cfg/spooler.cfg allow_redirect_spoofing '{ ${'\''zarafa-spooler'\''}{allow_redirect_spoofing} || '\''yes'\''; }' replace /etc/e-smith/templates/etc/zarafa/spooler.cfg/spooler.cfg copy_delegate_mails '{ ${'\''zarafa-spooler'\''}{copy_delegate_mails} || '\''yes'\''; }' replace /etc/e-smith/templates/etc/zarafa/spooler.cfg/spooler.cfg allow_delegate_meeting_request '{ ${'\''zarafa-spooler'\''}{allow_delegate_meeting_request} || '\''yes'\''; }' replace /etc/e-smith/templates/etc/zarafa/spooler.cfg/spooler.cfg allow_send_to_everyone '{ ${'\''zarafa-spooler'\''}{allow_send_to_everyone} || '\''yes'\''; }' replace /etc/e-smith/templates/etc/zarafa/spooler.cfg/spooler.cfg always_send_tnef '{ ${'\''zarafa-spooler'\''}{always_send_tnef} || '\''no'\''; }' replace /etc/e-smith/templates/etc/zarafa/spooler.cfg/spooler.cfg always_send_utf8 '{ ${'\''zarafa-spooler'\''}{always_send_utf8} || '\''no'\''; }' replace /etc/e-smith/templates/etc/zarafa/spooler.cfg/spooler.cfg charset_upgrade '{ ${'\''zarafa-spooler'\''}{charset_upgrade} || '\''windows-1252'\''; }' replace /etc/e-smith/templates/etc/zarafa/spooler.cfg/spooler.cfg expand_groups '{ ${'\''zarafa-spooler'\''}{expand_groups} || '\''no'\''; }' replace /etc/e-smith/templates/etc/zarafa/spooler.cfg/spooler.cfg archive_on_send '{ ${'\''zarafa-spooler'\''}{archive_on_send} || '\''no'\''; }' # #--- monitor config --- # echo echo "Creating zarafa-monitor-configuration-template ..." echo "The monitor program sends quota warning mails to users who are over quota." echo mkdir -p /etc/e-smith/templates/etc/zarafa/monitor.cfg cat /usr/share/doc/zarafa-monitor/example-config/monitor.cfg | sed -e 's/\r$//g' > /etc/e-smith/templates/etc/zarafa/monitor.cfg/monitor.cfg replace /etc/e-smith/templates/etc/zarafa/monitor.cfg/monitor.cfg log_method '{ ${'\''zarafa-monitor'\''}{log_method} || '\''file'\''; }' replace /etc/e-smith/templates/etc/zarafa/monitor.cfg/monitor.cfg log_level '{ ${'\''zarafa-monitor'\''}{log_level} || '\''2'\''; }' replace /etc/e-smith/templates/etc/zarafa/monitor.cfg/monitor.cfg log_timestamp '{ ${'\''zarafa-monitor'\''}{log_timestamp} || '\''1'\''; }' replace /etc/e-smith/templates/etc/zarafa/monitor.cfg/monitor.cfg quota_check_interval '{ ${'\''zarafa-monitor'\''}{quota_check_interval} || '\''15'\''; }' replace /etc/e-smith/templates/etc/zarafa/monitor.cfg/monitor.cfg mailquota_resend_interval '{ ${'\''zarafa-monitor'\''}{mailquota_resend_interval} || '\''1'\''; }' # #--- gateway config --- # echo echo "Creating zarafa-gateway-configuration-template ..." echo mkdir -p /etc/e-smith/templates/etc/zarafa/gateway.cfg cat /usr/share/doc/zarafa-gateway/example-config/gateway.cfg | sed -e 's/\r$//g' > /etc/e-smith/templates/etc/zarafa/gateway.cfg/gateway.cfg replace /etc/e-smith/templates/etc/zarafa/gateway.cfg/gateway.cfg server_socket 'http://localhost:{${'\''zarafa-server'\''}{TCPPort}||'\''236'\'';}/zarafa' replace /etc/e-smith/templates/etc/zarafa/gateway.cfg/gateway.cfg pop3_enable '{ if (${'\''zarafa-pop3'\''}{status} eq '\''enabled'\'') {'\''yes'\''} else {'\''no'\''}; }' replace /etc/e-smith/templates/etc/zarafa/gateway.cfg/gateway.cfg pop3_port '{ ${'\''zarafa-pop3'\''}{TCPPort} || '\''8110'\''; }' replace /etc/e-smith/templates/etc/zarafa/gateway.cfg/gateway.cfg pop3s_enable '{ if (${'\''zarafa-pop3s'\''}{status} eq '\''enabled'\'') {'\''yes'\''} else {'\''no'\''}; }' replace /etc/e-smith/templates/etc/zarafa/gateway.cfg/gateway.cfg pop3s_port '{ ${'\''zarafa-pop3s'\''}{TCPPort} || '\''8995'\''; }' replace /etc/e-smith/templates/etc/zarafa/gateway.cfg/gateway.cfg imap_enable '{ if (${'\''zarafa-imap'\''}{status} eq '\''enabled'\'') {'\''yes'\''} else {'\''no'\''}; }' replace /etc/e-smith/templates/etc/zarafa/gateway.cfg/gateway.cfg imap_port '{ ${'\''zarafa-imap'\''}{TCPPort} || '\''8143'\''; }' replace /etc/e-smith/templates/etc/zarafa/gateway.cfg/gateway.cfg imaps_enable '{ if (${'\''zarafa-imaps'\''}{status} eq '\''enabled'\'') {'\''yes'\''} else {'\''no'\''}; }' replace /etc/e-smith/templates/etc/zarafa/gateway.cfg/gateway.cfg imaps_port '{ ${'\''zarafa-imaps'\''}{TCPPort} || '\''8993'\''; }' replace /etc/e-smith/templates/etc/zarafa/gateway.cfg/gateway.cfg imap_only_mailfolders '{ ${'\''zarafa-imap'\''}{imap_only_mailfolders} || '\''yes'\''; }' replace /etc/e-smith/templates/etc/zarafa/gateway.cfg/gateway.cfg imap_public_folders '{ ${'\''zarafa-imap'\''}{imap_public_folders} || '\''yes'\''; }' replace /etc/e-smith/templates/etc/zarafa/gateway.cfg/gateway.cfg imap_capability_idle '{ ${'\''zarafa-imap'\''}{imap_capability_idle} || '\''yes'\''; }' replace /etc/e-smith/templates/etc/zarafa/gateway.cfg/gateway.cfg imap_max_messagesize '{ ${'\''zarafa-imap'\''}{imap_max_messagesize} || '\''134217728'\''; }' replace /etc/e-smith/templates/etc/zarafa/gateway.cfg/gateway.cfg imap_generate_utf8 '{ ${'\''zarafa-imap'\''}{imap_generate_utf8} || '\''no'\''; }' replace /etc/e-smith/templates/etc/zarafa/gateway.cfg/gateway.cfg imap_expunge_on_delete '{ ${'\''zarafa-imap'\''}{imap_expunge_on_delete} || '\''no'\''; }' replace /etc/e-smith/templates/etc/zarafa/gateway.cfg/gateway.cfg imap_store_rfc822 '{ ${'\''zarafa-imap'\''}{imap_store_rfc822} || '\''yes'\''; }' replace /etc/e-smith/templates/etc/zarafa/gateway.cfg/gateway.cfg ssl_private_key_file '/home/e-smith/ssl.key/{$SystemName}.{$DomainName}.key' replace /etc/e-smith/templates/etc/zarafa/gateway.cfg/gateway.cfg ssl_certificate_file '/home/e-smith/ssl.crt/{$SystemName}.{$DomainName}.crt' replace /etc/e-smith/templates/etc/zarafa/gateway.cfg/gateway.cfg ssl_verify_client '{ ${'\''zarafa-gateway'\''}{ssl_verify_client} || '\''no'\''; }' replace /etc/e-smith/templates/etc/zarafa/gateway.cfg/gateway.cfg process_model '{ ${'\''zarafa-gateway'\''}{process_model} || '\''fork'\''; }' replace /etc/e-smith/templates/etc/zarafa/gateway.cfg/gateway.cfg log_method '{ ${'\''zarafa-gateway'\''}{log_method} || '\''file'\''; }' replace /etc/e-smith/templates/etc/zarafa/gateway.cfg/gateway.cfg log_level '{ ${'\''zarafa-gateway'\''}{log_level} || '\''2'\''; }' replace /etc/e-smith/templates/etc/zarafa/gateway.cfg/gateway.cfg log_timestamp '{ ${'\''zarafa-gateway'\''}{log_timestamp} || '\''1'\''; }' replace /etc/e-smith/templates/etc/zarafa/gateway.cfg/gateway.cfg ssl_enable_v2 '{ ${'\''zarafa-gateway'\''}{ssl_enable_v2} || '\''no'\''; }' # #--- ical config --- # echo echo "Creating zarafa-ical-configuration-template ..." echo mkdir -p /etc/e-smith/templates/etc/zarafa/ical.cfg cat /usr/share/doc/zarafa-ical/example-config/ical.cfg | sed -e 's/\r$//g' > /etc/e-smith/templates/etc/zarafa/ical.cfg/ical.cfg replace /etc/e-smith/templates/etc/zarafa/ical.cfg/ical.cfg ical_enable '{ if (${'\''zarafa-ical'\''}{status} eq '\''enabled'\'') {'\''yes'\''} else {'\''no'\''}; }' replace /etc/e-smith/templates/etc/zarafa/ical.cfg/ical.cfg ical_port '{ ${'\''zarafa-ical'\''}{TCPPort} || '\''8088'\''; }' replace /etc/e-smith/templates/etc/zarafa/ical.cfg/ical.cfg icals_enable '{ if (${'\''zarafa-icals'\''}{status} eq '\''enabled'\'') {'\''yes'\''} else {'\''no'\''}; }' replace /etc/e-smith/templates/etc/zarafa/ical.cfg/ical.cfg icals_port '{ ${'\''zarafa-icals'\''}{TCPPort} || '\''8089'\''; }' replace /etc/e-smith/templates/etc/zarafa/ical.cfg/ical.cfg server_socket 'http://localhost:{${'\''zarafa-server'\''}{TCPPort}||'\''236'\'';}/zarafa' replace /etc/e-smith/templates/etc/zarafa/ical.cfg/ical.cfg process_model '{ ${'\''zarafa-ical'\''}{process_model} || '\''fork'\''; }' replace /etc/e-smith/templates/etc/zarafa/ical.cfg/ical.cfg log_method '{ ${'\''zarafa-ical'\''}{log_method} || '\''file'\''; }' replace /etc/e-smith/templates/etc/zarafa/ical.cfg/ical.cfg log_level '{ ${'\''zarafa-ical'\''}{log_level} || '\''2'\''; }' replace /etc/e-smith/templates/etc/zarafa/ical.cfg/ical.cfg log_timestamp '{ ${'\''zarafa-ical'\''}{log_timestamp} || '\''1'\''; }' replace /etc/e-smith/templates/etc/zarafa/ical.cfg/ical.cfg ssl_private_key_file '/home/e-smith/ssl.key/{$SystemName}.{$DomainName}.key' replace /etc/e-smith/templates/etc/zarafa/ical.cfg/ical.cfg ssl_certificate_file '/home/e-smith/ssl.crt/{$SystemName}.{$DomainName}.crt' replace /etc/e-smith/templates/etc/zarafa/ical.cfg/ical.cfg ssl_verify_client '{ ${'\''zarafa-ical'\''}{ssl_verify_client} || '\''no'\''; }' replace /etc/e-smith/templates/etc/zarafa/ical.cfg/ical.cfg server_timezone '{$TimeZone}' replace /etc/e-smith/templates/etc/zarafa/ical.cfg/ical.cfg default_charset '{ ${'\''zarafa-ical'\''}{default_charset} || '\''utf-8'\''; }' replace /etc/e-smith/templates/etc/zarafa/ical.cfg/ical.cfg enable_ical_get '{ ${'\''zarafa-ical'\''}{enable_ical_get} || '\''yes'\''; }' replace /etc/e-smith/templates/etc/zarafa/ical.cfg/ical.cfg ssl_enable_v2 '{ ${'\''zarafa-ical'\''}{ssl_enable_v2} || '\''no'\''; }' # #--- indexer config --- # echo echo "Creating zarafa-indexer-configuration-template ..." echo mkdir -p /etc/e-smith/templates/etc/zarafa/indexer.cfg cat /usr/share/doc/zarafa-indexer/example-config/indexer.cfg | sed -e 's/\r$//g' > /etc/e-smith/templates/etc/zarafa/indexer.cfg/indexer.cfg replace /etc/e-smith/templates/etc/zarafa/indexer.cfg/indexer.cfg cleanup_lockfiles '{ ${'\''zarafa-indexer'\''}{cleanup_lockfiles} || '\''no'\''; }' replace /etc/e-smith/templates/etc/zarafa/indexer.cfg/indexer.cfg limit_results '{ ${'\''zarafa-indexer'\''}{limit_results} || '\''0'\''; }' replace /etc/e-smith/templates/etc/zarafa/indexer.cfg/indexer.cfg log_method '{ ${'\''zarafa-indexer'\''}{log_method} || '\''file'\''; }' replace /etc/e-smith/templates/etc/zarafa/indexer.cfg/indexer.cfg log_level '{ ${'\''zarafa-indexer'\''}{log_level} || '\''2'\''; }' replace /etc/e-smith/templates/etc/zarafa/indexer.cfg/indexer.cfg log_timestamp '{ ${'\''zarafa-indexer'\''}{log_timestamp} || '\''1'\''; }' replace /etc/e-smith/templates/etc/zarafa/indexer.cfg/indexer.cfg index_interval '{ ${'\''zarafa-indexer'\''}{index_interval} || '\''5'\''; }' replace /etc/e-smith/templates/etc/zarafa/indexer.cfg/indexer.cfg index_threads '{ ${'\''zarafa-indexer'\''}{index_threads} || '\''1'\''; }' replace /etc/e-smith/templates/etc/zarafa/indexer.cfg/indexer.cfg index_max_field_length '{ ${'\''zarafa-indexer'\''}{index_max_field_length} || '\''10000'\''; }' replace /etc/e-smith/templates/etc/zarafa/indexer.cfg/indexer.cfg index_merge_factor '{ ${'\''zarafa-indexer'\''}{index_merge_factor} || '\''10'\''; }' replace /etc/e-smith/templates/etc/zarafa/indexer.cfg/indexer.cfg index_max_buffered_docs '{ ${'\''zarafa-indexer'\''}{index_max_buffered_docs} || '\''10'\''; }' replace /etc/e-smith/templates/etc/zarafa/indexer.cfg/indexer.cfg index_min_merge_docs '{ ${'\''zarafa-indexer'\''}{index_min_merge_docs} || '\''10'\''; }' replace /etc/e-smith/templates/etc/zarafa/indexer.cfg/indexer.cfg index_max_merge_docs '{ ${'\''zarafa-indexer'\''}{index_max_merge_docs} || '\''2147483647'\''; }' replace /etc/e-smith/templates/etc/zarafa/indexer.cfg/indexer.cfg index_term_interval '{ ${'\''zarafa-indexer'\''}{index_term_interval} || '\''128'\''; }' replace /etc/e-smith/templates/etc/zarafa/indexer.cfg/indexer.cfg index_cache_timeout '{ ${'\''zarafa-indexer'\''}{index_cache_timeout} || '\''0'\''; }' replace /etc/e-smith/templates/etc/zarafa/indexer.cfg/indexer.cfg index_attachments '{ ${'\''zarafa-indexer'\''}{index_attachments} || '\''no'\''; }' replace /etc/e-smith/templates/etc/zarafa/indexer.cfg/indexer.cfg index_attachment_max_size '{ ${'\''zarafa-indexer'\''}{index_attachment_max_size} || '\''5120'\''; }' replace /etc/e-smith/templates/etc/zarafa/indexer.cfg/indexer.cfg index_attachment_parser_max_memory '{ ${'\''zarafa-indexer'\''}{index_attachment_parser_max_memory} || '\''0'\''; }' replace /etc/e-smith/templates/etc/zarafa/indexer.cfg/indexer.cfg index_attachment_parser_max_cputime '{ ${'\''zarafa-indexer'\''}{index_attachment_parser_max_cputime} || '\''0'\''; }' /bin/echo "webaccess config" /bin/chown -R www:www /var/lib/zarafa-webaccess/tmp /bin/chown -R www:www /var/lib/zarafa-webapp/tmp FILE=/etc/httpd/conf.d/zarafa-webaccess.conf; if [ -a $FILE ]; then /bin/rm -f $FILE; fi FILE=/etc/httpd/conf.d/zarafa-webapp.conf; if [ -a $FILE ]; then /bin/rm -f $FILE; fi /bin/echo "Expanding Zarafa-templates" /etc/e-smith/events/actions/zarafa-expand-templates /bin/echo "Expanding http.conf-template" /sbin/e-smith/expand-template /etc/httpd/conf/httpd.conf /bin/echo "Restarting httpd" /usr/bin/sv restart /service/httpd-e-smith /bin/echo "Starting Zarafa-services" /etc/e-smith/events/actions/zarafa-services start /bin/echo "Setting permissions on files" FILE=/var/log/zarafa/dagent.log; if [ -a $FILE ]; then /bin/chmod 666 $FILE; fi
To save :
CTRL + X yes <ENTER>
Execute zarafa-install (see installscript above for 7.0.x !!!!)
/bin/chmod 554 /etc/e-smith/events/actions/zarafa-install
cd /etc/e-smith/events/actions/
./zarafa-install
signal-event post-upgrade; signal-event reboot
UPGRADING of Zarafa
VERSION 7.0.x (7.0.x -> 7.0.x)
Download via the Zarafawebsite the package for ZCP corresponding with the newest php53-mapi.rpm (cf. version above)
Go (cd /...) to the installdirectory (ex. : /root/InstallZarafa) :
cd /to the installdirectory
ex.:
cd /root/InstallZarafa
wget http://download.zarafa.com/community/final/7.0/[version]/zcp-[version]-rhel-5-[cpu-arch]-free.tar.gz
Unpack the corresponding package for ZCP :
tar -zxvf zcp-*
Remove the devel packages
Go (cd ./zcp-...) to the created subdirectory (zcp-...) :
cd ./zcp- ... rm -f *-dev*.rpm
Move the windows-directory to an installshare in your network
Download the latest webapp.rpm too in the same subdirectory :
wget http://download.zarafa.com/community/final/WebApp/[version]/rhel/[zarafa-webapp-version.noarch.rpm]
!!! Remove the existing php53-mapi.rpm first : !!!
rpm -e php53-mapi --nodeps
Install all rpm's in the unpacked package of ZCP and the webapp.rpm too :
yum localinstall *.rpm
All packages have dependencies that cannot be resolved if you install only part of the rpm's.
If you only want to upgrade one package (ex. the Webapp) :
cd /to the new Webapp.rpm rpm -Uvh --force zarafa-webapp-[version].noarch
Remove the default php-mapi.rpm
We have to remove the installation of the default php-mapi (because it's not built for php 5.3).
rpm -e php-mapi --nodeps
Install the NEW php53-mapi.rpm
-If you downloaded the rpm :
rpm -Uvh --force php53-mapi
-If you did set the EPEL-repository :
yum install php53-mapi-[same ZCP-verion as above] --enablerepo=epel --enablerepo=epel-testing
Execute zarafa-update (see upgradescript above for 7.0.x !!!!)
cd /etc/e-smith/events/actions/
./zarafa-update
OPTIONAL : Search in the Zarafa-releasenotes for new keys/options in the config-files and adjust the values of these new keys/options in the zarafa-config-templates :
http://doc.zarafa.com/7.0/Release_Notes/en-US/html-single/
signal-event post-upgrade; signal-event reboot
INSTALLATION of Z-push (1.5.x or 2.0.x)
- You can test if z-push is installed and functioning by going to http://[your-server-ip]/Microsoft-Server-ActiveSync You should be presented with a login request, and if you cancel, you will see Z-Push info. If you see both, z-push is working just fine.
- If you experience (all of a sudden) z-push issues with your smartphone, please increase the PHP memory limit as descibed here
- Please note that z-push version 2.1 works with the below 2.0.x instructions, but you need to install php-posix
yum install php-posix
VERSION 1.5.x
Download the Z-push-package (version 1.5 !!)
wget http://zarafa-deutschland.de/z-push-download/final/1.5/[z-push-latest version]
Save in an installdirectory, ex. : root/InstallZPush
Unpack the package for Z-push :
Go (cd /...) to the installdirectory (if you haven't done this yet) :
cd /to the installdirectory
And unpack :
tar -zxvf z-push-[latest version] -C /var/www/html
Change the name of the created z-push-directory in /var/www/html to 'z-push'
INSTALLSCRIPT
nano -w /etc/e-smith/events/actions/z-push-install
#!/bin/sh # #--- /etc/e-smith/templates/etc/httpd/conf/httpd.conf/VirtualHosts/29ZarafaAliases --- # echo echo "Creating /etc/e-smith/templates/etc/httpd/conf/httpd.conf/VirtualHosts/29ZarafaAliases ..." echo cat <<HERE1 > /etc/e-smith/templates/etc/httpd/conf/httpd.conf/VirtualHosts/29ZarafaAliases { # vim: ft=perl: \$haveSSL = (exists \${modSSL}{status} and \${modSSL}{status} eq "enabled") ? 'yes' : 'no'; my \$zwebmailStatus = \$zarafa{'status'} || "disabled"; my \$zwebmailAccessType = \$zarafa{'access'} || "SSL"; my \$dirs; \$dirs{zarafa} = '/usr/share/zarafa-webaccess'; \$dirs{webaccess} = '/usr/share/zarafa-webaccess'; \$dirs{webmail} = '/usr/share/zarafa-webaccess'; if (\$imp{'status'} eq 'enabled') {\$dirs{webmail} = ''}; \$dirs{webapp} = '/usr/share/zarafa-webapp'; \$dirs{'Microsoft-Server-ActiveSync'} = '/var/www/html/z-push/index.php'; return " # Zarafa is disabled in this VirtualHost\n" unless \$zwebmailStatus eq 'enabled'; foreach \$place ('zarafa','webmail','webaccess','webapp','Microsoft-Server-ActiveSync') { if ((\$port eq "80") && (\$haveSSL eq 'yes') && (\$zwebmailAccessType eq 'SSL')) { \$OUT .= " RewriteRule ^/\$place(/.*|\\$) https://%{HTTP_HOST}/\$place\\\$1 [L,R]\n"; } else { if ((\$dirs{\$place}) ne '') {\$OUT .= " Alias /\$place \$dirs{\$place}\n"}; } } } HERE1 # #--- /etc/e-smith/templates/etc/httpd/conf/httpd.conf/86ZarafaAlias --- # echo echo "Creating /etc/e-smith/templates/etc/httpd/conf/httpd.conf/86ZarafaAlias ..." echo cat <<HERE2 > /etc/e-smith/templates/etc/httpd/conf/httpd.conf/86ZarafaAlias { my \$zstatus = \$zarafa{'status'}; if (defined \$zstatus && \$zstatus eq 'enabled') { \$OUT .= qq( #-------------------------------------------------------------------- # Zarafa specific configuration files. #-------------------------------------------------------------------- Alias /zarafa /usr/share/zarafa-webaccess/ <Directory /usr/share/zarafa-webaccess/> Options -Indexes AllowOverride All order allow,deny allow from all AddType application/x-httpd-php .php php_flag magic_quotes_gpc off php_flag track_vars on </Directory> Alias /webapp /usr/share/zarafa-webapp/ <Directory /usr/share/zarafa-webapp/> Options -Indexes AllowOverride All order allow,deny allow from all AddType application/x-httpd-php .php php_flag magic_quotes_gpc off php_flag track_vars on </Directory> <Directory /var/www/html/> Options -Indexes AllowOverride All order allow,deny allow from all AddType application/x-httpd-php .php .php3 php_flag magic_quotes_gpc off </Directory> <Directory /var/www/html/z-push/> Options -Indexes AllowOverride All order allow,deny allow from all AddType application/x-httpd-php .php php_flag magic_quotes_gpc off php_flag register_globals off php_flag magic_quotes_runtime off php_flag short_open_tag on </Directory> ); } else { \$OUT .= "# Zarafa Webmail is not configured as it is disabled in the config db"; } } HERE2 ###################################### # Configuration of Z-push ###################################### /bin/echo /bin/echo "Configuration of Z-push" /bin/echo FILE=/var/www/html/z-push/state; if [ -d $FILE ]; then /bin/chown -R www:www $FILE; fi FILE=/var/www/html/z-push/state; if [ -d $FILE ]; then /bin/chmod 755 $FILE; fi /bin/echo /bin/echo "Need to debug Z-push ?" /bin/echo "Values: yes or no." /bin/echo read DEBUGZPUSH if [ "$DEBUGZPUSH" == yes ]; then FILE=/var/www/html/z-push/state; if [ -d $FILE ]; then /bin/touch /var/www/html/z-push/debug.txt; fi FILE=/var/www/html/z-push/state; if [ -d $FILE ]; then /bin/chown www:www /var/www/html/z-push/debug.txt; fi FILE=/var/www/html/z-push/state; if [ -d $FILE ]; then /bin/chmod 755 /var/www/html/z-push/debug.txt; fi else rm -f /var/www/html/z-push/debug.txt fi /bin/echo /bin/echo "Expanding http.conf-template" /bin/echo /sbin/e-smith/expand-template /etc/httpd/conf/httpd.conf /bin/echo /bin/echo "Restarting httpd" /bin/echo /usr/bin/sv restart /service/httpd-e-smith
To save :
CTRL + X yes <ENTER>
UPGRADESCRIPT
nano -w /etc/e-smith/events/actions/z-push-update
#!/bin/sh ###################################### # Configuration of Z-push ###################################### /bin/echo /bin/echo "Configuration of Z-push" /bin/echo FILE=/var/www/html/z-push/state; if [ -d $FILE ]; then /bin/chown -R www:www $FILE; fi FILE=/var/www/html/z-push/state; if [ -d $FILE ]; then /bin/chmod 755 $FILE; fi /bin/echo /bin/echo "Need to debug Z-push ?" /bin/echo "Values: yes or no." /bin/echo read DEBUGZPUSH if [ "$DEBUGZPUSH" == yes ]; then FILE=/var/www/html/z-push/state; if [ -d $FILE ]; then /bin/touch /var/www/html/z-push/debug.txt; fi FILE=/var/www/html/z-push/state; if [ -d $FILE ]; then /bin/chown www:www /var/www/html/z-push/debug.txt; fi FILE=/var/www/html/z-push/state; if [ -d $FILE ]; then /bin/chmod 755 /var/www/html/z-push/debug.txt; fi else rm -f /var/www/html/z-push/debug.txt fi /bin/echo /bin/echo "Expanding http.conf-template" /bin/echo /sbin/e-smith/expand-template /etc/httpd/conf/httpd.conf /bin/echo /bin/echo "Restarting httpd" /bin/echo /usr/bin/sv restart /service/httpd-e-smith
To save :
CTRL + X yes <ENTER>
See further : "Any version"
VERSION 2.0.x
Download the Z-push-package (version 2.0 !!)
wget http://zarafa-deutschland.de/z-push-download/final/2.0/[z-push-latest version]
Save in an installdirectory, ex. : root/InstallZPush
Unpack the package for Z-push :
Go (cd /...) to the installdirectory (if you haven't done this yet) :
cd /to the installdirectory
And unpack :
tar -zxvf z-push-[latest version] -C /usr/share
INSTALLSCRIPT
nano -w /etc/e-smith/events/actions/z-push-install
#!/bin/sh # #--- /etc/e-smith/templates/etc/httpd/conf/httpd.conf/VirtualHosts/29ZarafaAliases --- # echo echo "Creating /etc/e-smith/templates/etc/httpd/conf/httpd.conf/VirtualHosts/29ZarafaAliases ..." echo cat <<HERE1 > /etc/e-smith/templates/etc/httpd/conf/httpd.conf/VirtualHosts/29ZarafaAliases { # vim: ft=perl: \$haveSSL = (exists \${modSSL}{status} and \${modSSL}{status} eq "enabled") ? 'yes' : 'no'; my \$zwebmailStatus = \$zarafa{'status'} || "disabled"; my \$zwebmailAccessType = \$zarafa{'access'} || "SSL"; my \$dirs; \$dirs{zarafa} = '/usr/share/zarafa-webaccess'; \$dirs{webaccess} = '/usr/share/zarafa-webaccess'; \$dirs{webmail} = '/usr/share/zarafa-webaccess'; if (\$imp{'status'} eq 'enabled') {\$dirs{webmail} = ''}; \$dirs{webapp} = '/usr/share/zarafa-webapp'; \$dirs{'Microsoft-Server-ActiveSync'} = '/usr/share/z-push/index.php'; return " # Zarafa is disabled in this VirtualHost\n" unless \$zwebmailStatus eq 'enabled'; foreach \$place ('zarafa','webmail','webaccess','webapp','Microsoft-Server-ActiveSync') { if ((\$port eq "80") && (\$haveSSL eq 'yes') && (\$zwebmailAccessType eq 'SSL')) { \$OUT .= " RewriteRule ^/\$place(/.*|\\$) https://%{HTTP_HOST}/\$place\\\$1 [L,R]\n"; } else { if ((\$dirs{\$place}) ne '') {\$OUT .= " Alias /\$place \$dirs{\$place}\n"}; } } } HERE1 # #--- /etc/e-smith/templates/etc/httpd/conf/httpd.conf/86ZarafaAlias --- # echo echo "Creating /etc/e-smith/templates/etc/httpd/conf/httpd.conf/86ZarafaAlias ..." echo cat <<HERE2 > /etc/e-smith/templates/etc/httpd/conf/httpd.conf/86ZarafaAlias { my \$zstatus = \$zarafa{'status'}; if (defined \$zstatus && \$zstatus eq 'enabled') { \$OUT .= qq( #-------------------------------------------------------------------- # Zarafa specific configuration files. #-------------------------------------------------------------------- Alias /zarafa /usr/share/zarafa-webaccess/ <Directory /usr/share/zarafa-webaccess/> Options -Indexes AllowOverride All order allow,deny allow from all AddType application/x-httpd-php .php php_flag magic_quotes_gpc off php_flag track_vars on </Directory> Alias /webapp /usr/share/zarafa-webapp/ <Directory /usr/share/zarafa-webapp/> Options -Indexes AllowOverride All order allow,deny allow from all AddType application/x-httpd-php .php php_flag magic_quotes_gpc off php_flag track_vars on </Directory> <Directory /usr/share/z-push/> Options -Indexes AllowOverride All order allow,deny allow from all AddType application/x-httpd-php .php .php3 php_flag magic_quotes_gpc off php_flag register_globals off php_flag magic_quotes_runtime off php_flag short_open_tag on </Directory> ); } else { \$OUT .= "# Zarafa Webmail is not configured as it is disabled in the config db"; } } HERE2 ###################################### # Configuration of Z-push ###################################### /bin/echo /bin/echo "Configuration of Z-push" /bin/echo FILE=/var/lib/z-push; if [ -d $FILE ]; then /bin/echo -e "** $FILE already exists, skipping **\n"; else /bin/mkdir $FILE; fi FILE=/var/lib/z-push; if [ -d $FILE ]; then /bin/chown -R www:www $FILE; fi FILE=/var/lib/z-push; if [ -d $FILE ]; then /bin/chmod 755 $FILE; fi FILE=/var/log/z-push; if [ -d $FILE ]; then /bin/echo -e "** $FILE already exists, skipping **\n"; else /bin/mkdir $FILE; fi FILE=/var/log/z-push; if [ -d $FILE ]; then /bin/chown -R www:www $FILE; fi FILE=/var/log/z-push; if [ -d $FILE ]; then /bin/chmod 755 $FILE; fi /bin/echo /bin/echo "Expanding http.conf-template" /bin/echo /sbin/e-smith/expand-template /etc/httpd/conf/httpd.conf /bin/echo /bin/echo "Restarting httpd" /bin/echo /usr/bin/sv restart /service/httpd-e-smith
To save :
CTRL + X yes <ENTER>
UPGRADESCRIPT
nano -w /etc/e-smith/events/actions/z-push-update
#!/bin/sh ###################################### # Configuration of Z-push ###################################### /bin/echo /bin/echo "Configuration of Z-push" /bin/echo FILE=/var/lib/z-push; if [ -d $FILE ]; then /bin/echo -e "** $FILE already exists, skipping **\n"; else /bin/mkdir $FILE; fi FILE=/var/lib/z-push; if [ -d $FILE ]; then /bin/chown -R www:www $FILE; fi FILE=/var/lib/z-push; if [ -d $FILE ]; then /bin/chmod 755 $FILE; fi FILE=/var/log/z-push; if [ -d $FILE ]; then /bin/echo -e "** $FILE already exists, skipping **\n"; else /bin/mkdir $FILE; fi FILE=/var/log/z-push; if [ -d $FILE ]; then /bin/chown -R www:www $FILE; fi FILE=/var/log/z-push; if [ -d $FILE ]; then /bin/chmod 755 $FILE; fi /bin/echo /bin/echo "Expanding http.conf-template" /bin/echo /sbin/e-smith/expand-template /etc/httpd/conf/httpd.conf /bin/echo /bin/echo "Restarting httpd" /bin/echo /usr/bin/sv restart /service/httpd-e-smith
To save :
CTRL + X yes <ENTER>
See further : "Any version"
ANY VERSION (1.5.x or 2.0.x)
Edit the config.php file in the Z-Push directory to fit your needs.
ex. Set your timezone in the config.php file.
Execute z-push-install (see script above !!!!)
/bin/chmod 554 /etc/e-smith/events/actions/z-push-install
cd /etc/e-smith/events/actions/
./z-push-install
UPGRADING of Z-push
VERSION 1.5 (1.5.x -> 1.5.x)
Download the Z-push-package (version 1.5 !!)
wget http://zarafa-deutschland.de/z-push-download/final/1.5/[z-push-latest version]
Save in an installdirectory, ex. : root/InstallZPush
Unpack the corresponding package for ZCP and the package for Z-push :
Go (cd /...) to the installdirectory (if you haven't done this yet) :
cd /to the installdirectory
And unpack :
tar -zxvf z-push-[latest version] -C /var/www/html
Change the name of the created z-push-directory in /var/www/html to 'z-push'
See further : "Any version"
VERSION 2.0 (2.0.x -> 2.0.x)
Download the Z-push-package (version 2.0 !!)
wget http://zarafa-deutschland.de/z-push-download/final/2.0/[z-push-latest version]
Save in an installdirectory, ex. : root/InstallZPush
Unpack the package for Z-push :
Go (cd /...) to the installdirectory (if you haven't done this yet) :
cd /to the installdirectory
And unpack :
tar -zxvf z-push-[latest version] -C /usr/share
See further : "Any version"
VERSION 1.5.x -> 2.0.x
The easiest way to upgrade is to follow the steps for a new installation of version 2.0. The states of Z-Push 1.X are not compatible and there is no upgrade path, but as this version implements a fully automatic resynchronisation of devices it should not affect the users and work without the user interaction
ANY VERSION
Edit the config.php file in the Z-Push directory to fit your needs.
ex. Set your timezone in the config.php file.
Execute z-push-update (see script above !!!!)
/bin/chmod 554 /etc/e-smith/events/actions/z-push-update
cd /etc/e-smith/events/actions/
./z-push-update
Managing Zarafa-users/companies :
With Unix-plugin
Zarafa-users are created with the creation of a SME-user, but you have to enable delivery to zarafa for these SME-users.
Enable maildelivery to zarafa for a user :
db accounts setprop [USERNAME] zarafa enabled /etc/e-smith/events/actions/qmail-update-user
Disable maildelivery to zarafa for a user :
db accounts setprop [USERNAME] zarafa disabled /etc/e-smith/events/actions/qmail-update-user
Enable mail delivery to zarafa for ALL users :
config setprop zarafa-server GlobalForward enabled /etc/e-smith/events/actions/qmail-update-user
Other options for managing users
zarafa-admin --help
With DB-plugin
Create company (in a Multi-company-environment)
/etc/e-smith/events/actions/zarafa-create-company
Create user
/etc/e-smith/events/actions/zarafa-create-user
Disable maildelivery to zarafa for a user :
db accounts setprop [USERNAME] zarafa disabled /etc/e-smith/events/actions/qmail-update-user
Other options for managing users/companies
zarafa-admin --help
Usefull commands :
Change db-entries (Change default-values in zarafa-config-files)
config setprop [zarafa-service] [key] [value] /etc/e-smith/events/actions/zarafa-expand-templates /etc/e-smith/events/actions/zarafa-services restart
Change loglevel to 5 (= max. (default = 2))
config setprop zarafa-server log_level 5 config setprop zarafa-dagent log_level 5 config setprop zarafa-spooler log_level 5 config setprop zarafa-monitor log_level 5 config setprop zarafa-ical log_level 5 config setprop zarafa-gateway log_level 5 config setprop zarafa-licensed log_level 5 config setprop zarafa-indexer log_level 5 /etc/e-smith/events/actions/zarafa-expand-templates /etc/e-smith/events/actions/zarafa-services restart
Change index-interval to 60 minutes (= max. (default = 5))
config setprop zarafa-indexer index_interval 60 /etc/e-smith/events/actions/zarafa-expand-templates /etc/e-smith/events/actions/zarafa-services restart
Setting system-email-address
config setprop zarafa-server system_email_address [admin@mydomain.com] /etc/e-smith/events/actions/zarafa-expand-templates /etc/e-smith/events/actions/zarafa-services restart
Debugging Z-push 1.5.x (not for 2.0.x)
Disable (debugging is enabled by default in this howto)
rm -f /var/www/html/z-push/debug.txt
Enable after disabling (debugging is enabled by default in this howto)
/bin/touch /var/www/html/z-push/debug.txt /bin/chown www:www /var/www/html/z-push/debug.txt /bin/chmod 755 /var/www/html/z-push/debug.txt
View userdetails
zarafa-admin --details [user]
Setting/Changing send-emailadres for a user
zarafa-admin -u [user] -e [send-emailadres]
Setting/Changing fullname for a user
zarafa-admin -u [user] -f "[full name]"
Quota-settings
zarafa-admin -u [user] --qo y --qw 1600 --qs 1800 --qh 2000
Give a user administrator-privileges
zarafa-admin -u [user] -a y
Usefull plugins :
Password-plugin for webaccess (ONLY FOR DB-PLUGIN)
After installation : in /var/lib/zarafa-webaccess/plugins/passwd/dialogs/pwdchange.php, change this line :
$passwd_cmd = "/usr/local/bin/zarafa-passwd -u %s -o %s -p %s";
to this :
$passwd_cmd = "/usr/bin/zarafa-passwd -u '%s' -o '%s' -p '%s'";
Password-change by users from outsite your network for webaccess/webapp (IF USING THE UNIX PLUGIN)
Install Usermanager
UserManager : Install smeserver-userpanel and smeserver-userpanels
nano /etc/e-smith/templates-custom/etc/httpd/conf/httpd.conf/VirtualHosts/28UserManagerProxyPass
{ # vim: ft=perl: $haveSSL = (exists ${modSSL}{status} and ${modSSL}{status} eq "enabled") ? 'yes' : 'no'; $plainTextAccess = ${'httpd-admin'}{PermitPlainTextAccess} || 'no'; $OUT = ''; foreach $place ('user-manager','server-common','user') { if (($port eq "80") && ($haveSSL eq 'yes') && ($plainTextAccess ne 'yes')) { $OUT .= " RewriteRule ^/$place(/.*|\$) https://%{HTTP_HOST}/$place\$1 [L,R,NC]\n"; } else { $OUT .= " ProxyPass /$place http://127.0.0.1:${'httpd-admin'}{TCPPort}/$place\n"; $OUT .= " ProxyPassReverse /$place http://127.0.0.1:${'httpd-admin'}{TCPPort}/$place\n"; } $OUT .= " <Location /$place>\n"; $OUT .= " order deny,allow\n"; $OUT .= " deny from all\n"; $OUT .= " allow from all\n"; $OUT .= " </Location>\n"; } }
To save :
CTRL + X yes <ENTER>
Via the Server-Manager : Delegate the userpanel-password to external users
Now these external users can change from outsite your network there sme-password : https://www.yourdomain.tld/user
WebApp - OwnCloud attachment plug-in
WebApp - Dropbox attachment plug-in
Webmail :
Access with a browser,
https://server/zarafa https://server/webaccess https://server/webmail (with Horde disabled '/server-manager > Email > Webmail Access') https://server/webapp (NEW VERSION OF WEBACCESS)
Connecting Outlook :
On your Windowsclients, execute zarafaclient.msi (Moved earlier to an installshare in your network - cf. supra)
Configure Outlook (point it to your zarafaserver with the credentials of a created Zarafa-user (if DB-plugin : create Zarafa-users first))
Connecting other clients :
IMAP/POP3
The default ports for Zarafa are 8000 + default values
- so imap = 8143, imaps = 8993
- so pop3 = 8110, pop3s = 8995
Zarafa-documentation :
Zarafa Administrator Manual
Zarafa Administrator Manual
Release notes (changes in the Zarafa-configfiles)
Zarafa User Manual
Help for the zarafa-admin-tool
zarafa-admin --help
man-pages
services-man-pages
man zarafa-server man zarafa-monitor man zarafa-dagent man zarafa-gateway man zarafa-spooler man zarafa-ical man zarafa-indexer man zarafa-licensed
configuation-man-pages
man zarafa-server.cfg man zarafa-monitor.cfg man zarafa-dagent.cfg man zarafa-gateway.cfg man zarafa-spooler.cfg man zarafa-ical.cfg man zarafa-indexer.cfg man zarafa-licensed.cfg man zarafa-unix.cfg