diff --git a/docker/kolab/Dockerfile b/docker/kolab/Dockerfile index a7ba4fea..411e16ac 100644 --- a/docker/kolab/Dockerfile +++ b/docker/kolab/Dockerfile @@ -1,83 +1,81 @@ FROM quay.io/centos/centos:stream8 LABEL maintainer="contact@apheleia-it.ch" LABEL dist=centos8 LABEL tier=${TIER} ENV SYSTEMD_PAGER='' ENV DISTRO=centos8 ENV LANG=en_US.utf8 ENV LC_ALL=en_US.utf8 # Add EPEL. RUN dnf config-manager --set-enabled powertools && \ dnf -y install \ epel-release epel-next-release && \ dnf -y module enable 389-directory-server:stable/default && \ dnf -y module enable mariadb:10.3 && \ dnf -y install iputils vim-enhanced bind-utils && \ dnf clean all RUN rpm --import /etc/pki/rpm-gpg/RPM-GPG-KEY-EPEL-8 # Install kolab RUN rpm --import https://mirror.apheleia-it.ch/repos/Kolab:/16/key.asc && \ rpm -Uvh https://mirror.apheleia-it.ch/repos/Kolab:/16/kolab-16-for-el8stream.rpm RUN sed -i -e '/^ssl/d' /etc/yum.repos.d/kolab*.repo && \ dnf config-manager --enable kolab-16-testing &&\ - dnf -y --setopt tsflags= install kolab kolab-autoconf dnsmasq patch &&\ + dnf -y --setopt tsflags= install kolab patch &&\ dnf clean all COPY kolab-init.service /etc/systemd/system/kolab-init.service COPY kolab-setenv.service /etc/systemd/system/kolab-setenv.service COPY utils /root/utils RUN rm -rf /etc/systemd/system/multi-user.target.wants/{avahi-daemon,sshd}.* && \ ln -s /etc/systemd/system/kolab-init.service \ /etc/systemd/system/multi-user.target.wants/kolab-init.service && \ ln -s /etc/systemd/system/kolab-setenv.service \ /etc/systemd/system/multi-user.target.wants/kolab-setenv.service RUN sed -i -r -e 's/^SELINUX=.*$/SELINUX=permissive/g' /etc/selinux/config 2>/dev/null || : -RUN sed -i -r -e 's/^Listen 80$/Listen 9080/g' /etc/httpd/conf/httpd.conf -#RUN sed -i -r -e 's/^Listen 443$/Listen 9443/g' /etc/httpd/conf/httpd.conf COPY kolab-init.sh /usr/local/sbin/ RUN chmod 750 /usr/local/sbin/kolab-init.sh COPY kolab.conf /etc/kolab/kolab.conf COPY cyrus.conf /etc/cyrus.conf COPY imapd.conf /etc/imapd.conf COPY imapd.annotations.conf /etc/imapd.annotations.conf COPY guam.conf /etc/guam/sys.config ARG DB_KOLAB_DATABASE ARG DB_KOLAB_USERNAME ARG DB_KOLAB_PASSWORD RUN sed -i -r \ -e "s|DB_KOLAB_DATABASE|$DB_KOLAB_DATABASE|g" \ -e "s|DB_KOLAB_USERNAME|$DB_KOLAB_USERNAME|g" \ -e "s|DB_KOLAB_PASSWORD|$DB_KOLAB_PASSWORD|g" \ /etc/kolab/kolab.conf RUN mkdir -p /imapdata/{spool,lib} && \ rm -rf /var/spool/imap && ln -s /imapdata/spool /var/spool/imap && \ mv /var/lib/imap /var/lib/imap-bak && ln -s /imapdata/lib /var/lib/imap && \ chmod -R 777 /imapdata && \ chown cyrus:mail /var/spool/imap /var/lib/imap RUN mkdir -p /ldapdata/{config,ssca,run} /var/run/dirsrv && \ ln -s /ldapdata/config /etc/dirsrv/slapd-kolab && \ ln -s /ldapdata/ssca /etc/dirsrv/ssca && \ ln -s /ldapdata/run /var/run/dirsrv && \ chmod -R 777 /ldapdata /etc/dirsrv VOLUME [ "/sys/fs/cgroup" ] VOLUME [ "/imapdata" ] VOLUME [ "/ldapdata" ] WORKDIR /root/ CMD ["/lib/systemd/systemd"] -EXPOSE 21/tcp 22/tcp 25/tcp 53/tcp 53/udp 80/tcp 110/tcp 389/tcp 443/tcp 995/tcp 5353/udp 8880/tcp 8443/tcp 8447/tcp 10143/tcp 10465/tcp 10587/tcp 11143/tcp 11993/tcp +EXPOSE 21/tcp 22/tcp 25/tcp 53/tcp 53/udp 110/tcp 389/tcp 443/tcp 995/tcp 10143/tcp 10465/tcp 10587/tcp 11143/tcp 11993/tcp diff --git a/docker/kolab/utils/03-setup-kolab.sh b/docker/kolab/utils/03-setup-kolab.sh index f4ab4f0d..86deec4c 100755 --- a/docker/kolab/utils/03-setup-kolab.sh +++ b/docker/kolab/utils/03-setup-kolab.sh @@ -1,97 +1,59 @@ #!/bin/bash . ./settings.sh echo ${CMD} | tee -a /root/setup-kolab.log echo -n "Wait for MariaDB container: " | tee -a /root/setup-kolab.log while ! mysqladmin -u root ping > /dev/null 2>&1 ; do echo -n '.' sleep 3 done | tee -a /root/setup-kolab.log echo "OK!" | tee -a /root/setup-kolab.log echo -n "Wait for DS389 container: " | tee -a /root/setup-kolab.log while ! ldapsearch -h ${LDAP_HOST} -D "${LDAP_ADMIN_BIND_DN}" -w "${LDAP_ADMIN_BIND_PW}" -b "" -s base > /dev/null 2>&1 ; do echo -n '.' sleep 3 done | tee -a /root/setup-kolab.log echo "OK!" | tee -a /root/setup-kolab.log cat > /tmp/kolab-setup-my.cnf << EOF [client] host=${DB_HOST} user=root password=${DB_ROOT_PASSWORD} EOF CMD="$(which setup-kolab) mta \ --default" ${CMD} 2>&1 | tee -a /root/setup-kolab.log - -CMD="$(which setup-kolab) php \ - --default \ - --timezone=Europe/Zurich" -${CMD} 2>&1 | tee -a /root/setup-kolab.log - # setup imap if [ -f "/var/lib/imap/db" ]; then echo "IMAP directory exists, nothing to do" else echo "Initializing IMAP volume" cp -ar /var/lib/imap-bak/* /var/lib/imap/ systemctl start cyrus-imapd fi # Setup httpform auth against kolab sed -i "s/MECH=.*/MECH=httpform/" /etc/sysconfig/saslauthd cat > /etc/saslauthd.conf << EOF httpform_host: services.${APP_DOMAIN} httpform_port: 8000 httpform_uri: /api/webhooks/cyrus-sasl httpform_data: %u %r %p EOF systemctl restart saslauthd #Setup guam systemctl start guam systemctl enable guam - - -#TODO just add /etc/kolab-freebusy/ -# CMD="$(which setup-kolab) freebusy \ -# --default" -# ${CMD} 2>&1 | tee -a /root/setup-kolab.log - -cat > /tmp/kolab-setup-my.cnf << EOF -[client] -host=${DB_HOST} -user=root -password=${DB_ROOT_PASSWORD} -EOF - -# Configure roundcube and setup db -# The db setup will just fail if the db already exists, -# but no harm done -CMD="$(which setup-kolab) roundcube \ - --default" -${CMD} 2>&1 | tee -a /root/setup-kolab.log - -cat > /tmp/kolab-setup-my.cnf << EOF -[client] -host=${DB_HOST} -user=root -password=${DB_ROOT_PASSWORD} -EOF - -CMD="$(which setup-kolab) syncroton \ - --default" -${CMD} 2>&1 | tee -a /root/setup-kolab.log - diff --git a/docker/kolab/utils/04-reset-mysql-kolab-password.sh b/docker/kolab/utils/04-reset-mysql-kolab-password.sh index 7fd942f0..51317c93 100755 --- a/docker/kolab/utils/04-reset-mysql-kolab-password.sh +++ b/docker/kolab/utils/04-reset-mysql-kolab-password.sh @@ -1,22 +1,10 @@ #!/bin/bash mysql -h ${DB_HOST:-127.0.0.1} -u root --password=${DB_ROOT_PASSWORD} \ -e "SET PASSWORD FOR '${DB_HKCCP_USERNAME}'@'%' = PASSWORD('${DB_HKCCP_PASSWORD}');" mysql -h ${DB_HOST:-127.0.0.1} -u root --password=${DB_ROOT_PASSWORD} \ -e "SET PASSWORD FOR '${DB_KOLAB_USERNAME}'@'localhost' = PASSWORD('${DB_KOLAB_PASSWORD}');" mysql -h ${DB_HOST:-127.0.0.1} -u root --password=${DB_ROOT_PASSWORD} \ -e "CREATE USER '${DB_KOLAB_USERNAME}'@'%' IDENTIFIED BY '${DB_KOLAB_PASSWORD}'; FLUSH PRIVILEGES;" - -mysql -h ${DB_HOST:-127.0.0.1} -u root --password=${DB_ROOT_PASSWORD} \ - -e "SET PASSWORD FOR '${DB_RC_USERNAME}'@'localhost' = PASSWORD('${DB_RC_PASSWORD}');" - -mysql -h ${DB_HOST:-127.0.0.1} -u root --password=${DB_ROOT_PASSWORD} \ - -e "CREATE USER '${DB_RC_USERNAME}'@'%' IDENTIFIED BY '${DB_RC_PASSWORD}'; FLUSH PRIVILEGES;" - -mysql -h ${DB_HOST:-127.0.0.1} -u root --password=${DB_ROOT_PASSWORD} \ - -e "SET PASSWORD FOR '${DB_RC_USERNAME}'@'%' = PASSWORD('${DB_RC_PASSWORD}');" - -mysql -h ${DB_HOST:-127.0.0.1} -u root --password=${DB_ROOT_PASSWORD} \ - -e "GRANT ALL PRIVILEGES ON roundcube.* TO '${DB_RC_USERNAME}'@'%' IDENTIFIED BY '${DB_RC_PASSWORD}';" diff --git a/docker/kolab/utils/05-adjust-configs.sh b/docker/kolab/utils/05-adjust-configs.sh index a841b8ed..929870c2 100755 --- a/docker/kolab/utils/05-adjust-configs.sh +++ b/docker/kolab/utils/05-adjust-configs.sh @@ -1,167 +1,104 @@ #!/bin/bash -# Replace localhost -sed -i -e "/hosts/s/localhost/${LDAP_HOST}/" /etc/iRony/dav.inc.php -sed -i -e "/host/s/localhost/${LDAP_HOST}/g" \ - -e "/fbsource/s/localhost/${IMAP_HOST}/g" /etc/kolab-freebusy/config.ini #sed -i -e "s/server_host.*/server_host = ${LDAP_HOST}/g" /etc/postfix/ldap/* -sed -i -e "/password_ldap_host/s/localhost/${LDAP_HOST}/" /etc/roundcubemail/password.inc.php -sed -i -e "/hosts/s/localhost/${LDAP_HOST}/" /etc/roundcubemail/kolab_auth.inc.php -sed -i -e "s#.*db_dsnw.*# \$config['db_dsnw'] = 'mysql://${DB_RC_USERNAME}:${DB_RC_PASSWORD}@${DB_HOST}/roundcube';#" \ - -e "/default_host/s|= .*$|= 'ssl://${IMAP_HOST}';|" \ - -e "/default_port/s|= .*$|= ${IMAP_PORT};|" \ - -e "/smtp_server/s|= .*$|= 'tls://${MAIL_HOST}';|" \ - -e "/smtp_port/s/= .*$/= ${MAIL_PORT};/" \ - -e "/hosts/s/localhost/${LDAP_HOST}/" /etc/roundcubemail/config.inc.php -sed -i -e "/hosts/s/localhost/${LDAP_HOST}/" /etc/roundcubemail/calendar.inc.php - - . ./settings.sh #Adjust basedn sed -i -r \ -e "s/(\s+)base => '.*',$/\1base => '${hosted_domain_rootdn}',/g" \ -e "/\\\$mydomain = / a\ \$myhostname = '${HOSTNAME:-kolab}.${DOMAIN:-mgmt.com}';" \ -e "s/^base_dn = .*$/base_dn = ${hosted_domain_rootdn}/g" \ -e "s/^search_base = .*$/search_base = ${hosted_domain_rootdn}/g" \ -e "s/(\s+)'base_dn'(\s+)=> '.*',/\1'base_dn'\2=> '${hosted_domain_rootdn}',/g" \ -e "s/(\s+)'search_base_dn'(\s+)=> '.*',/\1'search_base_dn'\2=> '${hosted_domain_rootdn}',/g" \ -e "s/(\s+)'user_specific'(\s+)=> false,/\1'user_specific'\2=> true,/g" \ /etc/amavisd/amavisd.conf \ - /etc/kolab-freebusy/config.ini \ - /etc/postfix/ldap/*.cf \ - /etc/roundcubemail/config.inc.php \ - /etc/roundcubemail/calendar.inc.php \ - /etc/roundcubemail/kolab_auth.inc.php + /etc/postfix/ldap/*.cf sed -i -r \ -e "s/^search_base = .*$/search_base = ${domain_base_dn}/g" \ /etc/postfix/ldap/mydestination.cf #Disable amavisd postconf -e content_filter='smtp-wallace:[127.0.0.1]:10026' systemctl stop amavisd systemctl disable amavisd systemctl stop clamd@amavisd systemctl disable clamd@amavisd # Change port numbers cat ${SSL_CERTIFICATE} ${SSL_CERTIFICATE_FULLCHAIN} ${SSL_CERTIFICATE_KEY} > /etc/pki/cyrus-imapd/cyrus-imapd.bundle.pem chown cyrus:mail /etc/pki/cyrus-imapd/cyrus-imapd.bundle.pem cp /etc/pki/cyrus-imapd/cyrus-imapd.bundle.pem /etc/pki/tls/private/postfix.pem chown postfix:mail /etc/pki/tls/private/postfix.pem chmod 655 /etc/pki/tls/private/postfix.pem sed -i "s/smtpd_tls_key_file =.*/smtpd_tls_key_file = \/etc\/pki\/tls\/private\/postfix.pem/" /etc/postfix/main.cf sed -i "s/smtpd_tls_cert_file =.*/smtpd_tls_cert_file = \/etc\/pki\/tls\/private\/postfix.pem/" /etc/postfix/main.cf # Remove the submission block, by matching from submission until the next empty line sed -i -e '/submission inet/,/^$/d' /etc/postfix/master.cf # Insert a new submission block with a modified port cat >> /etc/postfix/master.cf << EOF 127.0.0.1:10587 inet n - n - - smtpd -o cleanup_service_name=cleanup_submission -o syslog_name=postfix/submission #-o smtpd_tls_security_level=encrypt -o smtpd_sasl_auth_enable=yes -o smtpd_sasl_authenticated_header=yes -o smtpd_client_restrictions=permit_sasl_authenticated,reject -o smtpd_data_restrictions=\$submission_data_restrictions -o smtpd_recipient_restrictions=\$submission_recipient_restrictions -o smtpd_sender_restrictions=\$submission_sender_restrictions 127.0.0.1:10465 inet n - n - - smtpd -o cleanup_service_name=cleanup_submission -o rewrite_service_name=rewrite_submission -o syslog_name=postfix/smtps -o mydestination= -o local_recipient_maps= -o relay_domains= -o relay_recipient_maps= #-o smtpd_tls_wrappermode=yes -o smtpd_sasl_auth_enable=yes -o smtpd_sasl_authenticated_header=yes -o smtpd_client_restrictions=permit_sasl_authenticated,reject -o smtpd_sender_restrictions=\$submission_sender_restrictions -o smtpd_recipient_restrictions=\$submission_recipient_restrictions -o smtpd_data_restrictions=\$submission_data_restrictions EOF -sed -i -r \ - -e "s/'vlv'(\s+)=> false,/'vlv'\1=> true,/g" \ - -e "s/'vlv_search'(\s+)=> false,/'vlv_search'\1=> true,/g" \ - -e "s/inetOrgPerson/inetorgperson/g" \ - -e "s/kolabInetOrgPerson/inetorgperson/g" \ - /etc/roundcubemail/*.inc.php - - # Adjust postfix # new: (inetdomainstatus:1.2.840.113556.1.4.803:=1) # active: (inetdomainstatus:1.2.840.113556.1.4.803:=2) # suspended: (inetdomainstatus:1.2.840.113556.1.4.803:=4) # deleted: (inetdomainstatus:1.2.840.113556.1.4.803:=8) # confirmed: (inetdomainstatus:1.2.840.113556.1.4.803:=16) # verified: (inetdomainstatus:1.2.840.113556.1.4.803:=32) # ready: (inetdomainstatus:1.2.840.113556.1.4.803:=64) sed -i -r \ -e 's/^query_filter.*$/query_filter = (\&(associatedDomain=%s)(inetdomainstatus:1.2.840.113556.1.4.803:=18)(!(inetdomainstatus:1.2.840.113556.1.4.803:=4)))/g' \ /etc/postfix/ldap/mydestination.cf # new: (inetuserstatus:1.2.840.113556.1.4.803:=1) # active: (inetuserstatus:1.2.840.113556.1.4.803:=2) # suspended: (inetuserstatus:1.2.840.113556.1.4.803:=4) # deleted: (inetuserstatus:1.2.840.113556.1.4.803:=8) # ldapready: (inetuserstatus:1.2.840.113556.1.4.803:=16) # imapready: (inetuserstatus:1.2.840.113556.1.4.803:=32) sed -i -r \ -e 's/^query_filter.*$/query_filter = (\&(|(mail=%s)(alias=%s))(|(objectclass=kolabinetorgperson)(|(objectclass=kolabgroupofuniquenames)(objectclass=kolabgroupofurls))(|(|(objectclass=groupofuniquenames)(objectclass=groupofurls))(objectclass=kolabsharedfolder))(objectclass=kolabsharedfolder))(!(inetuserstatus:1.2.840.113556.1.4.803:=4)))/g' \ /etc/postfix/ldap/local_recipient_maps.cf systemctl restart postfix - - - -sed -i -r -e "s|$config\['kolab_files_url'\] = .*$|$config['kolab_files_url'] = 'https://' \. \$_SERVER['HTTP_HOST'] . '/chwala/';|g" /etc/roundcubemail/kolab_files.inc.php -sed -i -r -e "/^.*kolab_files_url.*/a \$config['kolab_files_server_url'] = 'http://127.0.0.1:9080/chwala/';" /etc/roundcubemail/kolab_files.inc.php - -sed -i -r -e "s|$config\['kolab_invitation_calendars'\] = .*$|$config['kolab_invitation_calendars'] = true;|g" /etc/roundcubemail/calendar.inc.php - -sed -i -r -e "/^.*'contextmenu',$/a 'enigma'," /etc/roundcubemail/config.inc.php - -sed -i -r -e "s|$config\['enigma_passwordless'\] = .*$|$config['enigma_passwordless'] = true;|g" /etc/roundcubemail/enigma.inc.php -sed -i -r -e "s|$config\['enigma_multihost'\] = .*$|$config['enigma_multihost'] = true;|g" /etc/roundcubemail/enigma.inc.php - -echo "\$config['enigma_woat'] = true;" >> /etc/roundcubemail/enigma.inc.php - -# Run it over haproxy then nginx for 2fa. We need to use startls because otherwise the proxy protocol doesn't work. -sed -i -r -e "s|$config\['default_host'\] = .*$|$config['default_host'] = 'tls://haproxy';|g" /etc/roundcubemail/config.inc.php -sed -i -r -e "s|$config\['default_port'\] = .*$|$config['default_port'] = 145;|g" /etc/roundcubemail/config.inc.php - -# So we can just append -sed -i "s/?>//g" /etc/roundcubemail/config.inc.php - -# Enable the PROXY protocol -cat << EOF >> /etc/roundcubemail/config.inc.php - \$config['imap_conn_options'] = Array( - 'ssl' => Array( - 'verify_peer_name' => false, - 'verify_peer' => false, - 'allow_self_signed' => true - ), - 'proxy_protocol' => 2 - ); - \$config['proxy_whitelist'] = array('127.0.0.1', '172.18.0.7'); -EOF - -echo "?>" >> /etc/roundcubemail/config.inc.php diff --git a/docker/kolab/utils/09-enable-debugging.sh b/docker/kolab/utils/09-enable-debugging.sh index f5d50d41..1c71dac8 100755 --- a/docker/kolab/utils/09-enable-debugging.sh +++ b/docker/kolab/utils/09-enable-debugging.sh @@ -1,18 +1,16 @@ #!/bin/bash if ! grep -q "chatty" /etc/imapd.conf; then echo "chatty: 1" >> /etc/imapd.conf fi if ! grep -q "debug" /etc/imapd.conf; then echo "debug: 1" >> /etc/imapd.conf fi systemctl restart cyrus-imapd -sed -i -r -e "s/_debug'] = (.*);/_debug'] = true;/g" /etc/roundcubemail/config.inc.php - if ! grep -q "FLAGS=\"--fork -l debug -d 8\"" /etc/sysconfig/wallace; then echo "FLAGS=\"--fork -l debug -d 8\"" > /etc/sysconfig/wallace fi systemctl restart wallace diff --git a/docker/kolab/utils/100-update-roundcube.sh b/docker/kolab/utils/100-update-roundcube.sh deleted file mode 100755 index cc3c1be0..00000000 --- a/docker/kolab/utils/100-update-roundcube.sh +++ /dev/null @@ -1,18 +0,0 @@ -#!/bin/bash -# This is incomplete and clearly not how it's supposed to be done, -# but it will work for now. - -cp -Rf /src/roundcubemail/program /usr/share/roundcubemail/program - -pushd /src/roundcubemail-plugins-kolab/plugins -cp -f calendar/*.js /usr/share/roundcubemail/public_html/assets/plugins/calendar/ -find calendar/ -type f \( -name "*.php" -o -name "*.inc" \) ! -name config.inc.php -exec cp -v {} /usr/share/roundcubemail/plugins/{} \; - -find libcalendaring/ -type f \( -name "*.php" -o -name "*.inc" \) ! -name config.inc.php -exec cp -v {} /usr/share/roundcubemail/plugins/{} \; -cp -f libcalendaring/*.js /usr/share/roundcubemail/public_html/assets/plugins/libcalendaring/ - -find libkolab/ -type f \( -name "*.php" -o -name "*.inc" \) ! -name config.inc.php -exec cp -v {} /usr/share/roundcubemail/plugins/{} \; -cp -f libkolab/*.js /usr/share/roundcubemail/public_html/assets/plugins/libkolab/ -popd - -systemctl reload httpd diff --git a/docker/kolab/utils/102-enable-xdebug.sh b/docker/kolab/utils/102-enable-xdebug.sh deleted file mode 100755 index bb381028..00000000 --- a/docker/kolab/utils/102-enable-xdebug.sh +++ /dev/null @@ -1,24 +0,0 @@ -#!/bin/bash - -yum -y install php-xdebug - -cat << EOF > /etc/php.d/xdebug.ini -zend_extension=/usr/lib64/php/modules/xdebug.so - -# Profiler config for xdebug3 -#xdebug.mode=profile -#xdebug.output_dir="/tmp/" -#xdebug.start_with_request=trigger - -# Profiler config for xdebug2 -#xdebug.remote_log="/tmp/xdebug.log" -xdebug.profiler_enable = 0 -# Enable using a XDEBUG_PROFILE GET/POST parameter -xdebug.profiler_enable_trigger = 1 -xdebug.profiler_output_dir = "/tmp/" -#xdebug.remote_enable=on -#xdebug.remote_port=9000 -#xdebug.remote_autostart=0 -#xdebug.remote_connect_back=on -#xdebug.idekey=editor-xdebug -EOF diff --git a/docker/kolab/utils/104-update-syncroton.sh b/docker/kolab/utils/104-update-syncroton.sh deleted file mode 100755 index 56cd3441..00000000 --- a/docker/kolab/utils/104-update-syncroton.sh +++ /dev/null @@ -1,8 +0,0 @@ -#!/bin/bash - -pushd /src/syncroton/ -cp -f lib/*.php /usr/share/kolab-syncroton/lib/ -cp -Rf lib/ext/Syncroton /usr/share/kolab-syncroton/lib/ext/Syncroton -popd - -systemctl reload httpd diff --git a/docker/kolab/utils/settings.sh b/docker/kolab/utils/settings.sh index 142d7aa6..1b7e5e0d 100755 --- a/docker/kolab/utils/settings.sh +++ b/docker/kolab/utils/settings.sh @@ -1,22 +1,20 @@ #!/bin/bash export rootdn=${LDAP_ADMIN_ROOT_DN:-"dc=mgmt,dc=com"} export domain=${DOMAIN:-"mgmt.com"} export domain_db=${DOMAIN_DB:-"mgmt_com"} export ldap_host=${LDAP_HOST} export ldap_binddn=${LDAP_ADMIN_BIND_DN} export ldap_bindpw=${LDAP_ADMIN_BIND_PW} export cyrus_admin=${IMAP_ADMIN_LOGIN} - -export imap_host=${IMAP_HOST} export cyrus_admin_pw=${IMAP_ADMIN_PASSWORD} export kolab_service_pw=${LDAP_SERVICE_BIND_PW} export hosted_kolab_service_pw=${LDAP_HOSTED_BIND_PW} export hosted_domain=${HOSTED_DOMAIN:-"hosted.com"} export hosted_domain_db=${HOSTED_DOMAIN_DB:-"hosted_com"} export hosted_domain_rootdn=${LDAP_HOSTED_ROOT_DN:-"dc=hosted,dc=com"} export domain_base_dn=${LDAP_DOMAIN_BASE_DN:-"ou=Domains,dc=mgmt,dc=com"}