tipps_und_tricks

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
tipps_und_tricks [2011/12/30 08:02]
flacco
tipps_und_tricks [2018/12/15 13:20]
flacco [Zarafa-Pakete installieren]
Zeile 2: Zeile 2:
 In diesem Bereich des Wikis werden sporadisch Kurzanleitungen,​ Workarounds usw. zu verschiedenen Themenbereichen auftauchen. ​ In diesem Bereich des Wikis werden sporadisch Kurzanleitungen,​ Workarounds usw. zu verschiedenen Themenbereichen auftauchen. ​
  
-===== VirtualBox ​===== +===== Rettungsumgebung (Chroot) ​=====
-Da der invis Server auch in Form virtueller Maschinen nutzbar ist und wir auf Messen gelegentlich entsprechende Images verteilen, beginnt die Tipps und Tricks Ecke mit einem Verweis auf VirtualBox - unserem favorisierten Virtualisierungssystem. Da mit einigen Einträgen zum Thema VirtualBox zu rechnen sein wird, widme ich diesem Thema eine eigene Wiki-Seite.+
  
-[[:​tipps_und_tricks:​virtualbox| Tipps und Tricks ​zu VirtualBox]]+Wie ich selbst leidvoll erkennen musste, taugt die openSUSE Rettungsumgebung nicht dazu eine vollständige "​Chroot"​ Umgebung aufzubauen um an einem nicht mehr startenden System ​zu arbeiten. Daher hier eine kurze Anleitung zur Realisation einer Chroot-Umgebung für openSUSE.
  
-===== Windows 7 =====+Schritt 1 ist statt des Rettungssystems ein openSUSE-Live-System zu starten.
  
-Windows 7 stellt an invis Administratoren neue Aufgaben. Eine davon ist ein sauberer Domänenbeitritt.+Danach können Schritt für Schritt alle Teilverzeichnissysteme zu einer vollständigen Umgebungzusammen gesetzt werdenIm Folgenden wird dies basierend auf unserer Partitionierungsempfehlung mit Software-RAID und LVM vorgenommen:​
  
-[[:tipps_und_tricks:win7dom|Domänenbeitritt mit Windows 7]]+<​code>​ 
 +linux:~ # mount /​dev/​system/​root /mnt 
 +linux:~ # mount /​dev/​system/​var /mnt/var 
 +linux:~ # mount /dev/mdXXX /mnt/boot 
 +</​code>​
  
-===== Linux-Clients und NFS-Fileserver ===== +**mdXXX** steht für das Software-RAID Device ​auf dem das /boot-Verzeichnis liegtLeider nummeriert die Live-Umgebung SW-RAID Devices anders durchals das installierte SystemKann also sein, das aus /dev/md0 im realen System /dev/md127 in der Live-Umgebung wird. Einfach ausprobieren.
-Die Gruppen-basierte Zusammenarbeit ​auf einem Linux-Fileserver gestaltet sich schwierig, wenn diese per NFS auf den Fileserver zugreifenZwar lassen sich mit gesetztem SGID-Bit auf den Freigabe-Verzeichnissen Gruppen-Besitzrechte auf alle Objekte im Ordner vererbennicht aber die ZugriffsrechteLetztere sind von der "​umask"​ abhängig.+
  
-Auf openSUSE-Systemen ist die vorgegebene umask "​022",​ was bedeutet, das neu angelegte Dateien und Verzeichnisse ​für die besitzende Gruppe kein Schreibrecht gewähren:+Dann müssen noch die speziellen ​Verzeichnisse ​hinzugefügt werden:
  
 <​code>​ <​code>​
-Verzeichnis +linux:~ # mount -t proc none /mnt/proc 
-         | u | g | o | +linux:~ # mount -t sysfs non /mnt/sys 
----------------------+linux:~ # mount -o bind /dev /mnt/dev
-Default ​ | 7 | 7 | 7 | +
-umask    | 0 | 2 | 2 | +
----------------------+
-Ergebnis | 7 | 5 | 5 | = rwx,​r-x,​r-x +
- +
-Datei +
-Default ​ | 6 | 6 | 6 | +
-umask    | 0 | 2 | 2 | +
----------------------- +
-Ergebnis | 6 | 4 | 4 | = rw-,r--,r--+
 </​code>​ </​code>​
  
