IES Konfiguration: Unterschied zwischen den Versionen
Sed (Diskussion | Beiträge) |
Sed (Diskussion | Beiträge) |
||
(11 dazwischenliegende Versionen von 2 Benutzern werden nicht angezeigt) | |||
Zeile 2: | Zeile 2: | ||
=IES-Konfiguration= | =IES-Konfiguration= | ||
− | Der IES ist ein Java-Prozess, dessen Start-Parameter in der Datei <code>/etc/sitepark/sitepark.conf</code> | + | Der IES ist ein Java-Prozess, dessen Start-Parameter in der Datei <code>/etc/sitepark/sitepark.conf</code> konfiguriert wird. Hier werden Angaben zum Speicherverbrauch o.ä. vorgenommen. Details hierzu finden Sie [[Administration und Konfiguration unter Linux|hier]] für Linux. |
Der IES selber wird über eine zentrale XML-Datei gesteuert. Die Konfiguration erfolgt automatisch über die graphische Oberfläche des ''IESAdmin''. Hier wird dennoch die Struktur der Datei kurz aufgeführt. Einige sehr spezielle Optionen lassen sich nur in dieser Datei anpassen. Der Aufruf von | Der IES selber wird über eine zentrale XML-Datei gesteuert. Die Konfiguration erfolgt automatisch über die graphische Oberfläche des ''IESAdmin''. Hier wird dennoch die Struktur der Datei kurz aufgeführt. Einige sehr spezielle Optionen lassen sich nur in dieser Datei anpassen. Der Aufruf von | ||
Zeile 158: | Zeile 158: | ||
In der IES-Konfiguration (XML-Encoded) sind das z.B. wie folgt aus: | In der IES-Konfiguration (XML-Encoded) sind das z.B. wie folgt aus: | ||
<source lang="xml"> | <source lang="xml"> | ||
− | <property name="systemIdentification" value="{label:"Testsystem",color:" | + | <property name="systemIdentification" value="{label:"Testsystem",color:"#fc9c34"}" /> |
</source> | </source> | ||
Zeile 167: | Zeile 167: | ||
oder | oder | ||
<source lang="text"> | <source lang="text"> | ||
− | systemIdentification={label:"Schulungssystem", color | + | systemIdentification={label:"Schulungssystem", color:"green"} |
</source> | </source> | ||
oder um die globale Setzung zurückzunehmen | oder um die globale Setzung zurückzunehmen | ||
Zeile 193: | Zeile 193: | ||
<property name="password.minLength" value="4" /> | <property name="password.minLength" value="4" /> | ||
<property name="password.regexp" value="^(?=.*[0-9])(?=.*[a-z])(?=.*[A-Z])(?=.*[@#$%^&+=])(?=\S+$).{8,}$" /> | <property name="password.regexp" value="^(?=.*[0-9])(?=.*[a-z])(?=.*[A-Z])(?=.*[@#$%^&+=])(?=\S+$).{8,}$" /> | ||
+ | <property name="password.regexp.text" value="Beschreibung der Passwort-Regeln für Redakteure" /> | ||
<property name="password.algorithm" value="scrypt" /> | <property name="password.algorithm" value="scrypt" /> | ||
<property name="password.bcrypt.params" value="{cost=10}" /> | <property name="password.bcrypt.params" value="{cost=10}" /> | ||
Zeile 222: | Zeile 223: | ||
.{8,} # mind. 8 Zeichen | .{8,} # mind. 8 Zeichen | ||
$ # Ende des Passwortes | $ # Ende des Passwortes | ||
+ | |||
+ | <div class="note">Bitte beachten Sie die Angaben in der XML-Datei entsprechend zu encoden (Beispiel: & -> &amp;)</div> | ||
===Algorithmus zur Verschlüsselung=== | ===Algorithmus zur Verschlüsselung=== | ||
Zeile 245: | Zeile 248: | ||
password.pbkdf2.params | password.pbkdf2.params | ||
Default: "{iterations=1000,keyLength=512}" | Default: "{iterations=1000,keyLength=512}" | ||
+ | |||
+ | ===Hinweise zu den Passwort-Regeln=== | ||
+ | Hier kann eine von Menschen lesbare Beschreibung der Passwort-Regeln angegeben werden. Diese Regeln werden nur in Infosite ausgegeben, nicht für WebAccounts auf der Website. Hier sind Optionen in der Mehrsprachigkeit von Sitekit verfügbar. | ||
+ | password.regexp.text | ||
+ | |||
+ | =sitepark.conf= | ||
+ | |||
+ | ==IES_JAVA_OPTIONS== | ||
+ | Java Optionen die mit -D angegeben werden | ||
+ | |||
+ | Chunked transfer encoding für die Kommunikation vom IES z.b. zum IES-Webnode deaktivieren. Dies ist in der Regel nur dann notwendig, wenn die Kommunikation über einen Proxy läuft und dieser Chunked transfer encoding via POST nicht unterstütz (sehr alte Proxies) | ||
+ | com.sitepark.net.HttpClient.disableChunked=true | ||
+ | |||
+ | Deaktivieren des nice-Mode für ImageMagick. Die Bildberechnung läuft standardmäßig im nice-Level 19 (niedrigste Priorität) um bei z.B. Massenimporten mit Bildberechnung die redaktionelle Arbeit nicht zu behindern. Mit dem Setzen der Priorität von 0 kann der Nice-Moduls deaktiviert werden. Bei Angabe eines anderen Wertes wird dieser für den nice-Aufruf übernommen. | ||
+ | com.sitepark.imgfile.imagemagick.command.Command.priority=0 | ||
=Mail-Server Konfiguration= | =Mail-Server Konfiguration= | ||
− | Der Mail-Server wird anders als die IES-Konfigurationen global | + | Der Mail-Server wird anders als die IES-Konfigurationen global beim Start der JVM angegeben. Wir empfehlen hier die Einstellungen mit einem lokalen Mail-Server zu belassen und eine entsprechende Weiterleitung des SMTP-Dienstes zu konfigurieren (Relay). Details hierzu finden Sie [[Systemvoraussetzungen#Mailserver|hier]]. |
− | |||
− | |||
− | |||
− | |||
<noinclude> | <noinclude> | ||
[[Kategorie:Administration und Konfiguration]] | [[Kategorie:Administration und Konfiguration]] | ||
</noinclude> | </noinclude> |
Aktuelle Version vom 28. September 2022, 06:47 Uhr
IES-Konfiguration
Der IES ist ein Java-Prozess, dessen Start-Parameter in der Datei /etc/sitepark/sitepark.conf
konfiguriert wird. Hier werden Angaben zum Speicherverbrauch o.ä. vorgenommen. Details hierzu finden Sie hier für Linux.
Der IES selber wird über eine zentrale XML-Datei gesteuert. Die Konfiguration erfolgt automatisch über die graphische Oberfläche des IESAdmin. Hier wird dennoch die Struktur der Datei kurz aufgeführt. Einige sehr spezielle Optionen lassen sich nur in dieser Datei anpassen. Der Aufruf von
iesadmin reload-config
bzw. der entsprechende Button im IESAdmin-Webinterface laden diese Datei neu ein.
Beispiel einer ies-server.xml
<?xml version="1.0" encoding="UTF-8"?>
<ies-server>
<!-- System-Bundles bilden typische Kombinationen von Modulen ab -->
<bundles>
<bundle>cms</bundle>
</bundles>
<!-- Globale Parameter -->
<settings>
<property name="dataDir" value="/srv/sitepark/data" />
<property name="sessionTimeout" value="120" />
<property name="maxRepositoryVersions" value="50" />
<property name="maxObjectCacheSize" value="10000" />
<property name="objectCacheLifetime" value="43200" />
<property name="maxLockTime" value="10" />
<property name="defaultLocale" value="de_DE" />
<property name="privateCryptKey" value="963249068513792696390639" />
<property name="availableLocales" value="cs,de,en,es,et,fr,hu,it,lt,lv,nl,pt,ro,sk,sl,cs_CZ,da_DK,de_AT,de_CH,de_DE,de_LU,el_GR,en_GB,en_IE,es_ES,fr_BE,fr_CH,fr_FR,fr_LU,hu_HU,it_CH,it_IT,ja_JP,nl_BE,nl_NL,pl_PL,pt_PT,ru_RU,sk_SK,sv_SE,tr_TR,zh_CN" />
<property name="bindbScaleSteps" value="40,100,500,h40" />
<property name="iesadmin.update.url" value="http://user:password@ies.sitepark.com/updater/" />
<property name="http.proxyHost" value="" />
<property name="http.proxyPort" value="" />
<property name="https.proxyHost" value="" />
<property name="https.proxyPort" value="" />
<property name="http.nonProxyHosts" value="localhost,127.0.0.1" />
</settings>
<!-- Zugriffe auf IESAdmin -->
<security>
<user login="manager" password="b29fa62a183463dd119bf22cde912b9f" roles="management" />
</security>
<!-- Konfiguration des Logging -->
<logging>
<appender name="IES" type="rolling-file" file="/srv/sitepark/ies.log" append="true" maxFileSize="100MB" maxBackups="1" />
<logger name="com.sitepark.ies" level="TRACE" appender="IES" />
<logger name="com.sitepark.ies.management.servlet" level="ERROR" appender="IES" />
<logger name="com.sitepark.imgfile" level="ERROR" appender="IES" />
<logger name="net.sf.jmimemagic" level="ERROR" appender="IES" />
</logging>
<!-- Datenbank- und Mandanten-Konfigurationen und Root-Zugänge der jeweiligen Datenbank-Server -->
<persistence>
<admin type="1" host="localhost" user="root" password="secret" />
<db id="1" name="testdb" type="1" host="localhost" port="3306" database="testdb" user="testdbuser" password="sdfg346hjk" is-ies-database="true" parameter="useUnicode=true,connectionCollation=utf8_general_ci,characterEncoding=UTF-8">
<client id="1" anchor="testclient" name="Testsystem" webapps="infosite," disabled="false">
<attributes />
<ref element="publisher" id="1" type="file" />
<ref element="publisher" id="2" type="file" />
<ref element="publisher" id="3" type="database" />
</client>
</db>
<db id="2" name="dbpublisher" type="1" host="localhost" port="3306" database="dbpublisher" user="dbpublisher" password="24dfh578s234" is-ies-database="false" parameter="useUnicode=true,connectionCollation=utf8_general_ci,characterEncoding=UTF-8" />
</persistence>
<!-- Konfiguration der IES Dienste -->
<services>
<service id="lock-scheduler" status="stop" />
<service id="publisher" />
<service id="link" />
<service id="ldap" />
<service id="email-validator" />
<service id="compiler" />
<service id="report" />
<service id="article-observer" />
<service id="counter" disabled="false" />
<service id="linktree" />
<service id="r" />
<service id="task" />
<service id="indexer">
<!-- Konfiguration von Indices werden innerhalb des Service abgelegt -->
<index id="1" anchor="testindex" client="100010100000000000-0" name="testindex" indexdir="/srv/sitepark/data/indexes/1-1/testindex">
<field name="sp_headline" default="" type="text" boost="2.0" store="true" />
</index>
</service>
<service id="ldap-import" />
<service id="observer" />
<service id="dependencies" disabled="false" />
</services>
<!-- Optionale Konfiguration einer LDAP Anbindung -->
<ldap />
<!-- Konfiguration der Publisher (jeder Publisher-Typ wird in einem separatem Bereich konfiguriert) -->
<publisher>
<file>
<file-publisher id="1" name="www.domain.loc" document-root="/var/www/domain.loc/www" url="http://www.domain.loc" locale="default" is-module="true" encoding="UTF-8" personalization-datasource="1" aliases="https://domain.loc
https://www.domain.loc
http://domain.loc" anchor="www">
<attributes />
</file-publisher>
<file-publisher id="2" name="preview.domain.loc" document-root="/var/www/domain.loc/preview" url="http://preview.domain.loc" encoding="UTF-8" is-module="false" locale="default" aliases="http://preview.domain.loc/irgendwo
http://preview.domain.loc:80
http://preview.domain.loc:80/irgendwo/">
<attributes />
</file-publisher>
</file>
<database>
<database-publisher id="3" name="DB" database="2">
<attributes />
</database-publisher>
</database>
</publisher>
<!-- Konfiguration der Module -->
<modules>
<module id="ies" disabled="false" />
<module id="infosite" disabled="false" />
</modules>
</ies-server>
Erweiterte Datenbank-Parameter
Für die Konfiguration von Datenbank-Verbindungen im IES können neben den Parametern die im IES-Admin konfiguriert werden können noch folgende, erweiterte Setzungen vorgenommen werden:
- max-pool-size="20"
- Konfiguration des Pools für parallelen Datenbank-Verbindungen
- Dieser Wert kann u.U. bei vielen Live-Zugriffen erhöht werden. Entsprechende Meldungen in den Log-Files würden dann darauf hinweisen. (Default: 20)
- blocking-timeout-millis="30000"
- Konfiguration der Dauer in Millisekunden, die der IES maximal auf eine Datenbank-Verbindungen des Pools wartet
- Auch dieser Wert muss i.d.R. nicht verändert werden. (Default: 30000)
- track-statements="false"
- Erweitertes Logging bei Datenbank-Problemen
- Dieser Wert wird aktuell noch nicht verwendet. (Default: false)
Diese müssen bei Bedarf direkt in der Konfiguration der jeweiligen Datenbankverbindung angegeben werden. Danach bleiben diese auch bei Änderungen im IESAdmin erhalten.
IES-Backupverzeichnis ($SITEPARK_BACKUP
)
Im Backupverzeichnis werden alle Daten zur Sicherung von Mandanten gespeichert. Dieses Verzeichnis sollten Sie regelmäßig über ein externes Backup sichern. Informationen zum Thema IES Backup finden Sie hier.
Über das Property backupDir
kann das Backupverzeichnis des IES geändert werden. Ist keine Konfiguration vorhanden, so wird der Ordner $SITEPARK_HOME/backup
angenommen. Stellen sicher, dass der IES wieder vollen Zugriff auf den Ordner erhält (chown -R ies.ies).
IES-Datenverzeichnis ($SITEPARK_DATA
)
Im Datenverzeichnis des IES werden alle Daten der Module und die BinDB
mit allen Medien gespeichert.
Über das Property dataDir
kann das Datenverzeichnis des IES geändert werden. Neben Sie ein Anpassung nur vor, wenn der IES gestoppt wurde. Verschieben Sie alle alten Daten entsprechend in das neue Verzeichnis und stellen sicher, dass der IES wieder vollen Zugriff erhält (chown -R ies.ies).
Zugriff auf den IES per Ilink, wenn dieser per htaccess geschützt ist
In diesem Fall muss der Browser via JavaScript entsprechende Header setzen. Dazu sind im Webserver folgende HEADER-Setzungen zu machen:
Header set Access-Control-Allow-Origin "https://www.website.de" Header set Access-Control-Allow-Methods "POST, GET, OPTIONS" Header set Access-Control-Allow-Credentials true
Und in der IES-Konfiguration ist ein manueller Eintrag notwendig:
<property name="host.withCredentials" value="true" />
Systeme unterscheiden (Test- oder Schulungssysteme)
Es besteht die Möglichkeit eine IES-Installation global mit einem in InfoSite 6 sichtbaren Label zu versehen um z.B. eine Testsystem mit identischen Daten für die Redakteure kenntlich zu machen. Folgende Setzungen sind möglich und können pro Mandant auch noch überschrieben werden:
- Label
- Farbe (bekannter Name (z.B. "white") oder Farbcode (z.B. "#FFFFFF")
In der IES-Konfiguration (XML-Encoded) sind das z.B. wie folgt aus:
<property name="systemIdentification" value="{label:"Testsystem",color:"#fc9c34"}" />
Um im Mandanten diese globale Einstellung zu überschreiben kann in IES-Admin bei den Attributen des Mandaten folgende Setzung vorgenommen werden:
systemIdentification={label:"Demosystem"}
oder
systemIdentification={label:"Schulungssystem", color:"green"}
oder um die globale Setzung zurückzunehmen
systemIdentification={}
Session-Steuerung
Das System erlaubt die freie Konfiguration der Sitzungsdauer für Redakteure und WebAccounts. Die Sitzungsdauer für WebSessions und redaktionelle Arbeiten im CMS ist in Minuten anzugeben. Hier werden die Standard-Setzungen angezeigt (2 Stunden, 10 Tage):
<property name="sessionTimeout" value="120" />
<property name="webSessionTimeout" value="14400" />
Nach Ablauf dieser Zeiten werden die Sessions in der Datenbank entfernt. Darüber hinaus können die Setzungen der notwendigen Cookies konfiguriert werden (z.B. Gültigkeit nur für die aktuelle Browser-Session).
Passwort-Steuerung
Über verschiedene, optionale Attribute in der Konfiguration kann die Verwaltung von Passwörtern gesteuert werden.
<property name="password.expirationPeriod" value="90" />
<property name="password.minLength" value="4" />
<property name="password.regexp" value="^(?=.*[0-9])(?=.*[a-z])(?=.*[A-Z])(?=.*[@#$%^&+=])(?=\S+$).{8,}$" />
<property name="password.regexp.text" value="Beschreibung der Passwort-Regeln für Redakteure" />
<property name="password.algorithm" value="scrypt" />
<property name="password.bcrypt.params" value="{cost=10}" />
<property name="password.scrypt.params" value="{N=16384,r=8,p=1}" />
<property name="password.pbkdf2.params" value="{iterations=1000,keyLength=512}" />
Gültigkeitsdauer
Nach der hier angegebenen Anzahl von Tagen wird ein Nutzer, sofern bei diesem gesetzt wurde, dass das Passwort zeitlich limitiert ist, eine Meldung ausgegeben, die zur Neueingabe eines Passwortes auffordert. Neben der globalen Konfiguration kann diese Funktion auch über folgendes Attribut am Mandanten konfiguriert werden (default 90 Tage):
password.expirationPeriod
Minimale Passwort-Länge
Anzahl der Zeichen, die ein Passwort mind. lang sein soll.
password.minLength
Regulärer Ausdruck als Regel für Passwörter
Über einen regulären Ausdruck kann die Eingabe von beliebig komplizierten Passwörtern vorgegeben werden. Beachten Sie bitte, dass in den einzelnen Applikationen u.U. kein entsprechender Hinweis bzgl. der Syntax erscheint.
password.regexp
Beispiel:
^(?=.*[0-9])(?=.*[a-z])(?=.*[A-Z])(?=.*[@#$%^&+=])(?=\S+$).{8,}$ ^ # Beginn des Passwortes (?=.*[0-9]) # min. eine Zahl (?=.*[a-z]) # mind. ein kleingeschriebener Buchstabe (?=.*[A-Z]) # mind. ein großgeschriebener Buchstabe (?=.*[@#$%^&+=]) # mind. eins dieser Sonderzeichen "@#$%^&+=" (?=\S+$) # Leerzeichen sind nicht erlaubt .{8,} # mind. 8 Zeichen $ # Ende des Passwortes
Algorithmus zur Verschlüsselung
Hier kann der verwendete Algorithmus zur Laufzeit angepasst werden. Loggt sich ein Nutzer erfolgreich ein, so wird das Passwort automatisch mit den hier gemachten aktuellen Setzung neu generiert und in der Datenbank gespeichert (Default: PBKDF2: https://de.wikipedia.org/wiki/PBKDF2).
- PBKDF2
- scrypt
- bcrypt
- md5
- sha (1, 256, 384, 512)
- unixcrypt
password.algorithm
Steuerung des Algorithmus zur der Verschlüsselung
Je nach Algorithmus kann u.U. noch Einfluss auf die Generierung von Passwörtern genommen werden. Drei Algorithmen erlauben hier feinere Anpassungen und haben eigene Attribute zur Steurerung.
password.bcrypt.params Default: "{cost=10}"
password.scrypt.params Default: "{N=16384,r=8,p=1}", auf virtuellen Servern u.U. wie folgt zu reduzieren: "{N=1024, r=1, p=1}"
password.pbkdf2.params Default: "{iterations=1000,keyLength=512}"
Hinweise zu den Passwort-Regeln
Hier kann eine von Menschen lesbare Beschreibung der Passwort-Regeln angegeben werden. Diese Regeln werden nur in Infosite ausgegeben, nicht für WebAccounts auf der Website. Hier sind Optionen in der Mehrsprachigkeit von Sitekit verfügbar.
password.regexp.text
sitepark.conf
IES_JAVA_OPTIONS
Java Optionen die mit -D angegeben werden
Chunked transfer encoding für die Kommunikation vom IES z.b. zum IES-Webnode deaktivieren. Dies ist in der Regel nur dann notwendig, wenn die Kommunikation über einen Proxy läuft und dieser Chunked transfer encoding via POST nicht unterstütz (sehr alte Proxies)
com.sitepark.net.HttpClient.disableChunked=true
Deaktivieren des nice-Mode für ImageMagick. Die Bildberechnung läuft standardmäßig im nice-Level 19 (niedrigste Priorität) um bei z.B. Massenimporten mit Bildberechnung die redaktionelle Arbeit nicht zu behindern. Mit dem Setzen der Priorität von 0 kann der Nice-Moduls deaktiviert werden. Bei Angabe eines anderen Wertes wird dieser für den nice-Aufruf übernommen.
com.sitepark.imgfile.imagemagick.command.Command.priority=0
Mail-Server Konfiguration
Der Mail-Server wird anders als die IES-Konfigurationen global beim Start der JVM angegeben. Wir empfehlen hier die Einstellungen mit einem lokalen Mail-Server zu belassen und eine entsprechende Weiterleitung des SMTP-Dienstes zu konfigurieren (Relay). Details hierzu finden Sie hier.