diff --git a/docker/kolab/kolab-init.sh b/docker/kolab/kolab-init.sh index 69f6d199..c1cd4566 100755 --- a/docker/kolab/kolab-init.sh +++ b/docker/kolab/kolab-init.sh @@ -1,37 +1,67 @@ #!/bin/bash cp /etc/hosts /etc/hosts.orig tac /etc/hosts.orig > /etc/hosts if [ ! -d "/etc/dirsrv/slapd-kolab/" ]; then + cat > /root/.my.cnf << EOF +[client] +host=127.0.0.1 +user=root +password=Welcome2KolabSystems +EOF + setup-kolab \ --default \ --fqdn=kolab.mgmt.com \ --timezone=Europe/Zurich \ + --mysqlhost=127.0.0.1 \ --mysqlserver=existing \ --mysqlrootpw=Welcome2KolabSystems \ --directory-manager-pwd=Welcome2KolabSystems 2>&1 | tee /root/setup-kolab.log + sqlpw=$(grep ^sql_uri /etc/kolab/kolab.conf | awk -F':' '{print $3}' | awk -F'@' '{print $1}') + + mysql -h 127.0.0.1 -u root --password=Welcome2KolabSystems \ + -e "SET PASSWORD FOR user 'kolab'@'localhost' = PASSWORD('${sqlpw}');" + + mysql -h 127.0.0.1 -u root --password=Welcome2KolabSystems \ + -e "UPDATE mysql.user SET Host = '127.0.0.1' WHERE Host = 'localhost';" + + mysql -h 127.0.0.1 -u root --password=Welcome2KolabSystems \ + -e "UPDATE mysql.db SET Host = '127.0.0.1' WHERE Host = 'localhost';" + mysql -h 127.0.0.1 -u root --password=Welcome2KolabSystems \ -e "GRANT ALL PRIVILEGES ON kolabdev.* TO 'kolabdev'@'127.0.0.1' IDENTIFIED BY 'kolab';" mysql -h 127.0.0.1 -u root --password=Welcome2KolabSystems \ -e "FLUSH PRIVILEGES;" mysql -h 127.0.0.1 -u root --password=Welcome2KolabSystems \ -e "CREATE DATABASE kolabdev;" + sed -i -e 's/localhost/127.0.0.1/g' \ + /etc/imapd.conf \ + /etc/iRony/dav.inc.php \ + /etc/kolab/kolab.conf \ + /etc/kolab-freebusy/config.ini \ + /etc/postfix/ldap/*.cf \ + /etc/roundcubemail/password.inc.php \ + /etc/roundcubemail/kolab_auth.inc.php \ + /etc/roundcubemail/config.inc.php \ + /etc/roundcubemail/calendar.inc.php + pushd /root/utils/ ./01-reset-kolab-service-password.sh ./02-reset-cyrus-admin-password.sh ./03-create-hosted-kolab-service.sh ./04-create-ou-domains.sh ./05-create-management-domain.sh ./06-create-hosted-domain.sh ./07-remove-cn-kolab-cn-config.sh ./08-remove-hosted-service-access-from-mgmt-domain.sh ./09-adjust-kolab-conf.sh popd fi touch /tmp/kolab-init.done diff --git a/docker/kolab/utils/01-reset-kolab-service-password.sh b/docker/kolab/utils/01-reset-kolab-service-password.sh index 14ac9047..d2766473 100755 --- a/docker/kolab/utils/01-reset-kolab-service-password.sh +++ b/docker/kolab/utils/01-reset-kolab-service-password.sh @@ -1,13 +1,17 @@ #!/bin/bash . ./settings.sh ( echo "dn: uid=kolab-service,ou=Special Users,${rootdn}" echo "changetype: modify" echo "replace: userpassword" echo "userpassword: ${ldap_bindpw}" echo "" ) | ldapmodify -x -h ${ldap_host} -D "${ldap_binddn}" -w "${ldap_bindpw}" -sed -i -r -e "s/^service_bind_pw = .*$/service_bind_pw = ${ldap_bindpw}/g" /etc/kolab/kolab.conf +oldpw=$(grep ^service_bind_pw /etc/kolab/kolab.conf | awk '{print $3}') + +sed -i -r \ + -e "s/${oldpw}/${ldap_bindpw}/g" \ + $(grep -rn ${oldpw} /etc/ | awk -F':' '{print $1}' | sort -u) diff --git a/src/.env.example b/src/.env.example index 1559bb38..6d2be185 100644 --- a/src/.env.example +++ b/src/.env.example @@ -1,72 +1,80 @@ APP_NAME=Kolab APP_ENV=local APP_KEY= APP_DEBUG=true APP_URL=http://127.0.0.1:8000 LOG_CHANNEL=stack DB_CONNECTION=mysql DB_DATABASE=kolabdev DB_HOST=127.0.0.1 DB_PASSWORD=kolab DB_PORT=3306 DB_USERNAME=kolabdev BROADCAST_DRIVER=log CACHE_DRIVER=file QUEUE_CONNECTION=redis SESSION_DRIVER=file SESSION_LIFETIME=120 +LDAP_ADMIN_BIND_DN="cn=Directory Manager" +LDAP_ADMIN_BIND_PW="Welcome2KolabSystems" +LDAP_ADMIN_ROOT_DN="dc=mgmt,dc=com" + +LDAP_HOSTED_BIND_DN="uid=hosted-kolab-service,ou=Special Users,dc=mgmt,dc=com" +LDAP_HOSTED_BIND_PW="Welcome2KolabSystems" +LDAP_HOSTED_ROOT_DN="dc=hosted,dc=com" + LDAP_BASE_DN="dc=mgmt,dc=com" LDAP_DOMAIN_BASE_DN="ou=Domains,dc=mgmt,dc=com" LDAP_HOSTS=127.0.0.1 LDAP_PORT=389 LDAP_SERVICE_BIND_DN="uid=kolab-service,ou=Special Users,dc=mgmt,dc=com" LDAP_SERVICE_BIND_PW="Welcome2KolabSystems" LDAP_USE_SSL=false LDAP_USE_TLS=false # Administrative LDAP_ADMIN_BIND_DN="cn=Directory Manager" LDAP_ADMIN_BIND_PW="Welcome2KolabSystems" LDAP_ADMIN_ROOT_DN="dc=mgmt,dc=com" # Hosted (public registration) LDAP_HOSTED_BIND_DN="uid=hosted-kolab-service,ou=Special Users,dc=mgmt,dc=com" LDAP_HOSTED_BIND_PW="Welcome2KolabSystems" LDAP_HOSTED_ROOT_DN="dc=hosted,dc=com" REDIS_HOST=127.0.0.1 REDIS_PASSWORD=null REDIS_PORT=6379 SWOOLE_HTTP_HOST=127.0.0.1 SWOOLE_HTTP_PORT=8000 MAIL_DRIVER=smtp MAIL_HOST=smtp.mailtrap.io MAIL_PORT=2525 MAIL_USERNAME=null MAIL_PASSWORD=null MAIL_ENCRYPTION=null MAIL_FROM_ADDRESS="noreply@example.com" Mail_FROM_NAME="Example.com" AWS_ACCESS_KEY_ID= AWS_SECRET_ACCESS_KEY= AWS_DEFAULT_REGION=us-east-1 AWS_BUCKET= PUSHER_APP_ID= PUSHER_APP_KEY= PUSHER_APP_SECRET= PUSHER_APP_CLUSTER=mt1 MIX_PUSHER_APP_KEY="${PUSHER_APP_KEY}" MIX_PUSHER_APP_CLUSTER="${PUSHER_APP_CLUSTER}" JWT_SECRET=