-Um pauschal auch für die besitzende Gruppe Schreibrecht zu gewähren muss die umask auf den Wert "​002"​ geändert werden:+(Genau der Teil funktioniert mit dem einfachen Rettungssystem nicht!)
  
-<​code>​ +Damit ist die Chroot-Umgebung fertig und kann betreten werden:
-Verzeichnis +
-         | u | g | o | +
----------------------- +
-Default ​ | 7 | 7 | 7 | +
-umask    | 0 | 0 | 2 | +
----------------------- +
-Ergebnis | 7 | 7 | 5 | = rwx,rwx,r-x+
  
-Datei +<​code>​ 
-Default ​ | 6 | 6 | 6 | +linux:~ # chroot /mnt
-umask    | 0 | 0 | 2 | +
----------------------- +
-Ergebnis | 6 | 6 | 4 | = rw-,rw-,r--+
 </​code>​ </​code>​
  
-Die umask ist prinzipiell Benutzer-bezogen. Sie kann an mehreren Stellen ​im System ​geändert ​werden. ​Wichtig dabei ist, dass die Änderung auf dem Fileserver-Client wirksam ist. Eine Änderung auf dem Server selbst, etwa in /​etc/​profile o.ä. bleibt wirkungslos.+Jetzt kann im installierten ​System ​gearbeitet ​werden. ​Sie können hier beispielsweise Grub reparieren oder eine neue inird erzeugen.
  
-Da openSUSE ​mit dem "​pam_umask"​ Modul arbeitetkann die umask auch in den Einstellungen ​der einzelnen Benutzerkonten vorgenommen ​werden. ​Eingetragen wird eine persönliche umask in das "Gecos-Feld"Hier ein Auszug aus einer entsprechend ​angepassten passwd-Datei:+Verlassen wird es einfach ​mit //​**exit**//​ 
 + 
 + 
 + 
 + 
 + 
 + 
 +===== Zarafa License-Daemon im Eigenbau ===== 
 + 
 +Offiziell wird openSUSE als Basis einer Zarafa-Version nicht unterstütztwas unter anderem dazu führt, dass weder Zarafa-Backup noch der License-Daemon dafür zur Verfügung stehen. Beide Tools enthalten Closed-Source-Komponenten und sind damit nicht Bestandteil der Open-Source-Pakete ​die wir in unserem Build-Service-Repository vorhalten. 
 + 
 +Sie sind aber Bestandteil ​der Free-Edition und können somit kostenlos genutzt ​werden, allerdings nur auf unterstützten Plattformen,​ wie etwa Ubuntu LTS. 
 + 
 +Problematisch ist grundsätzlich,​ dass Zarafa seine eigene Software meist statisch gegen vorhandene System-Libraries linkt. Da sich diese von Distribution zu Distribution ​in Ihren Versionen unterscheiden,​ ist es nicht möglich SLES oder RedHat-Pakete einfach unter openSUSE zu nutzen. 
 + 
 +Möglich ist aber den License-Daemon in einer Art Sandbox laufen zu lassen, in der er alle Libraries hat, die er benötigt. Die folgende Beschreibung erläutert den Aufbau der Sandbox auf einem Ubuntu-LTS System 
 + 
 +==== VM einrichten ==== 
 +Zunächst muss dafür ein Ubuntu-LTS System installiert werden, hier empfiehlt sich die Arbeit mit Virtualbox. Entgegen der Angaben im Zarafa-Wiki spielt die Architektur der Sandbox sehr wohl eine Rolle. Da wir unsere invis-Server immer als 64Bit Systeme installieren,​ nutzen wir entsprechend ​auch ein 64Bit Ubuntu als Basis. 
 + 
 +Zusätzlich zur einfachen Standard-Installation wird das Software-Paket **mklibs** benötigt:
  
 <​code>​ <​code>​
-... +heinz@ubuntu:~$ sudo apt-get install mklibs
-stefan:x:​10000:​100:​Stefan Schäfer,​umask=002:/​local/​home/​stefan:/​bin/​bash +
-...+
 </​code>​ </​code>​
  
