invis_server_wiki:installation

Unterschiede

Hier werden die Unterschiede zwischen zwei Versionen angezeigt.

Link zu dieser Vergleichsansicht

Beide Seiten der vorigen Revision Vorhergehende Überarbeitung
Nächste Überarbeitung
Vorhergehende Überarbeitung
Nächste Überarbeitung Beide Seiten der Revision
invis_server_wiki:installation [2015/03/24 13:59]
flacco [Modul: quest]
invis_server_wiki:installation [2015/05/18 13:01]
flacco [Kivitendo]
Zeile 91: Zeile 91:
  
 Die erste Netzwerkkarte des Systems (extern) stellt die Verbindung des Servers mit dem Internet her - entspricht somit der externen Zone Ihrer Firewall. Die erste Netzwerkkarte des Systems (extern) stellt die Verbindung des Servers mit dem Internet her - entspricht somit der externen Zone Ihrer Firewall.
-Verwenden Sie vor dem Server einen Router, sollten Sie "​extern"​ als DHCP-Client Konfigurieren. Wenn Sie ein Modem oder einen Router im Pass-Through Modus verwenden müssen Sie sie als PPPoE-Device einrichten und Ihren DSL-Zugang einrichten. Sorgen Sie dafür, dass bei der Internet-Einwahl nicht der verwendete DNS-Server geändert wird.+Verwenden Sie vor dem Server einen Router, sollten Sie "​extern"​ als DHCP-Client Konfigurieren. Wenn Sie ein Modem oder einen Router im Pass-Through Modus verwenden müssen Sie sie als PPPoE-Device einrichten und Ihren DSL-Zugang einrichten. Sorgen Sie dafür, dass bei der Internet-Einwahl ​**nicht** der verwendete DNS-Server geändert wird.
  
 Die zweite Netzwerkkarte (intern) muss mit einer festen IP-Adresse versehen werden. Selbst, wenn über den Internet-Service-Provider eine feste IP-Adresse zur Verfügung steht, ist für das interne Netz die Verwendung einer Adresse aus einem privaten Adressbereich zwingend. Die zweite Netzwerkkarte (intern) muss mit einer festen IP-Adresse versehen werden. Selbst, wenn über den Internet-Service-Provider eine feste IP-Adresse zur Verfügung steht, ist für das interne Netz die Verwendung einer Adresse aus einem privaten Adressbereich zwingend.
  
-Zur Benennung der Netzwerkschnittstellen steht nach der Installation des invis-Setup RPMs ein eigenes Script zur Verfügung. Der Reihen nach:+Zur Benennung der Netzwerkschnittstellen steht nach der Installation des invis-Setup RPMs ein eigenes Script zur Verfügung. Der Reihen nach.
  
-Zur Installation ​ist es notwendig zunächst das invis-Repository auf einem minimalen openSUSE System zu installieren:​+==== Installation ​vorbereiten ====
  
 +Zur Installation ist es notwendig zunächst das gewünschte invis-Repository auf einem minimalen openSUSE System zu installieren. Zur Verfügung stehen zwei Repositories:​
 +
 +  - **spins:​invis:​stable** - Stabile Version der invis-Server Setup Pakete. Nutzen Sie dieses Repository für produktiv genutzte invis-Server
 +  - **spins:​invis:​unstable** - In Entwicklung befindliche Versionen der invis-Server Setup Pakete. Nutzen Sie dieses Repository, wenn Sie uns mit Rat, Tat, Lob oder Kritik bei der Weiterentwicklung unterstützen möchten.
 +
 +Zur Installation eines der Repositories können Sie //​**zypper**//​ verwenden:
 <​code>​ <​code>​
-linux:~ # zypper ar http://​download.opensuse.org/​repositories/​spins:/​invis/​openSUSE_13.1/​spins:​invis.repo+linux:~ # zypper ar -f http://​download.opensuse.org/​repositories/​spins:/​invis:/stable/​openSUSE_13.1/​spins:​invis:stable.repo
 </​code>​ </​code>​
  
-//​**Hinweis:​** Wer bereits mit der Samba4 / Active Directory basierten Alpha-Version testen möchte muss sich statt dessen das "​spins:​invis:​unstable"​ installieren.//​+oder
  
 <​code>​ <​code>​
