Zugriffsrechte auf gemeinsame Dateien für mehrere User mit bindfs festlegen

Ich stand an mehreren Stellen vor dem Problem, auf einen gemeinsamen Ordner und Dateien mit verschiedenen Benutzern zugreifen zu wollen. Aus Sicherheitsgründen sollten allerdings nicht alle Benutzer Lese- und Schreibrechte haben, sondern ich wollte die Rechte gerne feiner festlegen.

Das Problem

Konkret hatte ich zwei Fälle.

  1. Lokale User sollten über SAMBA Shares lesend und schreibend auf die Files zugreifen können.
  2. Ein lokal installierter Webserver soll nur lesend auf die Dateien zugreifen können
  3. Ein externer Server soll über einen SSH Zugang lesen und schreiben können.

im zweiten Fall sollte

  1. ein Webserver lesend und schreibend auf ein Verzeichnis und Dateien zugreifen können
  2. ein weiterer Benutzer lesend und schreibend auf das selbe Verzeichnis und Dateien zugreifen.

Grundsätzlich lassen sich beide Fälle lösen, indem alle Benutzer die auf das Verzeichnis lesend und schreibend zugreifen können sollen in eine Benutzergruppe gepackt werden und diese als primäre Gruppe festgelegt wird. Dies war auch meine ursprüngliche Lösung.

Weiterlesen

OpenVPN Server mit IPv4 und IPv6

Ich nutze schon länger einen eigenen VPN Server auf Basis von OpenVPN um meinen Internettraffic in öffentlichen, nicht vertrauenswürdigen Netzwerken zu verschlüsseln. Dieser hat allerdings nur einen IPv4 Tunnel unterstützt. Meine wenig zufriedenstellende Lösung für dieses Problem war immer das deaktivieren von IPv6 in solchen Situationen, um sicherzustellen dass keine Daten über die IPv6 Verbindung am VPN vorbei gelangen.

Da ich diese Situation für nicht akzeptabel hielt habe ich schon länger versucht den Server so zu konfigurieren dass der Client auch eine IPv6 Adresse erhält und IPv6 Traffic durch den VPN Tunnel geleitet wird.

Der einfachste Weg dies zu realisieren war lange Zeit die Nutzung der OpenVPN kompatiblen VPN Software pritunl. Pritunl lässt sich schnell einrichten, lässt sich einfach über ein Webinterface konfigurieren und unterstützt auch IPv6.
Allerdings war Pritunl bei mir nie so zuverlässig wie mein alter OpenVPN Server. Außerdem vergibt Pritunl keine öffentlichen IPv6 Adressen an die Clients sondern, sondern private und leitet den Traffic via NAT über die öffentliche Adresse des Servers. Aus diesem Grund war ich mit Pritunl leider auch nicht zufrieden.

Meine Wunsch war der Aufbau eines Tunnels über IPv4 (da eine IPv4 Verbindung i.d.R. immer vorhanden ist). Außerdem sollte darüber der IPv6 Traffic getunnelt werden und die Clients sollen eine öffentliche IPv6 Adresse aus dem /64 des Servers erhalten

Weiterlesen

Ubuntu Homeserver-Virtualisierung mit KVM und QEMU

Seit mehreren Jahren betreibe ich einen Homeserver auf Ubuntu Server Basis, ähnlich wie im Artikel Selbstgebauter Homeserver/NAS mit Ubuntu Server beschrieben. Im Gegensatz zum Artikel befinden sich die Daten jedoch auf einem verschlüsselten Laufwerk. Dies bedeutet dass ich beim Booten des Rechners immer das Passwort zum entschlüsseln der Laufwerke über eine am Homeserver angeschlossene Tastatur eingeben muss. Es hat außerdem den Nachteil dass bei einem unbeabsichtigten Neustart, z.B. aufgrund einer Stromschwankung, der Homeserver solange nicht erreichbar ist bis das Passwort eingegeben wurde. Wenn ich mich in diesem Fall außer Haus befinde kann ich von unterwegs nicht auf meine Daten zugreifen.

Aus diesem Grund habe ich mich als Wochenendprojekt mit der Virtualisierung eines Homeservers beschäftigt. Hierbei wurde ein unverschlüsseltes Hostsystem eingerichtet, was auch nach einem Stromausfall wieder vollständig starten kann. Darauf wurde eine Virtuelle Maschine erstellt, deren virtuelles Laufwerk bei der Installation verschlüsselt wurde. Über eine virtuelle Maschinenverwaltung kann man dann von einem beliebigen Rechner aus das Festplattenpasswort für den Homeserver während des Bootprozesses eingeben.

Das Setup hat außerdem den Vorteil dass nach Bedarf einfach zusätzliche virtuelle Computer erstellt werden können, um z.B. Software zu testen oder ein anderes Betriebssystem zu nutzen.

