Direkt zum Hauptinhalt

Migration Univention Corporate Server & Kopano nach Zamba AD & Mailcow

Nachdem viele kleinere Kunden nur den Domaincontroller benötigen, jedoch UCS + Kopano für den Betrieb nutzten, kann UCS bei vielen Kunden nun ersetzt werden.
Das Upgrade auf UCS 5.2 zeigt erneut daß sich der Aufwand eines Upgrades nicht mehr mit dem Nutzen eines Domaincontrollers rechnet.

Systemvoraussetzungen

  • Bestehender Univention Corporate Server im AD Modus
  • Kopano oder vergleichbare Groupware mit IMAP
  • Proxmox VE >8.x mit Linux Container mit installiertem GIT
Installation zweiter Domaincontroller

Installation auf Proxmox im z. B. /root Ordner

git clone -b dev https://github.com/bashclub/zamba-lxc-toolbox

cd zamba-lxc-toolbox

cp conf/zamba.conf.example conf/zamba.conf

In der zamba.conf folgende Parameter an das System anpassen

LXC_TEMPLATE_STORAGE="local" #LXC Template Store
LXC_ROOTFS_SIZE="32" #DCs Root Size
LXC_ROOTFS_STORAGE="rpool-data" #or local-zfs #DCs Root Store
LXC_SHAREFS_SIZE="100" #DCs Root Backup Size
LXC_SHAREFS_STORAGE="rpool-data" #or local-zfs #DCs Backup Store
LXC_HOSTNAME="zmb-ad"
LXC_DOMAIN="windomain.local"
LXC_IP="10.0.0.254/24"
LXC_GW="10.0.0.1"
LXC_DNS="10.0.0.4" #your old UCS IP, If Windows Step Down to Level 2008R2 first!
LXC_BRIDGE="vmbr0"
LXC_PWD='Admin123'
ZMB_REALM="WINDOMAIN.LOCAL"
ZMB_DOMAIN="WINDOMAIN"
ZMB_ADMIN_USER="administrator"
ZMB_ADMIN_PASS='Admin123'

Die installation des LXCs als zweiten DC starten wir mit

bash install.sh -i 100 #für Container 100

Im Menü wählen wir Zamba-AD-Member

Nach der Installation können wir in den Container gelangen mit

pct enter 100

su -

wbinfo -u 

wbinfo -g

Dort Finden wir im Idealfall alle User und Gruppen, was den Erfolg bestätigt

Folgende Anpassung in der smb.conf macht das Leben leichter

vi /etc/samba/smb.conf

[golbal]

ldap server require strong auth = no

dns forwarder = 1.1.1.1 1.0.0.1

It was DNS

An dieser Stelle erhalten alle Computer mit festen IPs den neuen DNS-Server, der alte DNS Server vom UCS kann jetzt raus.

Im DHCP Server ersetzen wir ebenfalls den DNS Server mit dem neuen DC, der alte DNS Server vom UCS kann raus

Installation Mailcow

vi conf/zamba.conf.example conf/zamba.conf

Die Installation der Mailcow benötigt keine spezielle Anpassung im unteren Bereich außer dem LXC_HOSTNAME und den Netzwerkeinstellungen

bash install.sh -i 101 #für Container 101

Im Menü wählen wir Mailcow

Nach der Installation von Mailcow

pct enter 100

su -

cd /opt/mailcow-dockerized

./update.sh

Danach rufen wir das Mailcow Webinterface mit der Admin Seite auf

https://10.0.0.253/admin