-linux:~ # zypper ar http://​download.opensuse.org/​repositories/​spins:/​invis:/​unstable/​openSUSE_13.1/​spins:​invis:​unstable.repo+linux:~ # zypper ar -f http://​download.opensuse.org/​repositories/​spins:/​invis:/​unstable/​openSUSE_13.1/​spins:​invis:​unstable.repo
 </​code>​ </​code>​
  
 Danach kann das Setup-Paket installiert werden: Danach kann das Setup-Paket installiert werden:
 +
 +**Classic:​**
  
 <​code>​ <​code>​
Zeile 116: Zeile 124:
 </​code>​ </​code>​
  
-//**Hinweis:** Im Falle der Samba4 AD basierten Version trägt das Setup-RPM den Namen "**invisAD-setup**".//+**Active Directory:** 
 + 
 +<​code>​ 
 +linux:~ # zypper ref 
 +linux:~ # zypper in invisAD-setup 
 +</code> 
  
 Bei der Ausführung von //**zypper ref**// wird der "​Signierungsschlüssel"​ des invis-Repositories empfangen. Diesem muss //​dauerhaft//​ vertraut werden. Bestätigen Sie die gestellte Frage entsprechend. Bei der Ausführung von //**zypper ref**// wird der "​Signierungsschlüssel"​ des invis-Repositories empfangen. Diesem muss //​dauerhaft//​ vertraut werden. Bestätigen Sie die gestellte Frage entsprechend.
Zeile 141: Zeile 155:
 </​code>​ </​code>​
  
-Das Ergebnis sollte in etwa so aussehen:+//​**Hinweis:​** Kontrollieren Sie beim Setup der Netzwerkkarten mit YaST, dass in den Karteneinstellungen unter Punkt "​General"​ anstelle von "On Cable Connect",​ "At Boot Time" für das initialisieren der Netzwerkkarten eingetragen ist.// 
 + 
 +Nach beenden von YaST, ist das Kommando: 
 + 
 +<​code>​ 
 +linux:~ # rcnetwork restart 
 +</​code>​ 
 + 
 +auszuführen. ​Das Ergebnis sollte in etwa so aussehen:
  
 <​code>​ <​code>​
Zeile 163: Zeile 185:
           RX bytes:0 (0.0 b)  TX bytes:648 (648.0 b)           RX bytes:0 (0.0 b)  TX bytes:648 (648.0 b)
 </​code>​ </​code>​
-Damit ist die Basisinstallation abgeschlossen.+ 
 +Damit sind Basisinstallation ​und Netzwerkkonfiguration ​abgeschlossen.
  
 ===== Anwendug des Setup-Scripts ===== ===== Anwendug des Setup-Scripts =====
Zeile 190: Zeile 213:
  
 Bevor Sie jetzt das Script starten, sollten Sie sich fürs Verständnis dessen, was ein invis-Server ist, folgenden Beitrag durchlesen [[:​invis_server_wiki:​whatis_invis_server|Aufbau und Funktion]]. Bevor Sie jetzt das Script starten, sollten Sie sich fürs Verständnis dessen, was ein invis-Server ist, folgenden Beitrag durchlesen [[:​invis_server_wiki:​whatis_invis_server|Aufbau und Funktion]].
 +
 +//​**Hinweis:​** Die Setups zwischen **invis-server Classic** und **invis-server AD** unterscheiden sich an einigen Stellen voneinander. In der folgenden Beschreibung wird jeweils auf die Unterschiede hingewiesen. Sie sollten die Anleitung allerdings ungeachtet der gewählten Variante komplett lesen!//
  
 ==== Die Module im Einzelnen (Pflichtmodule) ====  ==== Die Module im Einzelnen (Pflichtmodule) ==== 
Zeile 288: Zeile 313:
  
 **invis-Server AD** **invis-Server AD**
 +
 +{{ :​invis_server_wiki:​auswahl_mailserver.png |}}
  
 //​**Achtung:​** Wir haben die Abfrage für die unterschiedlichen Mailserver- bzw. Groupware-Setups in der Fragestunde gelassen. Derzeit funktioniert das Setup aber ausschließlich mit **Zarafa**. Eine Entscheidung,​ wie mit den anderen Optionen verfahren wird steht noch aus und ist unter anderem davon abhängig in wie weit die anderen Systeme eine AD-Integration erwägen.// //​**Achtung:​** Wir haben die Abfrage für die unterschiedlichen Mailserver- bzw. Groupware-Setups in der Fragestunde gelassen. Derzeit funktioniert das Setup aber ausschließlich mit **Zarafa**. Eine Entscheidung,​ wie mit den anderen Optionen verfahren wird steht noch aus und ist unter anderem davon abhängig in wie weit die anderen Systeme eine AD-Integration erwägen.//
