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

Von Version 21.1
bearbeitet von Jonas Mayer
am 2022/05/23 13:46
Ä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,47 +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 -
38 -===== (% style="color:#000000" %)__Anpassungen in der __(% style="color:#3498db" %)__kopano-g1.yaml__(%%) =====
39 -
40 -(% 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.
41 -
42 42  (% class="box" %)
43 43  (((
44 -(% style="color:#000000" %)##ld_multidrop::ensure: absent
28 +(% style="color:#000000" %)##~-~--
29 +ld_multidrop::ensure: absent
45 45  \\ld_kopano::amavisd_new::configs:
46 46   '@local_domains_maps': "( new_RE( qr'[@.](.*~\~\.?%{::domain})$'i ) )"
47 47  \\ld_kopano::postfix::configs:
... ... @@ -50,7 +50,7 @@
50 50   sender_dependent_relayhost_maps:
51 51   value: 'pcre:%{dir_etc}/sender_dependent_relayhost_maps_internal.pcre'
52 52   smtp_sender_dependent_authentication:
53 - value: 'yes'
38 + value: 'yes'
54 54   smtp_sasl_auth_enable:
55 55   value: 'yes'
56 56   smtp_sasl_password_maps:
... ... @@ -65,26 +65,15 @@
65 65   value: 'yes'
66 66   virtual_mailbox_domains:
67 67   value: 'pcre:%{dir_etc}/virtual_mailbox_domains_internal.pcre'
68 - # Einschränken von vordefinierte Absendern auf Empfänger der lokalen Maildomäne##(%%)
69 -(% style="color:#000000" %)## smtpd_restriction_classes:
70 - value: 'local_only'
71 - local_only:
72 - value: 'check_recipient_access pcre:%{dir_etc}/local_domains.pcre, reject'
73 - smtpd_recipient_restrictions:
74 - 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'
75 -\\\\ld_kopano::postfix::hashes:
53 +\\ld_kopano::postfix::hashes:
76 76   '%{dir_etc}/smtp_generic_maps.hash':
77 77   content: |
78 78   %{header}
79 - # Umschreibung der Absender-Domain bei externem Mailversand
80 - # (Dummy-Eintrag, durch Empfängerfilterung nicht genutzt)
81 81   @%{::fqdn} @example.com
82 82   '%{dir_etc}/sender_dependent_relayhost_maps_external.hash':
83 83   content: |
84 84   %{header}
85 - # Bounce-Nachrichten mit Null-Sender via Relayhost versenden
86 86   <> smtp.example.com
87 - # Mails an externe Empfänger via Relayhost versenden
88 88   @example.com smtp.example.com
89 89   '%{dir_etc}/smtp_sasl_password_maps.hash':
90 90   content: |
... ... @@ -94,48 +94,93 @@
94 94   content: |
95 95   %{header}
96 96   example.com ACCEPT
97 - '%{dir_etc}/restricted_senders.pcre':
98 - content: |
99 - %{header}
100 - # Regular Expression Format: Liste an Absendern, deren Versand eingeschränkt wird
101 - /@(.+?\.)?%{::domain}$/ local_only
102 - '%{dir_etc}/local_domains.pcre':
103 - content: |
104 - %{header}
105 - # Regular Expression Format: Liste erlaubter Empfängerdomänen für die eingeschränkten Absender
106 - /@(.+?\.)?%{::domain}$/ OK
107 -\\\\ld_kopano::postfix::verbose: false
71 +\\ld_kopano::postfix::verbose: false
108 108  \\ld_kopano::ldap_type: openldap
109 -\\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##
110 110  )))
111 111  
112 112  
113 -----
85 +(% style="color:#000000" %)Anpassungen in der (% style="color:#3498db" %)rev-proxy.yaml(% style="color:#000000" %):
114 114  
115 -===== (% 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 +)))
116 116  
117 -(% 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.
118 118  
96 +(% style="color:#000000" %)Anpassungen in der(%%) (% style="color:#3498db" %)mariadb103.yaml(%%):
97 +
119 119  (% class="box" %)
120 120  (((
121 -(% 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##(%%)
122 -(% 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:
123 123  # '(zarafaaccount=1)': 'example.com'
124 124  # Kopano: Definition von Gruppen, die eine Mailadresse erhalten sollen und dadurch anschreibbar werden
125 125  ld_legacy::mail::zarafa_groups:
126 - - elehrer##
147 + - elehrer(%%)##
127 127  )))
128 128  
129 129  
130 -----
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.
131 131  
132 -===== (% style="color:#000000" %)Anpassungen in der (% style="color:#3498db" %)samba4-ad.yaml(%%) =====
133 -
134 -(% 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.
135 -
136 136  (% class="box" %)
137 137  (((
138 -(% 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
139 139  # (Einstellung wird nicht benutzt, sofern Kopano an das OpenLDAP angebunden ist, was dem Standard entspricht)
140 140  ld_samba4::ad::kopano::admins:
141 141   - 'admin'##
... ... @@ -142,45 +142,17 @@
142 142  )))
143 143  
144 144  
145 -(% class="box infomessage" %)
146 -(((
147 -__**Tipp:**__
148 -Um Benutzerkonten bei Verwendung des OpenLDAP-Verzeichnisdienst zu Kopano-Admins hochzustufen, muss anders vorgegangen werden.
149 -Wechseln Sie hierzu in den LXC-Container logosrv und aktivieren Sie die Admin-Funktion über folgendes Kommando für alle gewünschten Benutzer:
150 -
164 +(% style="color:#000000" %)Damit die Änderungen sauber übernommen werden, fehlt noch ein Git commit im (% style="color:#3498db" %)Puppeteer(% style="color:#000000" %).
151 151  
152 -{{box}}
153 -(% style="color:#16a085" %)### Das Schlüsselwort NAME durch den Benutzernamen austauschen, der zum Kopano-Admin werden soll (üblicherweise admin)##(%%)
154 -(% style="color:#000000" %)##echo 1 >/var/lds/ldap/ou=users/uid=NAME/zarafaadmin##
155 -{{/box}}
156 -)))
157 -
158 -
159 -----
160 -
161 -===== __Änderungen ins Git einchecken__ =====
162 -
163 -(% style="color:#000000" %)Damit die Änderungen sauber übernommen werden, fehlt noch ein {{box}}git commit{{/box}} im (% style="color:#3498db" %)Puppeteer(% style="color:#000000" %).
164 -
165 165  (% class="box" %)
166 166  (((
167 -(% style="color:#000000" %)##cd /etc/logodidact/
168 -git add *
169 -git commit -am "Kopano für den lokalen Betrieb eingerichtet"##
168 +(% style="color:#000000" %)##git add .##
170 170  )))
171 171  
172 -
173 -(% 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).
174 -
175 -
176 -
177 -----
178 -
179 -
180 -(% class="box successmessage" %)
171 +(% class="box" %)
181 181  (((
182 -Weitere Optimierungen können in folgendem Artikel nachgelesen werden.
183 -[[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"##
184 184  )))
185 185  
186 -
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)