-Da invis Server eine LDAP-basierte zentrale Benutzerverwaltung anbieten, **muss** die gezeigte Anpassung selbstverständlich im LDAP-Verzeichniseintrag der einzelnen Benutzer vorgenommen werden.+Wenn Sie Ihre Sandbox unter SLES bauen möchtenwerden Sie feststellen,​ dass es für SUSE-Linuxe das Paket **mklibs** nicht gibtAbhilfe schaft ein gleichnamiges Shellscript:​ [[https://​github.com/​blunderer/​mklibs]] 
 +==== Zarafa-Pakete herunterladen und entpacken ====
  
-Melden Sie sich dazu über den Link "​Verzeichnisdienst" ​auf der Administrationsseite des Portals am LDAP-Verzeichnis an und ändern Sie das Feld "​gecos"​ betroffenen Benutzereinträge wie folgt ab:+Benötigt wird die zur installierten VM passende Zarafa Free-Edition,​ zu finden ​auf dem Zarafa-Download-Server:​ http://​download.zarafa.com/​community
  
-DNuid=**username**,​ou=Users,​ou=Benutzerverwaltung,​dc=**invis-net**,​dc=loc +<​code>​ 
- +heinz@ubuntu:~$ wget http://​download.zarafa.com/​community/​final/​7.0/​7.0.8-35178/​zcp-7.0.8-35178-ubuntu-10.04-x86_64-free.tar.gz 
-Von"​System User" zu "​System User,​umask=002"​+.... 
 +heinz@ubuntu:~$ tar -xzvf zcp-7.0.8-35178-ubuntu-10.04-x86_64-free.tar.gz 
 +</​code>​
  
-Ab invis Version 6.7-R3 entspricht dies der Vorgabe, wenn Benutzer über das invis-Portal angelegt werden. Die Vorgabe kann in der Datei "/​srv/​www/​htdocs/​portal/​config.php"​ an die eigenen Wünsche angepasst werden. 
  
 ===== Speicherüberlauf Cyrus Index-DB ===== ===== Speicherüberlauf Cyrus Index-DB =====
Zeile 130: Zeile 132:
  
 Danach kann man sich wieder als Benutzer "​config"​ mit dem Passwort "​config"​ anmelden. Danach kann man sich wieder als Benutzer "​config"​ mit dem Passwort "​config"​ anmelden.
 +
  
 ===== Nein Danke Zensursula ===== ===== Nein Danke Zensursula =====
Zeile 162: Zeile 165:
 neu.  neu. 
  
-===== Deeplinks verhindern ===== 
-Wenn der Webserver eines invis Servers auch via HTTPs aus dem Internet erreichbar ist, können die einzelnen Applikationen derzeit noch durch direkte Eingabe der Zieladresse im Browser ohne Umweg über das invis Portal erreicht werden. 
- 
-Dieses Verhalten ist aus Sicherheitsgründen eher bedenklich und in der Regel nicht erwünscht. Um dies zu verhindern muss die Apache-Konfigurationsdatei /​etc/​apache2/​vhosts.d/​i7ssl.conf erweitert werden. 
- 
-Tragen Sie dort für jede Applikation die nicht direkt angesprochen werden soll folgenden Eintrag ein: 
- 
-<​code>​ 
-    # Deeplinks verhindern 
-    <​Directory /​srv/​www/​htdocs/​phpMyAdmin>​ 
-        SetEnvIfNoCase Referer "​^http://​invis.invis-net.loc"​ dontblock 
-        SetEnvIfNoCase Referer "​^https://​your.dyndns-domain.net"​ dontblock 
-        Order Deny,Allow 
-        Deny from all 
-        Allow from env=dontblock 
-    </​Directory>​ 
-</​code>​ 
- 
-Das Beispiel zeigt den Deeplink-Schutz für das Verzeichnis von phpMyAdmin. Sie müssen lediglich die Domain-Namen an Ihre Gegebenheiten anpassen und den Apache neustarten. Danach sind die geschützten Applikationen nur noch über das invis-Portal erreichbar. 
- 
- 
-Die gezeigten Einträge sind ab invis Release 6.6-R4 generell für alle Applikationen Standard. 
  
 ===== Faxgate-Client unter Linux nutzen ===== ===== Faxgate-Client unter Linux nutzen =====
  • tipps_und_tricks.txt
  • Zuletzt geändert: 2018/12/15 14:05
  • von flacco