Zeile 427: Zeile 454:
 Dies Modul richtet, wie zu vermuten ist, den Druckserver CUPS ein. Auch dieses Modul ist ein Selbstläufer. Dies Modul richtet, wie zu vermuten ist, den Druckserver CUPS ein. Auch dieses Modul ist ein Selbstläufer.
  
-=== Modul: samba ===+=== Modul: ​fileserver (samba & nfs) ===
  
 Die Einrichtung eines LDAP/​Samba-Domaincontrollers erledigt das Modul so gut wie selbsttätig. Dabei legt es die komplette Benutzer- und Gruppen-Struktur,​ wie in einer "​Windows NT Domänenstruktur"​ üblich an. Machen Sie sich später mittels phpLDAPAdmin (zu erreichen über den Administrationsbereich im invis Portal) mit der Struktur vertraut. Dabei entsprechen auch die Gruppen-IDs den entsprechenden RIDs aus der Windows-Welt. ​ Die Einrichtung eines LDAP/​Samba-Domaincontrollers erledigt das Modul so gut wie selbsttätig. Dabei legt es die komplette Benutzer- und Gruppen-Struktur,​ wie in einer "​Windows NT Domänenstruktur"​ üblich an. Machen Sie sich später mittels phpLDAPAdmin (zu erreichen über den Administrationsbereich im invis Portal) mit der Struktur vertraut. Dabei entsprechen auch die Gruppen-IDs den entsprechenden RIDs aus der Windows-Welt. ​
  
-Weiterhin legt das Script unter /srv/shares einige Freigaben (Verwaltung,​ Aktuell, Archiv, Gruppen, Media, Transfer) an. Diese sind in Abhängigkeit des gedachten Verwendungszwecks mit unterschiedlichen Zugriffsrechten versehen. Allen gemeinsam ist das gesetzte SGID-Bit, welches dafür sorgt, dass Dateien und Verzeichnisse die in einer Freigabe angelegt werden von dieser die besitzende Gruppe erben. Dies erleichtert das gruppenweise ​Zusamenarbeiten ​auf dem Fileserver. Schauen Sie sich auch dies fürs Verständnis einmal genauer an. +Weiterhin legt das Script unter /srv/shares einige Freigaben (Verwaltung,​ Aktuell, Archiv, Gruppen, Media, Transfer) an. Diese sind in Abhängigkeit des gedachten Verwendungszwecks mit unterschiedlichen Zugriffsrechten versehen. Allen gemeinsam ist das gesetzte SGID-Bit, welches dafür sorgt, dass Dateien und Verzeichnisse die in einer Freigabe angelegt werden von dieser die besitzende Gruppe erben. Dies erleichtert das gruppenweise ​Zusammenarbeiten ​auf dem Fileserver. Schauen Sie sich auch dies fürs Verständnis einmal genauer an. 
  
 Alle Freigaben sind mit einem "​Netzwerk-Papierkorb"​ ausgestattet. D.H. alle von Anwendern in einer Freigabe gelöschten Dateien und Ordner werden unter Beibehaltung der Verzeichnisstruktur in den Ordner "​.recycle"​ innerhalb der jeweiligen Freigabe verschoben. Um ein Überlaufen der Festplatten zu verhindern werden ältere Dateien automatisch vom Tool //​**clean_recycle**//​ in regelmäßigen Abständen automatisch aus dem Papierkorb entfernt. Alle Freigaben sind mit einem "​Netzwerk-Papierkorb"​ ausgestattet. D.H. alle von Anwendern in einer Freigabe gelöschten Dateien und Ordner werden unter Beibehaltung der Verzeichnisstruktur in den Ordner "​.recycle"​ innerhalb der jeweiligen Freigabe verschoben. Um ein Überlaufen der Festplatten zu verhindern werden ältere Dateien automatisch vom Tool //​**clean_recycle**//​ in regelmäßigen Abständen automatisch aus dem Papierkorb entfernt.