Folgende Schritte sind unerlässlich

  • Admin Passwort ändern - System / Konfiguration / Administrator bearbeiten
  • Alle Domänen eintragen und Schwellwerte beachten! - E-Mail / Konfiguration / Domains
  • Benutzer in der AD anlegen, z. B. bind-mailcow - Windows Active Directory und Benutzer oder UMC
  • LDAP in Mailcow konfigurieren - System / Konfiguration / Zugang / Identity Provider
    • Identity Provider: LDAP
    Host: IP neue ZMB-AD Port: 389 (Active Directory) Benutze SSL: an Ignoriere SSL Fehler: an Base DN: CN=Users,DC=windomainDC=local Username Feld: mail
    Attribute Feld: mail Bind DN: CN=bind-mailcow,CN=Users,DC=windomain,DC=local
    Bind Passwort: wurde oben angelegt Attribute Mapping / Standardvorlage / Default

    Benutzer beim Login erstellen: an

    Vollsynchronisation: an

    Importiere Benutzer: an

    Sync / Import interval (min): 1 (für den Anfang)

    Erfolg Kontrollieren - Mailboxen Mailbox
    Mails Synchronisieren - E-Mail / Synchronisationen / Neuen Sync Job erstellen
      Host: IP Kopano Port 993 Benutzername: Windows Login name Elemente ausschließen (Regex) Inhalt entfernen, zu gefährlich Lösche Duplikate im Ziel (--delete2duplicates) nur so lange die Mails noch auf Kopano laufen, danach raus! Erfolg der Synchronisation im Dialog und dessen Logs kontrollieren Kalendereinträge der Benutzter exportieren
        http://kopano:8080/caldav/<user>/<f older-name>/ Calendar/task folder in user’s store. Make sure the calendar/task folder already exists. http://kopano:8080/caldav/<user>/<s ub-folder>/ Self created subcalendar in the user’s own store. Location through actual subfolders in Zarafa is irrelevant. http://kopano:8080/caldav/<other-us er>/<folder-name>/ Shared calendar/task folder of other user http://kopano:8080/caldav/public/<f oldername>/ Calendar/task folder in the public folder http://kopano:8080/caldav/<user>/ Default calendar of the current user. Although this works for most clients, this URL is not recommended. Die exportierten Dateien können im Mailcow Sogo Frontend oder Mailclient direkt importiert werden Export Kontakte - geht nur über alten Mailclient, da dein Carddav Server vorhanden Aliase finden und anlegen

          univention-ldapsearch -LLL | grep @ | grep mailAlternative

          Aliase eintragen - E-Mail -Aliasse / Alias hinzufügen Mailcow online stellen
            NAT Ports setzen, z. B. auf OPNsense als Alias
              p_mailcow 80 443 465 993 4190 h_mailcow 10.0.0.253 Port Forwarding
                any > WAN IP > p_mailcow > h_mailcow Mailcow neu starten

                pct enter 100

                su -

                cd /opt/mailcow-dockerized

                docker compose down

                # Optional bei PMG Einsatz greylisting aus
                # vi /opt/mailcow-dockerized/data/conf/rspamd/local.d/greylist.conf
                # enabled = false;

                docker compose up -d

                  Kontrolle ob Letsencrypt HTTP Challenge funktioniert

                    docker compose logs --tail=200 -f acme-mailcow

                    Alternativ eigenes Zertifikat unter 

                    /opt/mailcow-dockerized/data/assets/ssl

                      cert.pem key.pem DNS Werte beim Provider anpassen oder kontrollieren - E-Mail / Domains / DNS
                      Abschluss der Arbeiten
                        Synchronisationen nach Erfolg deaktivieren Alten Univention Corporate Server abschalten Takeover Active Directory
                          pct enter 100
                          su -
                          samba-tool fsmo transfer --role=all -Uadministrator
                          samba-tool domain demote --remove-other-dead-server=UCS
                          rm /etc/cron.d/sysvol-sync
                          Bereinigung
                            RSAT DNS Konsole nach alten Fragmenten durchsuchen und entfernen Optional Metadata Cleanup Anpassung von bestehenden an UCS angebundenen LDAP Clients
                              Bind User pro Rolle anlegen, an keinen PC Anmelden wählen Dialog des LDAP Clients besuchen und folgende Werte ändern
                                IP = neuer ZMB-AD Port 7389 zu 389 UID zu sAMAccountname Bind DN uid zu cn ändern

                                Ensprechende Kurse finden Sie auf cloudistboese.de unter Mailcow und Domaincoltroller ablösen!