Zur Virtualisierung habe ich KVM verwendet und zur Verwaltung den virt-manager.

Weiterlesen

Nextcloud/Owncloud File Cache aktualisieren

Ich hatte das Problem das meine Nextcloud-Installation Datein, welche nicht über das Webinterface hochgeladen wurden, sondern direkt auf dem Server erzeugt wurden nicht im Webinterface angezeigt hat.

Wenn Nextcloud/Owncloud vorhandene Dateien ignoriert hilf das manuelle aktualisieren des file caches mit folgendem Befehl:

sudo -u www-data php /pfad/zu/nextcloud/console.php files:scan --all

Je nach Größe der Nextcloud Installation kann der Scan eine ganze Weile dauern. Anschließend sind jedoch auch die bisher nicht erkannten Dateien im Webinterface sichtbar.

Weiterlesen

Nginx Logfiles anonymisieren und mit AWstats auswerten

Bei AWStats handelt es sich um ein recht bekanntes Werkzeug zum Auswerten von Serverlogfiles. Es eignet sich wunderbar um einen Eindruck davon zu bekommen wie häufig eine Webseite aufgerufen wird und auch welche Beiträge am beliebtesten sind. Eine Demo des Tools findet sich auf der offiziellen Webseite des Projekts. Der Vorteil gegenüber richtigen Tracking Lösungen wie Google Analytics oder Piwik ist, dass nur Daten ausgewertet werden welche sowieso schon in den Serverlogfiles vorhanden sind. Da keine zusätzlichen Daten über Cookies oder Javascript Code erfasst wird ist das Tracking allerdings auch weniger genau.

Ein Problem bei der Auswertung von Serverlogs ist dass in der Standardkonfiguration alle Webserver die vollständige IP Adresse der Besucher speichern. Auch wenn dies rechtlich noch nicht abschließend geklärt sein mag, handelt es sich nach Ansicht vieler Fachleute bei der IP Adresse um ein personenbezogenes Datum, welches ohne ausdrückliche Einwilligung des Besuchers nicht ausgewertet werden darf. Aus rechtlichen Erwägungen und aus Respekt vor der Privatsphäre der Webseitenbesucher müssen die Logfiles also zuerst einmal anonymisiert, also mit verkürzeter IP Adresse gespeichert werden.

Der nächste Stolperstein ist Nginx selber. AWStats liegt als Perl Skript vor, welche von Nginx selbst jedoch nicht ausgeführt werden können.

Weiterlesen

Postfix mit Domainfactory als Smarthost konfigurieren

Im Artikel Postfix mit Gmail als Smarthost konfigurieren habe ich beschrieben wie man auf einem Ubuntu Server Postfix installiert und so konfiguriert dass der Computer mit Postfix über den Google Mailserver Emails verschicken kann. Dies ist sinnvoll um sich bei bestimmten Ereignissen automatisch informieren zu lassen.

Dieser Beitrag zeigt, ergänzend zum Artikel Postfix mit Gmail als Smarthost konfigurieren wie die Konfiguration aussehen kann um über seinen bei Domainfactory registrierte Domain bzw. Emailadresse Mails via Postfix zu versenden.

Weiterlesen

Teil 8 – Selbstgebauter Homeserver/NAS: Backup

Dieser Artikel ist Teil der Reihe Selbstgebauter Homeserver/NAS mit Ubuntu Server


Da auf dem Homeserver, bzw. NAS alle wertvollen Daten gespeichert werden, sollen diese natürlich auch entsprechend gesichert werden. Vor einem Festplattenausfall schützt zwar das RAID, nicht jedoch vor versehentlichem, oder absichtlichem löschen von Dateien.

In diesem Artikel beschreibe ich zwei Backuplösungen, die beide parallel eingesetzt werden.

Einerseits findet ein tägliches, automatisches und verschlüsseltes Backup auf einen Cloudspeicher statt. Dieses ist stets aktuell und sichert außerdem auch den Zugriff auf die Dateien im Falle eines Wohnungsbrandes oder Diebstahls der eigenen Hardware. Durch die oftmals eingeschränkte Internetanbindung Zuhause und die Kosten für Cloudspeicherplatz ist es evtl. sinnvoll hier nicht alle Dateien zu sichern, und z.B. große Videodateien von der Cloudsicherung auszunehmen.

Zusätzlich werden ALLE Daten in unregelmäßigen Abständen manuell auf eine externe Festplatte gesichert. Diese Backup ist somit nicht immer ganz aktuell, enthält jedoch alle Dateien und ist im Normalfall nicht an einen Rechner angeschlossen. Dies schützt vor einem Amok laufenden Backupprogramm, sowie vor böswilligem löschen der Backups durch eine Person die sich unberechtigten Zugriff auf unser, oder das Cloudsystem verschafft haben könnte.

