Goobi nutzt zum Speichern von Informationen eine Datenbank. Hierfür wird grundsätzlich MySQL bevorzugt. Diese Datenbankengine wird vorzugsweise aus den Standardrepositories des Betriebssystems in der jeweils letzten stabilen Version installiert.
MySQL wird unter Ubuntu Linux 14.04 LTS aus den Standard Repositories mit dem folgenden Befehl installiert:
Der Dienst kann mit diesen beiden Befehlen gestoppt und gestartet werden:
Die Konfigurationsdateien für MySQL befinden sich im folgenden Pfad:
Für den Betrieb von Goobi werden verschiedene Dienste benötigt. Diese werden auf den folgenden Seiten detailliert beschrieben.
Goobi verwendet Samba, um den Nutzern Verzeichnisfreigaben zum Lesen und Schreiben der Bilddaten zur Verfügung zu stellen. Die Installation von Samba sollte aus den Standardrepositories des Betriebssystems in der jeweils letzten stabilen Version erfolgen.
Samba wird unter Ubuntu Linux 14.04 LTS aus den Standardrepositories mit dem folgenden Befehl installiert:
Der Dienst kann mit den folgenden beiden Befehlen gestoppt und gestartet werden:
Die Konfigurationsdateien befinden sich unter diesem Pfad:
Unter Windows 7 sowie den nachfolgenden Versionen kann das Verzeichnis als Netzlaufwerk eingebunden werden. Hierzu erfolgt die Einrichtung mittels Klick auf Start
und Computer
und anschließend mit einem Rechtsklick auf Netzwerk
und der Wahl von Netzlaufwerk verbinden
.
Im Dialogfenster kann nun ein freier Laufwerksbuchstabe zugeordnet werden. Als Ordner erfolgt die Eingabe in der Form SERVERNAME\USERNAME
, wobei USERNAME
für den Goobi Benutzernamen steht. Entsprechen die Anmeldedaten für Goobi nicht denen des Windows PCs, so ist zusätzlich Verbindung mit anderen Anmeldeinformationen herstellen
auszuwählen.
Gegebenenfalls müssen im nächsten Schritt Nutzername und Passwort eingegeben werden. Danach steht das Netzlaufwerk unter dem gewählten Laufwerksbuchstaben zur Verfügung.
Das Goobi Mount Tool ist eine alternative Methode zum Verbinden der Goobi Freigaben als Netzlaufwerk.
Die Konfiguration des Goobi Mount Tools erfolgt über die Datei config.properties
im selben Verzeichnis wie GoobiMountTool.exe
.
Der Parameter drive_letter
definiert hierbei den Laufwerksbuchstaben, unter dem das Netzlaufwerk eingebunden wird. ip_address
bezeichnet die IP-Adresse des Goobi Servers, welcher die Netzlaufwerke zur Verfügung stellt.
Ist die Konfiguration korrekt erfolgt, so kann das Goobi Mount Tool direkt aufgerufen werden. Es erfordert im Weiteren nur noch die Eingabe der Goobi Anmeldeinformationen (Benutzername
und Passwort
).
Nach Auswahl von Verbinden
steht das Netzlaufwerk unter dem konfigurierten Laufwerksbuchstaben zur Verfügung.
Goobi ist eine webbasierte Java Applikation. Damit diese im Webbrowser aufrufbar ist, muss der Java Code übersetzt werden. Hierfür ist ein Servlet Container zuständig. Beispiele für Servlet Container sind:
Servlet Container | Projekt-URL |
---|---|
Üblicherweise wird in einem Apache Tomcat
installiert. Dieser wird aus den Standardrepositories des Betriebssystems installiert, sofern diese die Version 7 enthalten. Ist das nicht der Fall, wird der Apache Tomcat
von Hand installiert und gepflegt.
Apache Tomcat in der Version 7 wird unter Ubuntu Linux 14.04 LTS aus den Standardrepositories mit dem folgenden Befehl installiert:
Der Dienst kann mit diesen beiden Befehlen gestoppt und gestartet werden:
Die Konfigurationsdateien befinden sich unter:
Um Goobi zu installieren, muss die Datei goobi.war in den webapps-Ordner des Tomcat gelegt werden. Die Datei goobi.war wird automatisch entpackt. Der webapps-Ordner befindet sich unter folgendem Pfad:
Goobi verwendet in der Regel einen LDAP Server zur Authentifizierung der Benutzer. Hierdurch ist es möglich, sich mit dem selben Benutzernamen und Passwort wie in Goobi auch mit dem bereitgestellten Netzlaufwerk zu verbinden. In der Konfigurationsdatei goobi_config.properties
wird einerseits angegeben, ob LDAP grundsätzlich von Goobi verwendet werden soll, andererseits wird dort auch der verwendete Truststore konfiguriert. Alle weiteren Einstellungen zu LDAP-Verbindungen und -Benutzergruppen werden im Administrationsbereich in der Benutzeroberfläche vorgenommen.
Der LDAP Server sollte über die Schemata COSINE
, inetOrgPerson
, NIS
und SAMBA
verfügen.
In der Datei goobi_config.properties
stehen die folgenden Einstellungen für LDAP und den Truststore zur Verfügung:
Eigenschaft | Typ | Standardwert | Beschreibung |
---|---|---|---|
Hinweis: In früheren Goobi-Versionen gab es an dieser Stelle die Einstellungen ldap_keystore
und ldap_keystore_password
. Diese wurden umbenannt, da der Keystore auch für andere Zwecke verwendet werden kann. Diese Einstellungen werden nicht mehr unterstützt.
Hinweis: Gelegentlich tauchen in älteren Konfigurationsdateien die falsch überlieferten Einstellungen ldap_truststore
und ldap_truststore_password
auf. Diese Einstellungen existieren in Goobi nicht und werden entsprechend nicht unterstützt.
Die Konfiguration innerhalb der Konfigurationsdatei goobi_config.properties
bei Verwendung eines lokalen LDAP Servers kann zum Beispiel wie folgt aussehen:
LDAP-Gruppen können in Goobi im Bereich Administration
-> Authentifizierung
eingerichtet werden. Es wird zunächst eine Liste mit bereits eingerichteten Authentifizierungsoptionen angezeigt. Um eine LDAP-Gruppe einzurichten, muss eine neue Authentifizierung angelegt werden.
Aktuell stehen drei Authentifizierungsarten zur Verfügung. Bei allen muss mindestens ein Name, ein Typ und ein Login-Shell-Befehl ausgewählt werden.
Wird als Typ LDAP ausgewählt, so stehen einige weitere Optionen zur Verfügung. Außerdem stehen für LDAP insgesamt drei Tabs (Allgemein
, Details
und Authentifizierung
) zur Verfügung.
Auf der Seite Allgemein
werden grundlegende Einstellungen zur LDAP-Gruppe vorgenommen, wie zum Beispiel die URL des LDAP-Servers, der User DN (distinguishing name) und Samba IDs. Das Feld User DN
wird für das Mapping von der Nutzeridentifikation in der Goobi Datenbank zur Nutzeridentifikation in der LDAP-Gruppe verwendet. Der Platzhalter {login}
repräsentiert dabei den Login-Namen eines Benutzers und muss angegeben werden, damit Goobi später für jeden neuen Goobi-Account auch einen namentlich angepassten LDAP-Account anlegen kann.
Auf der Seite Details
werden viele weitere Details zur LDAP-Gruppe eingestellt.
Auf der Seite Authentifizierung
werden technische Details zur Authentifizierung bei dem im Allgemein
-Tab eingerichteten LDAP-Service angegeben. Diese Seite beinhaltet einige Einstellungen, die früher nur einmalig in der Konfigurationsdatei goobi_config.properties
vorgenommen werden konnten und können nun für diese spezielle LDAP-Authentifizierung angegeben werden.
Neben den Goobi-spezifischen LDAP-Einstellungen ist weiterhin sicherzustellen, dass auch dem Betriebssystem die LDAP-Nutzer bekannt sind. Hierzu ist die korrekte Angabe der LDAP-Informationen insbesondere in den folgenden Dateien notwendig:
Die Verwendung des LDAP-Servers muss für SAMBA aktiviert sein. Seit Ubuntu 14.04 LTS ist dies standardmäßig voreingestellt.
Einstellung | Beschreibung |
---|---|
Einstellung | Beschreibung |
---|---|
Einstellung | Beschreibung |
---|---|
Apache Tomcat
Jetty
Resin
ldap_use
Boolean
false
Dieser Wert gibt an, ob ein LDAP-Service verwendet werden soll.
truststore
Text
Dieser Wert gibt an, wo sich der Truststore befindet.
truststore_password
Text
Dieser Wert gibt das Passwort für die Authentifizierung im Truststore an.
Name
Hier wird ein Name für die Authentifizierungsart angegeben. Dieser sollte innerhalb von Goobi eindeutig sein.
Typ
In diesem Menü kann ausgewählt werden, um welche Art von Authentifizierung es sich handelt. Die Optionen Datenbank
und OpenID
können ohne detailierte Konfiguration verwendet werden. Wird LDAP ausgewählt, so erscheinen weiter unten weitere Einstellungsmöglichkeiten.
LDAP URL
Hier wird die URL des LDAP-Services angegeben. Die URL muss ebenfalls die korrekte Portnummer beinhalten. Läuft der LDAP-Server auf dem selben Server, so kann hier localhost:389
angegeben werden.
LDAP User DN
Dieses Feld beinhaltet Informationen für die Erstellung von LDAP-Accounts basierend auf Goobi-Datenbank-Accounts. Der Platzhalter {login}
muss verwendet werden, damit Goobi später den richtigen Nutzernamen einsetzen kann.
Samba SID
Hier wird die Nutzeridentifikation für den zugehörigen Samba-Server angegeben.
Login-Shell
Hier kann ein Bash-Script angegeben werden, das beim Anmelden eines Nutzers ausgeführt werden soll.
Samba Primary Group SID
Hier wird die Gruppen ID für die Nutzergruppe beim Samba-Server angegeben.
Benutzerverzeichnis
Hier wird der Benutzerordner für Nutzeraccounts angegeben. Der Platzhalter {login}
wird dabei verwendet, damit Goobi später den richtigen Nutzernamen einsetzen kann.
GID-Nummer
Hier wird die Gruppen-ID-Nummer für die LDAP-Gruppe angegeben. Werden mehrere LDAP-Gruppen eingerichtet, so müssen sich diese IDs unterscheiden.
Object classes
In diesem Feld können weitere Parameter für die LDAP-Gruppe angegeben werden. Diese werden kommagetrennt aufgelistet.
LDAP SN
In diesem Feld wird die Serial-Number des Nutzers auf dem LDAP-System angegeben. Hierfür kann ebenfalls der Platzhalter {login}
verwendet werden.
LDAP UID
In diesem Feld wird die Benutzer-ID angegeben, die für den jeweiligen LDAP-Account verwendet werden soll. Auch hier kann {login}
als Platzhalter verwendet werden.
Beschreibung
Diese Beschreibung wird den von Goobi angelegten Nutzern im LDAP-System hinzugefügt.
Anzeigename
Dieses Textfeld beinhaltet einen Platzhalter für den vollständig angezeigten Namen des Nutzers. Hier kann {user full name}
verwendet werden. Damit werden später Vorname und Nachname angezeigt.
Geocs
In diesem Feld können weitere Informationen zu Goobi Nutzern in der LDAP-Gruppe angegeben werden, wie zum Beispiel ein Ort oder Kontaktmöglichkeiten.
Samba Account Flags
Hier werden weitere Parameter für den Samba Account angegeben.
Samba Logon Script
In diesem Feld kann eine Script-Datei angegeben werden, die beim Login eines Nutzers auf dem Samba System ausgeführt werden soll. Um für jeden Nutzer eine eigene Script-Datei zu ermöglichen, kann auch hier der Platzhalter {login}
verwendet werden.
Samba erzwungene Passwortänderung
Hier kann ein Zeitraum angegeben werden, nach dem jeder Nutzer sein Passwort aus Sicherheitsgründen ändern muss. Da dieses Passwort auch das Goobi-Passwort des entsprechenden Nutzers ist, muss ein Nutzer sein Goobi-Passwort ändern, um damit auch das Samba-Passwort zu ändern.
Samba Password History
Hier können Details zur Speicherung der letzten verwendeten Passwörter eines Samba-Nutzers angegeben werden.
Samba Logon Hours
Hier kann ein Zeitraum im Binärformat (in Stunden) angegeben werden, wann sich ein Nutzer am Samba-System anmelden kann. Um dies immer zuzulassen, muss der Wert 21x F
beinhalten.
Samba Kickoff Time
Hier kann die Zeit in Millisekunden angegeben werden, nach der ein Nutzer auf dem Samba-System automatisch abgemeldet wird.
Benutzerverzeichnis aus der Konfigurationsdatei nutzen
Dieses Feld kann gesetzt werden, um das Benutzerverzeichnis nicht von LDAP bestimmen zu lassen, sondern das oben angegebene zu verwenden.
Attributname Benutzerverzeichnis
Mit diesem Wert kann auf älteren Systemen angegeben werden, mit welchem Key in der Goobi-Konfiguration das LDAP-Nutzer-Home-Verzeichnis angegeben ist.
Administrator Accountname
Hier wird der Nutzername des Administratoraccounts beim LDAP-Service angegeben. Es werden zusätzlich (mit Komma getrennt) weitere Parameter für die Identifikation des Administrators angegeben.
Administrator Passwort
Hier wird das Passwort für den Administratoraccount beim LDAP-Service angegeben.
LDAP next free unix id
In diesem Feld wird ein Platzhalter für die nächste freie Nutzer ID auf dem LDAP-Server angegeben. Zusätzlich werden (mit Komma getrennt) weitere Parameter für die Identifikation der Nutzer angegeben.
Root Zertifikat
Hier wird das SSL-Zertifikat für die Verbindung mit dem LDAP-Server angegeben.
PDC Zertifikat
Hier wird das PDC-Zertifikat für die Verbindung mit dem LDAP-Server angegeben.
Verschlüsselungsart
Hier kann die Verschlüsselunsart für Verbindungen mit dem LDAP-Service ausgewählt werden. Derzeit stehen SHA
und MD5
zur Verfügung.
SSL
Diese Option kann ausgewählt werden, um die Secure-Sockets-Layer-Verschlüsselung (SSL) zu verwenden. Hinweis: Die SSL-Verschlüsselung ist veraltet und es wird empfohlen, die TLS-Verschlüsselung zu verwenden.
Nur lesender Zugriff
Diese Option kann ausgewählt werden, wenn Nutzer nur Leserechte im LDAP-System haben sollen.
Zugriff ohne Authentifizierung
Mit dieser Option kann eingestellt werden, ob anonymer Zugriff auf das LDAP-System erfolgen darf.
TLS
Diese Option kann ausgewählt werden, um die Transport-Layer-Security-Verschlüsselung (TLS) zu verwenden.