Zeile 451: Zeile 478:
  
 //​**Achtung:​** SSSD ist ein "​caching"​ Daemon. D.h. er speichert Benutzerinformationen aus dem LDAP zwischen. Leider funktioniert (in meinen Augen) das frisch halten des Caches nicht optimal. D.h. Es kann sein, dass sie für frisch angelegte Benutzer oder Gruppen erst nach einigen Minuten Wartezeit Zugriffsrechte im Dateisystem setzen können.// //​**Achtung:​** SSSD ist ein "​caching"​ Daemon. D.h. er speichert Benutzerinformationen aus dem LDAP zwischen. Leider funktioniert (in meinen Augen) das frisch halten des Caches nicht optimal. D.h. Es kann sein, dass sie für frisch angelegte Benutzer oder Gruppen erst nach einigen Minuten Wartezeit Zugriffsrechte im Dateisystem setzen können.//
 +
 +//​**Achtung**:​ Die Funktion Freigaben auch via NFS verfügbar zu machen ist in diesem Modul enthalten, wird aber nicht automatisch aktiviert. Dazu ist etwas manuelle Nacharbeit notwendig. (Siehe unten)//
 === Modul: web === === Modul: web ===
 Wie der Name vermuten lässt geht es hier um die Einrichtung des Webservers Apache, aber auch um die Installation des invis-Portals. Seit invis-Server Version 9.0 ist auch die Einrichtung des Dienstes "​shellinabox"​ Teil dieses Moduls. "​shellinabox"​ ermöglicht den SSH-Login am Server aus dem Webportal des invis-Servers heraus. Wie der Name vermuten lässt geht es hier um die Einrichtung des Webservers Apache, aber auch um die Installation des invis-Portals. Seit invis-Server Version 9.0 ist auch die Einrichtung des Dienstes "​shellinabox"​ Teil dieses Moduls. "​shellinabox"​ ermöglicht den SSH-Login am Server aus dem Webportal des invis-Servers heraus.
Zeile 462: Zeile 491:
 === Module: mysqlserver und postgresqlserver === === Module: mysqlserver und postgresqlserver ===
  
-Das diese beiden Module genau das tun, was die Namen vermuten lassen dürfte selbstverständlich sein. Sie richten sowohl einen MySQL als auch einen PostgreSQL Server ein.+Das diese beiden Module genau das tun, was die Namen vermuten lassen dürfte selbstverständlich sein. Sie richten sowohl einen MySQL, bzw. ab Version 10.0 MariaDB ​als auch einen PostgreSQL Server ein.
  
-Die Frage nache dem "Warum beide" beantworte ich lieber bevor sie gestellt wird. Die in invis Server integrierte Groupware "​Group-e"​ setzt einen MySQL-Server voraus, während das Warenwirtschaftssystem Kivitendo ​und OpenERP ​schlicht PostgreSQL ​benötigen. Beide Systeme haben einfach unterschiedliche Stärken. So profitieren Group-e und Zarafa vermutlich von der Performance des Einen, während Kivitendo ​und OpenERP ​auf die Transaktionssicherheit des Anderen ​bauen+Die Frage nache dem "Warum beide" beantworte ich lieber bevor sie gestellt wird. Die in invis Server integrierte Groupware "​Group-e"​ setzt einen MySQL-Server voraus, während das Warenwirtschaftssystem Kivitendo schlicht PostgreSQL ​benötigt. Beide Systeme haben einfach unterschiedliche Stärken. So profitieren Group-e und Zarafa vermutlich von der Performance des Einen, während Kivitendo auf die Transaktionssicherheit des Anderen ​baut
  
 //​**Hinweis:​** Seit invis Version 7.0 wurde der Start des PostgreSQL Servers optional gestaltet. D.h. PostgreSQL wird installiert und konfiguriert,​ aber nur auf Wunsch gestartet. // //​**Hinweis:​** Seit invis Version 7.0 wurde der Start des PostgreSQL Servers optional gestaltet. D.h. PostgreSQL wird installiert und konfiguriert,​ aber nur auf Wunsch gestartet. //
 +
 +//​**Hinweis:​** Ab invis Server 10.0 (Active Directory) werden die Speicherreservicerungen für die InnoDB-Engine von MariaDB bzw. MySQL dynamisch berechnet und eingerichtet. Dabei kann es vorkommen, dass wenn viel RAM zur Verfügung steht beim ersten Start von MariaDB bzw. MySQL sehr große Dateien auf der Festplatte angelegt werden. Dies kann unter Umständen sehr lange dauern. Wenn es also so aussieht, als würde **sine** still stehen, haben Sie einfach noch ein wenig Geduld. Auch eine etwaige Fehlermeldung des Systemd bez. eines fehlgeschlagenen Start des Dienstes kann getrost ignoriert werden. Systemd fehlt es scheinbar an der notwendigen Geduld.//
  
 {{ :​invis_server_wiki:​32_postgresql.png |}} {{ :​invis_server_wiki:​32_postgresql.png |}}