Das Cloudbackup

Hierfür nutze ich Duplicati 2.0, welches noch in der Preview Phase ist, bei mir jedoch seit vielen Monaten zuverlässig seinen Dienst tut. Das Programm unterstützt die Verschlüsselung von Backups, sowie eine Vielzahl an Speicheranbietern wie Amazon S3, Dropbox, Google Drive, Microsoft Azure, Microsoft One Drive oder den Zugriff via WebDAV, SSH oder das unsichere FTP. Das Backupprogramm lässt sich entweder über die Kommandozeile, oder bequem im Browser über ein Webinterface steuern.

Weiterlesen

Teil 7 – Selbstgebauter Homeserver/NAS: Musik- und Videostreaming mit Subsonic

Dieser Artikel ist Teil der Reihe Selbstgebauter Homeserver/NAS mit Ubuntu Server


Eine weitere Anforderung an meinen Homeserver war die Fähigkeit zum streamen meiner Musik- und Videobibliothek über das Internet. Dabei ging es mir vor allem darum Musik über das Smartphone hören zu können und Videos von unterwegs auf den Laptop zu streamen. Ich habe zwei Programme gefunden die diese Wünsche erfüllen. Das eine ist der Plex Mediaserver, das andere ist Subsonic. Beide Programme sind für Linux verfügbar und beide Programme sind außerdem in der Lage Musik und Videos im laufenden Betrieb auf eine andere Bitrate umzurechnen, so dass eine Übertragung auch bei schlechter (z.B. mobiler) Internetverbindung möglich ist. Konfiguriert werden beide über ein Webinterface über den Browser. Außerdem gibt es für beide Programme Smartphone Apps für die gängigen Plattformen. Beide Programme können mit Einschränkungen kostenlos genutzt werden, der volle Funktionsumfang ist jedoch kostenpflichtig.

Weiterlesen

Teil 6 – Selbstgebauter Homeserver/NAS: Dateizugriff via Browser und Dateisync mit Owncloud

Dieser Artikel ist Teil der Reihe Selbstgebauter Homeserver/NAS mit Ubuntu Server


Im letzten Teil wurden die Vorbereitungen getroffen um Anwendungen wie Owncloud zu installieren. Owncloud ist eine Software die Funktionen wie das bekannte Dropbox anbietet. Im Gegensatz zu Dropbox wird Owncloud jedoch auf dem eigenen Server installiert, so dass keine privaten Daten in fremde Hände gelangen.

Außerdem ermöglicht Owncloud auf die Anzeige von Bildern, das abspielen von Musik oder das bearbeiten von Dokumenten.

Anlegen der MySQL Datenbank für Owncloud

Bevor wir Owncloud installieren legen wir eine MySQL Datenbank an. Dafür loggen wir uns mit dem Username root und dem MySQL Administrationspasswort bei phpMyAdmin unter https://192.168.30.100/phpmyadmin ein.

Dort gehen wir in der oberen Leiste auf Users und dann auf Add User.
Hier werden die Felder wie im Bild ausgefüllt, ein Passwort kann direkt in phpMyAdmin generiert werden. Wenn man diese Funktion nutzt sollte man das Passwort unbedingt aufschreiben, da diese später wieder benötigt wird.

Mit Go wird der User Owncloud und die gleichnamige Datenbank angelegt.

Weiterlesen

Teil 5 – Selbstgebauter Homeserver/NAS: Apache Webserver PHP und MySQL Datenbank installieren

Dieser Artikel ist Teil der Reihe Selbstgebauter Homeserver/NAS mit Ubuntu Server


In Teil 4 wurde mit SAMBA der erste Dienst installiert. Damit ist es nun möglich im eigenen Heimnetz Dateien mit dem Homeserver auszutauschen. In diesem Teil wird der Apache Webserver mit PHP und MySQL Datenbank installiert. Dies ist nötig um anschließend Owncloud installieren zu können und damit auch über das Internet zugriff auf den Homeserver zu bekommen. bzw um Dateien über mehrere Rechner zu synchronisieren.

MySQL wird einerseits als Datenbank für Owncloud, als auch als gemeinsame Datenbank für mehrere Kodi Mediacenter verwendet.

Apache installieren und konfigurieren

Installiert wird der Apache und PHP aus den offiziellen Paketquellen

sudo apt-get install apache2 php5

Anschließend ist der Webserver direkt einsatzbereit. Wenn man in seinen Browser die Adresse des Homeservers (in unserem Fall also http://192.168.178.100) eingibt, erschein die Apache2 Standardseite.

Weiterlesen

1 2 3 6