Zuletzt geändert von superadmin am 2025/07/18 16:45

Von Version 23.1
bearbeitet von Jonas Mayer
am 2022/05/23 13:47
Änderungskommentar: Es gibt keinen Kommentar für diese Version
Auf Version 1.1
bearbeitet von Michael Ecer
am 2022/05/03 09:26
Änderungskommentar: Es gibt keinen Kommentar für diese Version

Zusammenfassung

Details

Seiteneigenschaften
Dokument-Autor
... ... @@ -1,1 +1,1 @@
1 -xwiki:XWiki.jonasmayer@sbede
1 +xwiki:XWiki.michaelecer@sbede
Inhalt
... ... @@ -1,46 +1,32 @@
1 -{{toc start="5"/}}
1 +(% style="color:#000000" %)__**Voraussetzung**:__ Funktionale Kopano Einrichtung und Anbindung an die MariaDB103
2 2  
3 3  
4 -===== (% style="color:#000000" %)__Voraussetzung__(%%) =====
4 +(% style="color:#000000" %)Um Kopano im lokalen Betrieb einzurichten, muss man Anpassungen an Konfigurationsdateien im Puppeteer vornehmen. Dadurch erhalten Benutzer dann [[username@schule.local>>mailto:username@schule.local]] als lokale Mailadresse und können untereinander Nachrichten verschicken. 
5 +**__Wichtig:__** Im lokalen Betrieb können keine Nachrichten an externe Mailadressen versendet werden. Die Kommunikation ist strikt auf interne Adressen beschränkt.
5 5  
6 -Eine abgeschlossene [[Kopano-Grundinstallation>>doc:xwiki:Main.Kopano.Allgemein.Kopano Grundinstallation.WebHome]] mit Anbindung an die MariaDB103 als Datenbank muss gegeben sein.
7 7  
8 +(% style="color:#000000" %)Um die Anpassungen vorzunehmen wechselt man in den (% style="color:#3498db" %)Puppeteer (% style="color:#000000" %)und dort in das Verzeichnis(% style="color:#3498db" %) /etc/logodidact/hiera/custom.d/
8 8  
9 -----
10 -
11 -===== __Einleitung__ =====
12 -
13 -(% style="color:#000000" %)Um Kopano im lokalen Betrieb einzurichten, muss man Anpassungen an Konfigurationsdateien im Puppeteer vornehmen. Dadurch erhalten Benutzer dann [[username@schule.local>>mailto:username@schule.local]] als lokale Mailadresse und können untereinander Nachrichten verschicken.
14 -
15 -(% class="box successmessage" %)
10 +(% class="box" %)
16 16  (((
17 -(% style="font-size:12px" %)**__Hinweis:__**(%%)
18 -(% style="font-size:12px" %)Im lokalen Betrieb können keine Nachrichten an externe Mailadressen versendet werden. Die Kommunikation ist strikt auf interne Adressen beschränkt.
12 +(% style="color:#000000" %)##cd /etc/logodidact/hiera/custom.d/##
19 19  )))
20 20  
15 +(% style="color:#000000" %)Hier lassen sich diverse .yaml Konfigurationsdateien finden. Für die Einrichtung sind die Nachfolgenden von Relevanz:
21 21  
22 -(% style="color:#000000" %)Um die Anpassungen vorzunehmen, wechselt man in den (% style="color:#3498db" %)Puppeteer (% style="color:#000000" %)und dort in das Verzeichnis(% style="color:#3498db" %) /etc/logodidact/hiera/custom.d/
23 -
24 24  (% class="box" %)
25 25  (((
26 -(% style="color:#000000" %)##cd /etc/logodidact/hiera/custom.d/##
19 +(% style="color:#000000" %)##kopano-g1.yaml / rev-proxy.yaml / mariadb103.yaml / ldhost.yaml / samba4-ad.yaml##
27 27  )))
28 28  
29 -(% style="color:#000000" %)In diesem Verzeichnis liegen mehrere YAML-Konfigurationsdateien mit Bezug zu Kopano abgespeichert. Für die Einrichtung sind die nachfolgende Dateien von Relevanz:
30 30  
31 -* ##kopano-g1.yaml##
32 -* ##ldhost.yaml##
33 -* ##samba4-ad.yaml##
23 +(% style="color:#000000" %)Anpassungen in der (% style="color:#3498db" %)kopano-g1.yaml(% style="color:#000000" %):
24 + I.d.R. trägt man in der kopano-g1.yaml Die Maildomain und Zugangsdaten für das Catchall Postfach ein. Da wir jedoch keine externe Maildomain verwenden, bleiben diese Felder auf den Default-Wert bestehen.
34 34  
35 -----
36 -
37 -===== (% style="color:#000000" %)__Anpassungen in der __(% style="color:#3498db" %)__kopano-g1.yaml__(%%) =====
38 -
39 -(% style="color:#000000" %)Üblicherweise trägt man in der kopano-g1.yaml die gewünschte externe Maildomain sowie Zugangsdaten für das zugehörige Catchall-Postfach der Domain ein. Da wir jedoch keine externe Maildomain verwenden, bleiben diese Felder auf den Default-Wert bestehen.
40 -
41 41  (% class="box" %)
42 42  (((
43 -(% style="color:#000000" %)##ld_multidrop::ensure: absent
28 +(% style="color:#000000" %)##~-~--
29 +ld_multidrop::ensure: absent
44 44  \\ld_kopano::amavisd_new::configs:
45 45   '@local_domains_maps': "( new_RE( qr'[@.](.*~\~\.?%{::domain})$'i ) )"
46 46  \\ld_kopano::postfix::configs:
... ... @@ -49,7 +49,7 @@
49 49   sender_dependent_relayhost_maps:
50 50   value: 'pcre:%{dir_etc}/sender_dependent_relayhost_maps_internal.pcre'
51 51   smtp_sender_dependent_authentication:
52 - value: 'yes'
38 + value: 'yes'
53 53   smtp_sasl_auth_enable:
54 54   value: 'yes'
55 55   smtp_sasl_password_maps:
... ... @@ -64,26 +64,15 @@
64 64   value: 'yes'
65 65   virtual_mailbox_domains:
66 66   value: 'pcre:%{dir_etc}/virtual_mailbox_domains_internal.pcre'
67 - # Einschränken von vordefinierte Absendern auf Empfänger der lokalen Maildomäne##(%%)
68 -(% style="color:#000000" %)## smtpd_restriction_classes:
69 - value: 'local_only'
70 - local_only:
71 - value: 'check_recipient_access pcre:%{dir_etc}/local_domains.pcre, reject'
72 - smtpd_recipient_restrictions:
73 - value: 'check_sender_access pcre:%{dir_etc}/restricted_senders.pcre, permit_mynetworks,permit_sasl_authenticated, reject_invalid_hostname, reject_non_fqdn_hostname, reject_non_fqdn_recipient, reject_non_fqdn_sender, reject_unknown_recipient_domain, reject_unknown_sender_domain, reject_unauth_destination, reject_unauth_pipelining, reject'
74 -\\\\ld_kopano::postfix::hashes:
53 +\\ld_kopano::postfix::hashes:
75 75   '%{dir_etc}/smtp_generic_maps.hash':
76 76   content: |
77 77   %{header}
78 - # Umschreibung der Absender-Domain bei externem Mailversand
79 - # (Dummy-Eintrag, durch Empfängerfilterung nicht genutzt)
80 80   @%{::fqdn} @example.com
81 81   '%{dir_etc}/sender_dependent_relayhost_maps_external.hash':
82 82   content: |
83 83   %{header}
84 - # Bounce-Nachrichten mit Null-Sender via Relayhost versenden
85 85   <> smtp.example.com
86 - # Mails an externe Empfänger via Relayhost versenden
87 87   @example.com smtp.example.com
88 88   '%{dir_etc}/smtp_sasl_password_maps.hash':
89 89   content: |
... ... @@ -93,48 +93,93 @@
93 93   content: |
94 94   %{header}
95 95   example.com ACCEPT
96 - '%{dir_etc}/restricted_senders.pcre':
97 - content: |
98 - %{header}
99 - # Regular Expression Format: Liste an Absendern, deren Versand eingeschränkt wird
100 - /@(.+?\.)?%{::domain}$/ local_only
101 - '%{dir_etc}/local_domains.pcre':
102 - content: |
103 - %{header}
104 - # Regular Expression Format: Liste erlaubter Empfängerdomänen für die eingeschränkten Absender
105 - /@(.+?\.)?%{::domain}$/ OK
106 -\\\\ld_kopano::postfix::verbose: false
71 +\\ld_kopano::postfix::verbose: false
107 107  \\ld_kopano::ldap_type: openldap
108 -\\ld_kopano::db_server: mariadb103##
73 +\\ld_kopano::db_server: mariadb103
74 +\\# Optimierte Z-Push Webserver-Einstellungen für ActiveSync Devices
75 +apache::keepalive: 'On'
76 +apache::keepalive_timeout: '45'
77 +apache::max_keepalive_requests: '500'
78 +apache::mod::prefork::maxclients: '384'
79 +apache::mod::prefork::serverlimit: '384'
80 +nginx::keepalive_timeout: 3600
81 +nginx::keepalive_requests: 500##
109 109  )))
110 110  
111 111  
112 -----
85 +(% style="color:#000000" %)Anpassungen in der (% style="color:#3498db" %)rev-proxy.yaml(% style="color:#000000" %):
113 113  
114 -===== (% style="color:#000000" %)Anpassungen in der (% style="color:#3498db" %)ldhost.yaml(%%) =====
87 +(% class="box" %)
88 +(((
89 +(% style="color:#000000" %)##~-~--
90 +# Kopano: KeepAlive Timeout erhöhen für Z-Push / ActiveSync Devices
91 +nginx::keepalive_timeout: 3600
92 +nginx::keepalive_requests: 500##
93 +)))
115 115  
116 -(% style="color:#000000" %)Hier wird die Maildomain festgelegt, die Benutzer im Attribut mail unter (% style="color:#3498db" %)/var/lds/user/username/mail(% style="color:#000000" %) im (% style="color:#3498db" %)logosrv (% style="color:#000000" %)erhalten.
117 117  
96 +(% style="color:#000000" %)Anpassungen in der(%%) (% style="color:#3498db" %)mariadb103.yaml(%%):
97 +
118 118  (% class="box" %)
119 119  (((
120 -(% style="color:#000000; font-family:~"Open Sans~",~"Helvetica Neue~",Helvetica,Arial,sans-serif" %)### Kopano: Definition einer Maildomain (abweichend zu schule.local), die Benutzer & Gruppen im LDAP-Feld 'mail' erhalten sollen##(%%)
121 -(% style="color:#000000" %)###ld_legacy::mail::filters:
100 +(% style="color:#000000" %)##~-~--
101 +mysql::server::override_options:
102 + mysqldump:
103 + max_allowed_packet: '1G'
104 + mysqld:
105 + innodb_file_per_table: '1'
106 + bind-address: '0.0.0.0'
107 + skip-name-resolve: true
108 + innodb_large_prefix: '1'
109 + max_allowed_packet: '256M'
110 + max_connections: '151'
111 + query_cache_limit: '2M'
112 + query_cache_size: '64M'
113 + thread_stack: '512K'
114 + tmp_table_size: '64M'
115 + max_heap_table_size: '64M'
116 + sort_buffer_size: '2M'
117 + join_buffer_size: '2M'
118 + table_open_cache: '500'
119 + innodb_autoextend_increment: '1000'
120 + innodb_buffer_pool_size: '1G'
121 + # The following setting is based on the existing ibdata1 file, check current size and insert it here (rounded to MB)
122 + # - Hint: Initial value after first installation = 12M
123 + innodb_data_file_path: 'ibdata1:76M:autoextend'
124 + innodb_flush_log_at_trx_commit: '2'
125 + innodb_flush_method: 'O_DSYNC'
126 + innodb_lock_wait_timeout: '120'
127 + innodb_log_buffer_size: '8M'
128 + innodb_log_file_size: '1G'
129 + innodb_log_files_in_group: '3'
130 + innodb_read_io_threads: '4'
131 + innodb_write_io_threads: '4'
132 + wait_timeout: '28800'##
133 +)))
134 +
135 +
136 +(% style="color:#000000" %)Anpassungen in der (% style="color:#3498db" %)ldhost.yaml(% style="color:#000000" %): 
137 +Hier wird die Maildomain festgelegt, die Benutzer im Attribut mail unter (% style="color:#3498db" %)/var/lds/user/username/mail(% style="color:#000000" %) im (% style="color:#3498db" %)logosrv (% style="color:#000000" %)erhalten.
138 +
139 +(% class="box" %)
140 +(((
141 +(% style="color:#000000" %)##~-~--##(%%)##
142 +(% style="color:#000000; font-family:~"Open Sans~",~"Helvetica Neue~",Helvetica,Arial,sans-serif" %)# Kopano: Definition einer Maildomain (abweichend zu schule.local), die Benutzer & Gruppen im LDAP-Feld 'mail' erhalten sollen(%%)
143 +(% style="color:#000000" %)#ld_legacy::mail::filters:
122 122  # '(zarafaaccount=1)': 'example.com'
123 123  # Kopano: Definition von Gruppen, die eine Mailadresse erhalten sollen und dadurch anschreibbar werden
124 124  ld_legacy::mail::zarafa_groups:
125 - - elehrer##
147 + - elehrer(%%)##
126 126  )))
127 127  
128 128  
129 -----
151 +(% style="color:#000000" %)Nun fehlen noch die Anpassungen in der (% style="color:#3498db" %)samba4-ad.yaml(% style="color:#000000" %):
152 +Hier wird dem admin die administrativen Rechte zugeteilt. Falls noch andere Benutzer mit administrativen Rechten innerhalb von Kopano vergeben werden sollen, können diese ergänzt werden.
130 130  
131 -===== (% style="color:#000000" %)Anpassungen in der (% style="color:#3498db" %)samba4-ad.yaml(%%) =====
132 -
133 -(% style="color:#000000" %)Hier kann dem admin die administrativen Rechte zugeteilt. Falls noch andere Benutzer mit administrativen Rechten innerhalb von Kopano ausgestattet werden sollen, können diese ergänzt werden.
134 -
135 135  (% class="box" %)
136 136  (((
137 -(% style="color:#000000" %)### Kopano: Definition von Benutzern, die administrative Rechte erhalten sollen
156 +(% style="color:#000000" %)##~-~--
157 +# Kopano: Definition von Benutzern, die administrative Rechte erhalten sollen
138 138  # (Einstellung wird nicht benutzt, sofern Kopano an das OpenLDAP angebunden ist, was dem Standard entspricht)
139 139  ld_samba4::ad::kopano::admins:
140 140   - 'admin'##
... ... @@ -141,45 +141,17 @@
141 141  )))
142 142  
143 143  
144 -(% class="box infomessage" %)
145 -(((
146 -__**Tipp:**__
147 -Um Benutzerkonten bei Verwendung des OpenLDAP-Verzeichnisdienst zu Kopano-Admins hochzustufen, muss anders vorgegangen werden.
148 -Wechseln Sie hierzu in den LXC-Container logosrv und aktivieren Sie die Admin-Funktion über folgendes Kommando für alle gewünschten Benutzer:
149 -
164 +(% style="color:#000000" %)Damit die Änderungen sauber übernommen werden, fehlt noch ein Git commit im (% style="color:#3498db" %)Puppeteer(% style="color:#000000" %).
150 150  
151 -{{box}}
152 -(% style="color:#16a085" %)### Das Schlüsselwort NAME durch den Benutzernamen austauschen, der zum Kopano-Admin werden soll (üblicherweise admin)##(%%)
153 -(% style="color:#000000" %)##echo 1 >/var/lds/ldap/ou=users/uid=NAME/zarafaadmin##
154 -{{/box}}
155 -)))
156 -
157 -
158 -----
159 -
160 -===== __Vorgenommene Änderungen ins Git einchecken__ =====
161 -
162 -(% style="color:#000000" %)Damit die Änderungen sauber übernommen werden, fehlt noch ein {{box}}git commit{{/box}} im (% style="color:#3498db" %)Puppeteer(% style="color:#000000" %).
163 -
164 164  (% class="box" %)
165 165  (((
166 -(% style="color:#000000" %)##cd /etc/logodidact/
167 -git add *
168 -git commit -am "Kopano für den lokalen Betrieb eingerichtet"##
168 +(% style="color:#000000" %)##git add .##
169 169  )))
170 170  
171 -
172 -(% style="color:#000000" %)Führen Sie bitte abschließend noch einen {{box}}prun{{/box}}(%%) in den betreffenden LXC-Containern aus (% style="color:#000000" %)(d.h. in allen Container, die durch Anpassungen in den YAML-Dateien Änderungen erhalten).
173 -
174 -
175 -
176 -----
177 -
178 -
179 -(% class="box successmessage" %)
171 +(% class="box" %)
180 180  (((
181 -Weitere Optimierungen können in folgendem Artikel nachgelesen werden.
182 -[[https:~~/~~/kb.logodidact.com/xwiki/bin/view/Main/Kopano/Allgemein/Optimierungen%20von%20Kopano/>>https://kb.logodidact.com/xwiki/bin/view/Main/Kopano/Allgemein/Optimierungen%20von%20Kopano/]]
173 +(% style="color:#000000" %)##git commit -am "Kopano für den lokalen Betrieb eingerichtet"##
183 183  )))
184 184  
185 -
176 +
177 +(% style="color:#000000" %)und ein (% style="color:#3498db" %)prun in den jeweiligen Containern(% style="color:#000000" %) (Alle Container, die durch die .yaml Konfigurationsdateien angesprochen werden)