Zeile 635: Zeile 666:
 Ich werde bei der Dokumentation der Ersteinrichtung der beiden Programme hier nur das Wesentliche erläutern, da beide Programme immer wieder kleineren und größeren Änderungen unterliegen. Ich werde bei der Dokumentation der Ersteinrichtung der beiden Programme hier nur das Wesentliche erläutern, da beide Programme immer wieder kleineren und größeren Änderungen unterliegen.
  
 +==== NFS Fileserver ====
 +
 +... to be continued
 ==== Group-e ==== ==== Group-e ====
  
Zeile 696: Zeile 730:
  
 ==== Kivitendo ==== ==== Kivitendo ====
-Wie auch Group-e, ist Kivitendo nach erfolgreichem Script-Lauf bereits auf dem zukünftigen invis-Server vorinstalliert. Die anfallende Nacharbeit beschränkt sich auf das Anlegen von Datenbanken und Mandanten-Accounts.+Wie auch Group-e, ist Kivitendo nach erfolgreichem Script-Lauf bereits auf dem zukünftigen invis-Server vorinstalliert. Die anfallende Nacharbeit beschränkt sich auf das Anlegen von Datenbanken, Benutzer, Gruppen ​und Mandanten
 + 
 +Eine Umfangreiche Dokumentation zu Kivitendo finden Sie hier: [[https://​steigmann.kivitendo-premium.de/​doc/​html/​]]
  
 //**Dazu zunächst ein Hinweis:** Zwar ist es möglich Kivitendo an eine bestehende LDAP-Benutzeranmeldung anzubinden, allerdings ist es nicht möglich von einem System-Benutzerkonto auf mehrere Mandanten-Datenbanken zuzugreifen. Technisch ausgedrückt können nur "eins zu eins" bzw. "viele zu eins" Beziehungen zwischen Kivitendo-Nutzerkonten und Kivitendo Mandanten-Datenbanken eingerichtet werden. "eins zu viele" Beziehungen,​ wie etwa von Produkten wie Lexware bekannt, sind (noch) nicht möglich. Würde Kivitendo an LDAP angebunden werden, müsste für jede Mandantendatenbank ein System-Benutzerkonto angelegt werden. Da dies auf die Dauer unübersichtlich wird, gehe ich bei der weiteren Beschreibung davon aus, dass Kivitendo eine eigene SQL-Datenbank für Kivitendo-Nutzer pflegt.// //**Dazu zunächst ein Hinweis:** Zwar ist es möglich Kivitendo an eine bestehende LDAP-Benutzeranmeldung anzubinden, allerdings ist es nicht möglich von einem System-Benutzerkonto auf mehrere Mandanten-Datenbanken zuzugreifen. Technisch ausgedrückt können nur "eins zu eins" bzw. "viele zu eins" Beziehungen zwischen Kivitendo-Nutzerkonten und Kivitendo Mandanten-Datenbanken eingerichtet werden. "eins zu viele" Beziehungen,​ wie etwa von Produkten wie Lexware bekannt, sind (noch) nicht möglich. Würde Kivitendo an LDAP angebunden werden, müsste für jede Mandantendatenbank ein System-Benutzerkonto angelegt werden. Da dies auf die Dauer unübersichtlich wird, gehe ich bei der weiteren Beschreibung davon aus, dass Kivitendo eine eigene SQL-Datenbank für Kivitendo-Nutzer pflegt.//
  • invis_server_wiki/installation.txt
  • Zuletzt geändert: 2023/07/26 07:30
  • von flacco