Apfelinsel
Anleitungen und FAQ => Thema gestartet von: MacFlieger am März 21, 2018, 10:49:03
-
Zum Abgleich von Adressen und Kalender zwischen mehreren Rechnern und iOS-Geräten möchte ich aus bekannten Gründen keine fremde Cloud (z.B. iCloud oder Google) benutzen.
Ich habe nun schon einige Zeit zunächst ownCloud und später Nextcloud auf einem Raspberry Pi 2 bzw. 3 installiert und es funktionierte als persönliche Cloud vom Prinzip her gut.
Bei Nextcloud hat mir besser gefallen, dass auch Updates für Nextcloud selber und die Apps besser konzipiert und somit mit weniger Arbeit umsetzbar sind.
Nachteilig war bei mir, dass die verwendete SD-Karte in regelmäßigen Abständen (manchmal nach 2 Monaten, manchmal nach 2 Wochen) kaputt ging und dann entweder Nextcloud oder der Raspberry selber nicht mehr starteten. Dann musste ich jedes Mal ein altes Image der SD-Karte neu drauf kopieren und das neueste Backup der Nextcloud-Dateien zurückkopieren. Das ist zwar machbar, aber doch nervig.
Das ganze soll daran liegen, dass SD-Karten nicht für so viele Schreibzyklen geeignet sind und daher schnell kaputt gehen können.
Seit dem Raspberry Pi 3 kann man aber auch von einem USB-Stick oder per USB angeschlossener Platte/SSD booten und benötigt keine SD-Karte mehr. Außerdem ist der Zugriff auf ein USB-Medium schneller als auf die SD-Karte.
Zudem gibt es nun ein Projekt mit einem vorinstallierten System für Nextcloud auf einem Raspberry Pi, welches einem die viele Handarbeit beim Installieren und Konfigurieren abnimmt bzw. erleichtert: NextCloudPi (https://ownyourbits.com)
Daher hier nun eine neue Anleitung zu diesem Thema.
In diesem Thread werde ich zusammenfassen, was ich wie gemacht habe. Da nicht alle Schritte für alle interessant sind, fasse ich jeweils ein Thema in einem Beitrag zusammen und verlinke in diesem ersten Beitrag nur zu diesem Thema.
1. Was will ich mit Nextcloud umsetzen und welche Voraussetzungen bestehen (https://www.apfelinsel.de/forum/index.php/topic,7469.msg107929.html#msg107929)
2. NextCloudPi auf die SD-Karte und USB-Medium kopieren (https://www.apfelinsel.de/forum/index.php/topic,7469.msg107930.html#msg107930)
3. Grundlegende Konfiguration (https://www.apfelinsel.de/forum/index.php/topic,7469.msg107931.html#msg107931)
4. DNS-Eintrag und Router-Weiterleitung konfigurieren (https://www.apfelinsel.de/forum/index.php/topic,7469.msg107999.html#msg107999)
5. Konfiguration von NextCloudPi (https://www.apfelinsel.de/forum/index.php/topic,7469.msg108003.html#msg108003)
6. Nextcloud einrichten (https://www.apfelinsel.de/forum/index.php/topic,7469.msg108004.html#msg108004)
7. Einrichten des Kalenderabgleiches (CalDAV) (https://www.apfelinsel.de/forum/index.php/topic,7469.msg108005.html#msg108005)
8. Einrichten des Kontaktabgleiches (CardDAV) (https://www.apfelinsel.de/forum/index.php/topic,7469.msg108006.html#msg108006)
9. Dateiserver mit Synchronisierung (https://www.apfelinsel.de/forum/index.php/topic,7469.msg108007.html#msg108007)
10. Dateiserver einrichten (NAS) (https://www.apfelinsel.de/forum/index.php/topic,7469.msg108009.html#msg108009)
11. Nützliche Skripte und Backup (https://www.apfelinsel.de/forum/index.php/topic,7469.msg108010.html#msg108010)
12. Ergänzungen und Tipps (https://www.apfelinsel.de/forum/index.php/topic,7469.msg108011.html#msg108011)
13. SSH-Login mit Schlüsselauthentifizierung (https://www.apfelinsel.de/forum/index.php/topic,7469.msg108012.html#msg108012)
-
1. Was will ich mit Nextcloud umsetzen und welche Voraussetzungen bestehen
Was will ich mit Nextcloud erreichen?
- Wichtigster Punkt ist der Abgleich von Adressen und Kalendern zwischen verschiedenen Rechnern und iOS-Geräten.
- Ebenso möchte ich Dateien ablegen können und diese mit den Geräten synchronisieren wie mit Dropbox.
- Die Daten auch über eine Weboberfläche erreichen und bearbeiten zu können ist für mich unwichtig, aber möglich.
- Ich möchte meine Cloud über einen einfachen Namen (z.B. cloud.apfelinsel.de) erreichen können.
- Ich möchte eine SSL-Verschlüsselung bei der Datenübertragung haben.
- Ich möchte keine Warnung vor einem ungültigen SSL-Zertifikat bekommen.
- Ich möchte die Daten verschlüsselt ablegen.
Was benötigt man?
Prinzipiell läuft Nextcloud auf jedem Webserver mit PHP und Datenbank.
Ich habe Nextcloud auf einen Raspberry Pi 3 mit Raspbian Jessie installiert. Man braucht also
- Raspberry Pi 3
- Netzteil mit 2A
- Micro-SD-Karte Class 10 (nur einmalig beim Einrichten)
- USB-Stick oder externe USB-Festplatte/SSD
- Netzwerkkabel
- evtl. Gehäuse für den Raspberry
Für meine Wünsche (s.o.) muss noch folgendes vorhanden sein:
- Internet-Anschluss mit öffentlicher IPv4- oder IPv6-Adresse
- Eigene Domain bei einem Provider mit Zugriff auf die DNS-Einstellungen
Vorgaben in dieser Anleitung
Einige der in dieser Anleitung erwähnten Namen muss man natürlich an die eigenen Gegebenheiten anpassen (diese werde ich jeweils rot färben), z.B.:
- hsdbdhsurf74hb3s.myfritz.net - der von dem Dienst MyFritz vergebene Name der eigenen Fritzbox.
- raspberry.hsdbdhsurf74hb3s.myfritz.net - der von dem Dienst MyFritz vergebene Name für den Raspberry.
- cloud4.apfelinsel.de - Domainnamen unter der Nextcloud später per IPv4 erreichbar sein soll. Die Unterdomain "cloud4" kann völlig frei benannt werden, die Hauptdomain "apfelinsel.de" muss gegen eure eigene ausgetauscht werden.
- cloud6.apfelinsel.de - Domainnamen unter der Nextcloud später per IPv6 erreichbar sein soll. Die Unterdomain "cloud6" kann völlig frei benannt werden, die Hauptdomain "apfelinsel.de" muss gegen eure eigene ausgetauscht werden.
Varianten in dieser Anleitung
Prinzipiell muss der eigene Anschluss von aussen erreichbar sein. Dazu benötigt man eine öffentliche IPv4- oder IPv6-Adresse. Da die IPv4-Adressen mittlerweile ausgegangen sind und der längst überfällige Wechsel auf IPv6 ansteht, vergeben viele Kabelnetzbetreiber und kleinere Provider keine öffentlichen IPv4-Adressen mehr, sondern schalten den Anschluss in der sogenannten "Dual-Stack-Lite"-Variante. Dabei kann man zwar von innen heraus per IPv4 alles erreichen, aber eben nicht von außen, da man keine öffentliche IPv4-Adresse hat und keine Weiterleitung einrichten kann.
In der Fritzbox kann man sehen, welche IPv4-Adresse zugeteilt wurde und ob man eine IPv6-Adresse bekommt (evtl. muss man dazu erst IPv6 in der Fritzbox aktivieren). Auf der Website www.wieistmeineip.de kann man sehen, mit welcher öffentlichen IPv4-Adresse man im Internet sichtbar ist. Ist diese identisch mit der IPv4-Adresse, die die Fritzbox bekommen hat, so hat man eine öffentliche Adresse. Leider ist es aktuell noch nicht vollständig möglich auf IPv6 umzustellen, da es immer noch einige Netzbetreiber (gerade Mobilfunk) gibt, die noch nicht vollständig umgestellt haben. Daher ist es in diesen Fällen noch nicht möglich komplett auf IPv6 zu wechseln.
Es gibt nun drei verschiedene Möglichkeiten:
Variante A: Zugriff nur über IPv4
Diese Variante funktioniert nur, wenn man eine öffentliche IPv4-Adresse bekommt.
Variante B: Zugriff nur über IPv6
Diese Variante funktioniert nur, wenn man eine öffentliche IPv6-Adresse bekommt und überall über einen IPv6-Zugang verfügt.
Variante C: Zugriff über IPv4 und IPv6
Diese Variante funktioniert, wenn man eine öffentliche IPv6-Adresse bekommt. Zusätzlich muss man entweder eine öffentliche IPv4-Adresse bekommen oder einen kostenpflichtigen (aktuell 5€ im Jahr) Portmapper von IPv4 auf IPv6 verwenden. Dann können auch Geräte zugreifen, die nicht über eine IPv6-Verbindung verfügen.
-
2. NextCloudPi auf die SD-Karte und USB-Medium kopieren
Als erstes lädt man das aktuelleste NextCloudPi-Image (https://ownyourbits.com/downloads/) herunter und entpackt es. Ich habe das "NextCloudPi_03-17-18" genommen.
Um die Datei nun auf die SD-Karte und USB-Medium zu bekommen, benötigt man das Terminal oder ein Hilfsprogramm (z.B. ApplePi-Baker (http://www.tweaking4all.com/hardware/raspberry-pi/macosx-apple-pi-baker/))
Variante mit ApplePi-Baker:
Nach Start des Programmes und Einlegen der SD-Karte bzw. USB-Medium wählt man links in der Mitte unter "Pi-Crust" die gewünschte SD-Karte aus.
Zum Installieren des Images klickt man rechts in der Mitte unter "Pi-Ingredients" auf "Restore Backup" und wählt die Image-Datei aus. Danach werden alle notwendigen Schritte automatisch durchgeführt.
Das Programm kann auch zum einfachen Erstellen von Backups der SD-Karte benutzt werden.
Variante mit dem Terminal:
Zunächst ruft man einmal den folgenden Befehl auf:
df -h
Dann die SD-Karte bzw. USB-Medium mit dem Mac verbinden.
Wieder den Befehl im Terminal aufrufen:
df -h
Nun müsste ein weiteres Gerät in der Ausgabe zu sehen sein. Für die weiteren Schritte muss man sich den Volumenamen, z.B. /dev/disk8s1, merken und die folgenden Befehle entsprechend ändern!
Das Volume muss deaktiviert (unmount), das Gerät aber nicht ausgeworfen (eject) werden. Daher:
sudo diskutil unmount /dev/disk8s1
Nun benötigt man zusätzlich den Gerätenamen. Man erhält ihn, indem man bei dem Volumenamen das "s1" am Ende weglässt und "disk" gegen "rdisk" austauscht. D.h. in meinem Beispiel gehört zum Volumennamen /dev/disk8s1 der Gerätename /dev/rdisk8. Es ist sehr wichtig, hier den korrekten Namen zu verwenden, da das entsprechende Gerät in den weiteren Schritten komplett überschrieben wird.
Nun kann man die Imagedatei auf die SD-Karte bzw. USB-Medium kopieren. Bitte bei der Eingabe alles genau überprüfen. Hinter "if" muss die Imagedatei (evtl. inklusive Pfad angegeben werden. Hinter of dann den Gerätename der SD-Karte:
sudo dd bs=1m if=2015-11-21-raspbian-jessie.img of=/dev/rdisk8
Das Programm dd liefert gar keine Rückmeldung darüber, dass es läuft. Solange nichts ausgegeben wird, muss man warten. Wird wieder die Eingabeaufforderung ohne Fehlermeldung ausgegeben, hat das Übertragen funktioniert.
Nun nur noch die SD-Karte bzw. USB-Medium auswerfen (eject) und danach aus dem Mac entfernen:
sudo diskutil eject /dev/rdisk8
Quellen:
https://www.raspberrypi.org/documentation/installation/installing-images/mac.md
http://www.tweaking4all.com/hardware/raspberry-pi/macosx-apple-pi-baker/
-
3. Grundlegende Konfiguration
Raspberry zusammenbauen/anschliessen
Nun wird die Micro-SD-Karte in den Raspberry eingelegt, eine USB-Tastatur, das Netzwerkkabel und ein Monitor/Fernseher über HDMI angeschlossen.
Danach das Netzteil an den Micro-USB-Anschluss anschliessen und der Raspberry sollte booten und nach einiger Zeit eine Login-Aufforderung anzeigen.
Umschalten auf Booten von USB-Medium
Man kann sich mit den Standarddaten am Raspberry anmelden (Benutzer: pi, Kennwort: raspberry). Hierbei ist allerdings zu beachten, dass momentan eine englische Tastatur eingestellt ist und man daher das y durch die Z-Taste eingeben muss.
Dann wird der USB-Boot-Modus aktiviert und neu gestartet.
Wegen der englischen Tastatur gelten folgende Regeln:
_ bekommt man mit ?
= bekommt man mit ´
| bekommt man mit >
- bekommt man mit ß
/ bekommt man mit -
: bekommt man mit Ö
echo program_usb_boot_mode=1 | sudo tee -a /boot/config.txt
sudo reboot
Nach dem Neustart überprüfen, ob der Parameter richtig gesetzt wurde. Es muss 17:3020000a ausgegeben werden:
vcgencmd otp_dump | grep 17:
Danach kann der Raspberry abgeschaltet, und die SD-Karte entfernt werden.
Konfiguration
Nach Anschliessen des USB-Medium und Starten des Raspberry kann man sich mit den Standarddaten am Raspberry anmelden (Benutzer: pi, Kennwort: raspberry). Hierbei ist allerdings zu beachten, dass momentan eine englische Tastatur eingestellt ist und man daher das y durch die Z-Taste eingeben muss.
Im Anschluss wird das Konfigurationsprogramm gestartet. Auch hier muss man wegen der englischen Tastatur das Minuszeichen durch die ß-Taste eingeben:
sudo raspi-config
Innerhalb des Konfigurationsprogrammes wird mit den Cursor- und der Return-Taste navigiert.
Folgendes wird eingestellt:
- Punkt "Localisation Options":
- Bei "Change Locale": "de_DE.UTF-8" mit der Leertaste auswählen, das vorselektierte "en_GB.UTF-8" mit der Leertaste deselektieren und mit RETURN bestätigen. Danach die Option "de_DE-utf-8" auswählen und mit RETURN bestätigen.
- Bei "Change Timezone": Als Area "Europe" und als Location "Berlin" wählen.
- Bei "Change Keyboard": Als Tastatur entweder "Generic 105-key (Intel) PC" oder "Macintosh" wählen, je nachdem, was man angeschlossen hat. Wird bei der folgenden Auswahl des Layout nicht "German" angezeigt, dann erst mit der Option "Other" "German" auswählen. Als Layout "German" oder "German (Macintosh)" auswählen. Bei den zwei folgenden Fragen einfach die vorausgewählten Felder "The default for the keyboard layout" bzw. "No compose key" auswählen. (Achtung, nur die rechte Alt-Taste funktioniert wie vom Mac gewohnt zur Erzeugung von Sonderzeichen wie €, [, @ etc.
- Bei "Change Wifi-Country": Als Country "DE Germany" wählen.
Das Programm mit "Finish" beenden. Sollte der Raspberry nicht automatisch neu starten wollen, dann mit "sudo reboot" neu starten.
Ab jetzt ist die deutsche Tastaturbelegung aktiv.
Wieder einloggen und das Konfigurationsprogramm erneut starten
- Punkt "Advanced Options":
- Bei "A3 Memory Split": den Wert "16" eingeben.
Das Programm mit "Finish" beenden. Sollte der Raspberry nicht automatisch neu starten wollen, dann mit "sudo reboot" neu starten.
Evtl. das Dateisystem vergrößern
Es kann sein, dass das Vergrößern des Dateisystems von der Imagegröße auf die des USB-Mediums nicht funktioniert hat. Dies erkennt man durch die Fehlermeldung "[FAILED] Failed to start LSB: Resize the root filesystem to fill partition." beim Booten oder daran, dass nach der Eingabe von "df -h" eine zu kleine Größe ausgegeben wird. Auch bei sehr großen Festplatten funktioniert die automatische Änderung nicht.
Zunächst muss die Partition vergößert werden. Dazu startet man parted, stellt auf die Anzeige von Sektoren um und lässt sich das aktuelle Schema anzeigen:
sudo parted
(parted) unit s
(parted) print free
Dabei werden die 2 Partitionen und freier Platz dahinter angezeigt. Bei dem freien Platz ist die Sektornummer bei "Ende" wichtig, da dass der neue Endsektor für die zweite Partition werden soll. Die Partition wird nun vergrößert. Bei der Frage nach dem "Ende" den Endsektor des freien Bereiches eingeben:
(parted) resizepart
Partitionsnummer? 2
Ende [165473s]?
Das Ergebnis lässt sich anzeigen:
(parted) unit MiB
(parted) printfree
(parted) exit
Danach muss noch das Dateisystem an die größere Partition angepasst werden. Das kann einige Zeit dauern:
sudo partprobe
sudo resize2fs -p /dev/sda2
sudo partprobe
IPv6 Privacy Extensions deaktivieren
nur bei Variante B und C
Standardmässig sind die IPv6 Privacy Extensions aktiviert und der Raspberry wechselt daher nach einer gewissen Zeit von alleine seine IPv6-Adresse. Leider merkt die Fritzbox das nicht richtig und gibt diese Änderung nicht an den Dienst MyFritz weiter. Daher muss diese Änderung deaktiviert werden:
Die entsprechende Konfigurationsdatei wird im Editor geöffnet:
sudo nano /etc/dhcpcd.conf
Dann wird die Zeile
slaac private
in
slaac hwaddr
Den Editor mit Ctrl-X, J und Return verlassen und den raspberry neu starten:
sudo reboot
Auf aktuellen Stand updaten
Im Terminal bringt man das System mit den beiden folgenden Befehlen auf den aktuellen Stand und entfernt nicht mehr benötigte Pakete:
sudo apt-get update
sudo apt-get dist-upgrade
sudo apt-get clean
sudo apt-get autoremove --purge
Quellen:
https://raspberry.tips/raspberrypi-tutorials/raspberry-pi-von-ssd-festplatte-booten/
https://www.edvnet-uk.com/partition-online-mit-parted-vergroessern/
https://forum-raspberrypi.de/forum/thread/37027-partion-vergroeßern/
https://wiki.ubuntuusers.de/Dateisystemgröße_ändern/
-
4. DNS-Eintrag und Router-Weiterleitung konfigurieren
Damit die eigene Nextcloud auch von überall erreicht werden kann, muss dafür gesorgt werden, dass die aktuelle IP des eigenen Routers unter einem festen Domainnamen erreichbar ist (dynamisches DNS), dass entsprechende Anfragen von aussen an den Raspberry weitergeleitet werden und das der öffentliche name auch "schön" ist.
Einrichten eines dynamischen DNS
Da man an einem üblichen DSL-Anschluss keine feste IP-Adresse hat, muss man mit einem Dienst arbeiten, der diese IP entsprechend veröffentlicht. Am einfachsten ist die Nutzung von MyFritz.
Zunächst muss man sich für den kostenlosen Dienst MyFritz anmelden:
Anleitung zur Anmeldung bei AVM, siehe Punkt "Wie registriere ich mich bei MyFRITZ!?"
Man erhält dann einen recht kryptischen Namen, z.B. "hsdbdhsurf74hb3s.myfritz.net", der in der Fritzbox unter "Internet/Online-Monitor" angezeigt wird. Nach der Einrichtung kann man die eigene Fritzbox immer unter diesem Namen erreichen. Unter "Internet/MyFritz" muss der FRITZ!Box-Internetzugriff deaktiviert werden.
Einrichten einer Weiterleitung zum Raspberry
Im Router muss nun eine Weiterleitung für einkommenden Datenverkehr zum Raspberry eingerichtet werden.
Der Port 80 und 443 müssen dazu an die IP des Raspberry weitergeleitet werden. Hierzu richtet man zwei MyFritz!-Freigaben (HTTP-Server und HTTPS-Server) unter "Internet/Freigaben" für das Gerät "Nextcloudpi" ein.
Variante B und C:
Bei der eingerichteten Freigabe wird auch der entsprechende Name angegeben, z.B. nextcloudpi.hsdbdhsurf74hb3s.myfritz.net
Konfiguration des Portmappers
nur Variante C
Zur Weiterleitung von IPv4-Zugriffen auf die IPv6-Adresse des Raspberry wird eine öffentliche IPv4-Adresse ("Dedizierte Portmapper-IPv4") und ein Portmapper ("Dedizierte Portmapper") benötigt. Diesen kann man z.B. bei Feste-IP.net für aktuell 35€/Jahr buchen.
- Hierzu registriert man sich zunächst unter http://www.feste-ip.net. Man erhält 50 Credits als Guthaben, wobei der Portmapper 1 Credit pro Tag kostet. D.h. man kann den Dienst 50 Tage kostenlos testen. Danach muss man jeweils 365 Credits (=1 Jahr) für 5€ kaufen.
- Dann legt man eine "Dedizierte Portmapper-IPv4" an. Unter "Mein Account"/"Credits&Addons" kann man nach Klick auf Addonbuchung diesen bestellen. Dieser ist 2 Tage kostenlos zum Testen. Innerhalb dieser Zeit sollte man bei "Mein Account"/"Credits&Addons" auf den Kreispfeil hinter der angegebenen Portmapper-IPv4 klicken, eine Bezahlbare auswählen und bei der Vorbereitung der Zahlung die gewünschten Credits und die Verlängerung der Portmapper-IPv4 auswählen und bezahlen.
- Dann legt man einen "universellen Portmapper" an. Dabei muss man eine Mobilfunknummer angeben, da ein Freischaltcode per SMS verschickt wird.
- Bei der Einrichtung des Portmapper wählt man als Mapping-Server die dedizierte Portmapper-IPv4 aus. Dann werden zwei Weiterleitungen eingerichtet. In die erste Zeile trägt man bei den Ports beides mal 80 ein, bei der zweiten Zeile beides mal 443. In beiden Zeilen wird als IPv6-Ziel der MyFritz-Namen des Raspberry eingetragen (z.B. nextcloudpi.hsdbdhsurf74hb3s.myfritz.net)
- Nach Einrichtung des Portmappers wird angezeigt unter welcher IP der Raspberry per IPv4 erreichbar ist. Diese IP muss man sich notieren
Anlegen eines "schönen" Namen
Falls man irgendwo eine eigene Domain und Zugriff auf die DNS-Einstellungen hat, kann man den recht kryptischen Namen mit einer eigenen Subdomain verbandeln. Dazu wird in den DNS-Einstellungen ein entsprechender Eintrag gemacht. Für dieses Beispiel nehmen wir den Namen cloud.apfelinsel.de. Wie das genau funktioniert, hängt vom jeweiligen Provider ab. Der Eintrag sollte nachher so aussehen:
Variante A (Umleitung auf Fritzbox):
[color=red]cloud4.apfelinsel.de[/color]. IN CNAME [color=red]hsdbdhsurf74hb3s.myfritz.net[/color]
Variante B (Umleitung direkt auf Raspberry):
[color=red]cloud4.apfelinsel.de[/color]. IN CNAME [color=red]raspberry.hsdbdhsurf74hb3s.myfritz.net[/color]
Variante C: (Umleitung über Portmapper, statt 0.0.0.0 muss die IP der dedizierten Portmapper-IPv4 eingetragen werden)
cloud4.apfelinsel.de A [color=red]0.0.0.0[/color]
Bei HostEurope findet man die Einstellung unter "Domainservices/AutoDNS Domains bearbeiten" und dann dort bei der gewünschten Domain auf den Button "Editieren" klicken und einen neuen passenden Eintrag machen.
-
5. Konfiguration von NectCloudPi
Für die folgenden Schritte wird die Weboberfläche über folgende URL aufgerufen:
https://<IP_des_Raspberry>
Bei Aufruf der Seite erfolgt zunächst eine Warnung, dass das Zertifikat nicht vertrauenswürdig ist. Trotzdem die Seite anzeigen lassen.
NextCloudPi First Run
Beim ersten Aufruf wird ein Konfiguration-Assistent "NextCloudPi First Run" angeboten. Diesen mit Klick auf "Ausführen" bestätigen.
- "Do you want to save Nextcloud data in a USB drive?" - Diese Frage mit "No" beantworten, da es hier um USB-Laufwerke geht, die nicht das System beinhalten.
- "Do you want to access Nextcloud from outside your house?" - Diese Frage mit "Yes" beantworten.
- Die Frage nach dem Port forwarding mit "I will do it manually" beantworten.
- Die Frage nach dem DDNS mit "Skip" überspringen.
- Danach wieder zurück zum NextCloudPi web panel
SSH aktivieren
Über den Punkt "SSH" kann der SSH-Zugang aktiviert werden. Dabei muss für den Standardbenutzer "pi" ein neues Kennwort angegeben werden. Beim ersten Einloggen mit SSH wird man dann zu einer erneuten Änderung gezwungen.
Konfigurationen
Für die folgenden Schritte kann entweder das Terminal verwendet werden:
sudo nextcloudpi-config
oder eine Weboberfläche über folgende URL:
https://<IP_des_Raspberry>:4443
Die Seite mit den Standarddaten, Benutzer: "ncp" und Kennwort "ownyourbits" aufrufen.
fail2ban
fail2ban sollte bereits aktiviert sein. Dieses dient dazu, eine lange Zeitspanne zwischen mehreren erfolglosen Loginversuchen zu setzen. Das verhindert Bruteforce-Angriffe durch Ausprobieren von Kennwörtern. Wenn man von solchen Angriffen informiert werden möchte, dann muss man noch die eigene Adresse unter "EMAIL" eintragen und "MAILALERTS" aktivieren.
letsencrypt
Unter diesem Punkt kann ein gültiges Zertifikat bestellt werden. In das Feld "DOMAIN" kommt der Domainname, unter der die Nextcloud erreichbar sein soll, also "cloudx.apfelinsel.de". In das Feld "EMAIL" kommt die eigene E-Mail-Adresse.
nc-admin
Hier wird das Kennwort des Administrators ("ncp") der Nextcloud geändert.
nc-httpsonly (HTTPS-Zwang)
Erzwingt Verbindungen per https. Sollte bereits aktiv sein. Wenn nicht, dann jetzt aktivieren.
nc-notify-updates (Update-Benachrichtigungen)
Benachrichtigt in der Nextcloud über neue Updates für NextcloudPi. Sollte bereits aktiv sein. Wenn nicht, dann jetzt aktivieren.
nc-passwd (NCP Passwort)
Hier ein eigenes Kennwort für den Zugriff auf das NextCloudPi Panel eingeben.
unattended-upgrades (Unbewachte System-Upgrad...)
Installiert automatisch Sicherheitsupdates und startet danach den Raspberry neu. Sollte bereits aktiv sein. Wenn nicht, dann jetzt aktivieren.
Quellen:
https://github.com/nextcloud/nextcloudpi/wiki
https://github.com/nextcloud/nextcloudpi/wiki/Configuration-Reference
-
6. Nextcloud einrichten
Die Nextcloud-Seite wird in einem Browser aufgerufen:
https://cloud4.apfelinsel.de
Weitergehende Konfiguration
Hat man sich bei der eigenen Nextcloud-Webseite mit seinem Benutzeraccount angemeldet, kann man rechts oben im Menü das eigene Profil, alle Benutzer oder Verwaltungs-Einstellungen aufrufen.
Verschlüsselte Ablage der Dateien
In den Verwaltungsseiten von Nextcloud unter dem Bereich "Sicherheit" wird das Häkchen bei "Serverseitige Verschlüsselung aktivieren" gesetzt. Es wird eine Warnung angezeigt, die wir bestätigen. Nun wird noch der Fehler angezeigt, dass kein Verschlüsselungsmodul geladen ist. Rechts oben auf den Bereich "Apps" wechseln und im Bereich "Deaktivierte Apps" das "Default Encryption Module" aktivieren. Danach einmal von der Weboberfläche ab- und wieder anmelden. Die Anmeldung dauert diesmal etwas länger, weil Schlüssel angelegt werden.
E-Mail-Server konfigurieren
Damit Nextcloud bei Bedarf E-Mails versenden kann, muss der E-Mail-Server unter "Grundeinstellungen" konfiguriert werden. Dazu den Sendemodus auf SMTP stellen und die notwendigen Daten eintragen. Mit dem Button "E-Mail senden" kann getestet werden, ob die Einstellungen stimmen.
Geburtstagskalender deaktivieren
Unter "Groupware" kann unter dem Punkt "Kalender-Server" die Erstellung eines Geburtstagskalenders deaktiviert werden.
Upload-Limit überprüfen und ändern
Unter "GrundeinstellungenW wird die maximale Upload-Größe angezeigt. Falls hier weniger als 2GB angezeigt wird, muss die Limitierung geändert werden.
Dazu folgende Änderungen in der Datei user.ini durchführen:
sudo nano /var/www/nextcloud/.user.ini
Nach den Zeilen mit upload_max filesize und post_max_size suchen und so ändern:
php_value upload_max_filesize 2G
php_value post_max_size 2G
Editor wieder mit Ctrl-X, J und Return beenden. Evtl. PHP neu starten:
sudo /etc/init.d/php7.2-fpm reload
Deaktivierte Apps
Einige Apps habe ich deaktiviert, da ich sie für meine Zwecke nicht benötige. Dies sind:
- Activity
- Collaborative Tags
- Comments
- Deleted Files
- Federation
- Gallery
- News
- Notes
- Tasks
- Usage Survey
- Versions
-
7. Einrichten des Kalenderabgleiches (CalDAV)
Vorbereitung in Nextcloud
Links oben zur App "Kalender" wechseln".
Links unten durch Klick auf das Zahnrad die Einstellung des Kalenders öffnen. Hier bei Zeitzone die richtige (z.B. Europe/Berlin) einstellen. Unter "iOS/OS X CalDav-Adresse" ist diejenige Adresse aufgeführt, die bei der Einrichtung unter iOS und OS X benötigt wird. Z.B.:
https://cloud4.apfelinsel.de/remote.php/dav/principals/users/USERNAME/
OS X
In dem Programm "Kalender":
- Einstellungen öffnen
- auf den Reiter "Accounts" wechseln
- links unten auf Plus klicken und "Anderer CalDAV-Account..." auswählen
- "Accounttyp" auf "Manuell" umstellen, als "Benutzername" den Nextcloud-Benutzernamen, als "Passwort" das zugehörige Kennwort eingeben.
Bei "Serveradresse" gibt man bis OS X 10.10 (Yosemite) die oben erwähnte Adresse ein. Bei OS X 10.11 (El Capitan) darf man nur "cloud4.apfelinsel.de" eingeben. Danach auf "Erstellen" klicken. - Bei den "Accountinformationen" des neu erstellten Accounts noch eine schöne Beschreibung eingeben unter der die Kalender dann im Programm "Kalender" angezeigt werden.
iOS
In den Einstellungen unter "Mail, Kontakte, Kalender":
- bei "Accounts" auf "Account hinzufügen" tippen
- "Andere" auswählen
- bei "Kalender" auf "CalDAV-Account hinzufügen" tippen
- Als "Server" nur "cloud4.apfelinsel.de", als "Benutzername" den Nextcloud-Benutzernamen, als "Passwort" das zugehörige Kennwort, als Beschreibung einen schönen Namen eingeben und auf "Weiter" tippen.
- Vorausgewählt sind die Benutzung von Kalender und Erinnerungen. Das einfach lassen und auf "Sichern" tippen
-
8. Einrichten des Kontaktabgleiches (CardDAV)
Vorbereitung in Nextcloud
Links oben zur App "Kontakte" wechseln".
Links unten durch Klick auf das Zahnrad die Einstellung der Kontakte öffnen. Hier das Kettensymbol hinter dem Adressbuch "Kontakte" (Mouseover=CardDAV-Link") anklicken und die Adresse wird eingeblendet, die bei der Einrichtung unter iOS und OS X benötigt wird. Z.B.:
https://cloud4.apfelinsel.de/remote.php/dav/addressbooks/users/USERNAME/ADRESSBUCHNAME/
OS X
In dem Programm "Kontakte":
- Einstellungen öffnen
- auf den Reiter "Accounts" wechseln
- links unten auf Plus klicken und "Anderer Kontakte-Account..." auswählen
- die Auswahl auf "CardDAV" lassen, evtl. "Accounttyp" auf "Manuell" umstellen, als "Benutzername" den Nextcloud-Benutzernamen und als "Passwort" das zugehörige Kennwort eingeben.
Bei "Serveradresse" gibt man bis OS X 10.10 (Yosemite) die oben erwähnte Adresse ein. Ab OS X 10.11 (El Capitan) darf man nur "cloud4.apfelinsel.de" eingeben. Danach auf "Erstellen" klicken. - Danach bei den "Accountinformationen" des neu erstellten Accounts noch eine schöne Beschreibung eingeben unter der die Kontakte dann im Programm "Kontakte" angezeigt werden.
iOS
In den Einstellungen unter "Mail, Kontakte, Kalender":
- bei "Accounts" auf "Account hinzufügen" tippen
- "Andere" auswählen
- bei "Kontakte" auf "CardDAV-Account hinzufügen" tippen
- Als "Server" nur "cloud4.apfelinsel.de", als "Benutzername" den Nextcloud-Benutzernamen, als "Passwort" das zugehörige Kennwort, als Beschreibung einen schönen Namen eingeben und auf "Weiter" tippen.
-
9. Dateiserver mit Synchronisierung
In der Nextcloud können auch Dateien gespeichert werden, auf die man manuell zugreifen oder auch automatisch synchronisieren lassen kann.
Auf der Webseite der eigenen Nextcloud
Meldet man sich auf der Webseite der eigenen Nextcloud an, bekommt man als erstes den Bereich "Dateien" zu sehen, der die in der Cloud gespeicherten Dateien anzeigt. Hier kann man diese herunterladen, hochladen, anzeigen etc.
Links unten kann man durch Klick auf das Zahnrad die Einstellungen öffnen und bekommt die WebDAV-Adresse angezeigt, mit der man auf diese Dateien ebenfalls zugreifen kann. Z.B.:
https://cloudx.apfelinsel.de/remote.php/webdav/
Manueller Zugriff von OS X oder iOS
Alle Programme, die das Protokoll WebDAV unterstützen können über die oben erwähnte Adresse, den Nextcloud-Benutzernamen und dem zugehörigen Kennwort auf diese Dateien zugreifen.
Dies ist z.B. unter OS X der Finder (Mit Server verbinden) oder unter iOS der GoodReader.
automatische Synchronisierung unter OS X
Benötigt wird der Desktop Client "Nextcloud" für OS X (https://nextcloud.com/install/#install-clients).
Beim ersten Start werden die benötigten Informationen abgefragt.
Als "Serveradresse" wird "https://cloud4.apfelinsel.de[/color]" eingegeben. Als "Benutzername" den Nextcloud-Benutzernamen und als "Passwort" das zugehörige Kennwort eingeben. Die folgende Option belässt man bei "Alle Dateien vom Server synchronisieren" und wählt einen lokalen Ordner aus, der immer mit der Nextcloud synchronisiert werden soll (standardmäßig ~/Nextcloud). Mit Klick auf "Verbinden" und "Abschliessen" ist die Einrichtung beendet und in Zukunft wird der Inhalt des gewählten Ordners immer synchron mit dem Nextcloud-Server sein.
In der Menüleiste ist ein neues Icon hinzugekommen, über das man den Status der Synchronisierung einsehen kann.
automatische Synchronisierung unter iOS
Auch für iOS gibt es einen entsprechenden mobilen Client (https://itunes.apple.com/us/app/nextcloud/id1125420102?mt=8). Dieser synchronisiert ebenso den Inhalt des Servers mit dem jeweiligen iOS-Gerät.
Wie bei dem Desktop Client muss man Server, Benutzername und Kennwort eingeben.
-
10. Dateiserver einrichten (NAS)
Auf die Datenverzeichnisse der Nextcloud kann auch über SAMBA zugegriffen werden. Damit sind die Daten dann im lokalen Netzwerk von anderen Rechnern aus erreichbar.
Die Konfiguration dazu erfolgt über das NextCloudPi Panel.
samba
Hiermit wird der SAMBA-Server konfiguriert und eingeschaltet. Die Option "ACTIVE" auswählen, ein Kennwort für den Zugriff eingeben und auf "Run" klicken.
nc-scan-auto
Da die Nextcloud nichts von Änderungen der Dateien mitbekommt, wenn man diese über SAMBA verändert, müssen die Dateien regelmäßig gescannt werden.
Die Option "ACTIVE" auswählen, ein Zeitintervall für den Scan eingeben und auf "Run" klicken.
Auf dem Mac taucht der Raspberry im Finder als "nextcloudpi" auf.
-
11. Nützliche Skripte und Backup
Für wiederkehrende Aufgaben und Funktionen habe ich mir jeweils ein Skript geschrieben und diese in "/root" gespeichert.
Wartungsmodus ein- und ausschalten
Hiermit kann der Wartungsmodus von Nextcloud ein- bzw. ausgeschaltet werden.
wartungan:
#!/bin/bash
# Wartungsmodus anschalten
sudo -u www-data php /var/www/nextcloud/occ maintenance:mode --on
wartungaus:
#!/bin/bash
# Wartungsmodus anschalten
sudo -u www-data php /var/www/nextcloud/occ maintenance:mode --off
Boot- und Dateisystemcheck
Hiermit können die wichtigsten Informationen vom letzten Bootvorgang und der Zustand beim letzten Dateisystemcheck ausgegeben werden.
check:
#!/bin/bash
echo "------------------------------------------------------"
echo "Eintraege vom letzten Boot"
echo
more /var/log/boot.log
echo "------------------------------------------------------"
echo "Letzter Check und Zustand des Dateisystems"
echo
tune2fs -l /dev/sda2 |grep Last\ checked
tune2fs -l /dev/sda2 |grep Filesystem\ state
Backupordner mounten und entmounten
Mit den folgenden Skripten wird eine Sambafreigabe als Backupordner gemountet bzw. entmountet. In den Skripten müssen natürlich die eigene Freigabe und das Kennwort geändert werden. Der Backupordner ist dann unter "/media/backup" verfügbar.
mountbackup:
#!/bin/bash
# Backupordner mounten
mount -t cifs //192.168.1.1/raspberry /media/backup -o user=username,pass=kennwort,vers=2.0
umountbackup:
#!/bin/bash
# Backupordner umounten
umount /media/backup
Dateiberechtigungen korrigieren
Mit diesem Skript werden die Dateiberechtigungen der Nextcloudinstallation auf die richtigen Werte gesetzt.
setPermissions:
#!/bin/bash
ncpath='/var/www/nextcloud'
htuser='www-data'
htgroup='www-data'
rootuser='root'
printf "chmod Files and Directories\n"
find ${ncpath}/ -type f -print0 | xargs -0 chmod 0640
find ${ncpath}/ -type d -print0 | xargs -0 chmod 0750
printf "chown Directories\n"
chown -R ${htuser}:${htgroup} ${ncpath}/
Datenbank und Daten sichern bzw. wiederherstellen
Es werden in dem Ordner "/media/backup/daten" Backups der Datenbank und des Ordners "nextcloud" abgelegt. Es werden jeweils 7 Backups behalten.
backup:
#!/bin/bash
backup=/media/backup/daten
anzahl=7
datum=`date +%Y-%m-%d_%H-%M-%S`
# Dienst anhalten
/root/wartungan
# Backupordner mounten
/root/mountbackup
# Ordner anlegen
mkdir $backup/$datum
# Backup erstellen
cp -R /var/www/nextcloud $backup/$datum/
mysqldump --single-transaction -h localhost -u root -p60a8sbojRKWfpBYgy0SK4tXMBNivzArT5Kr5ntBaE04= nextcloud >$backup/$dat$
# Ordner loeschen
ls -trd $backup/* | head -n-$anzahl | xargs rm -rf
# Backupordner umounten
/root/umountbackup
# Dienst wieder starten
/root/wartungaus
Zum Wiederherstellen eines Backups muss in den Ordner des gewünschten Backups gewechselt und dort das folgende Skript gestartet werden.
restore:
#!/bin/bash
# Dienst anhalten
echo "------------------------------------------------------"
echo "Wartungsmodus aktivieren"
/root/wartungan
# Daten zurueckkopieren
echo "------------------------------------------------------"
echo "Daten kopieren"
rm -r /var/www/nextcloud
cp -R nextcloud /var/www/
# DB-Backup zurueckkopieren
echo "------------------------------------------------------"
echo "DB-Backup kopieren"
mysql -h localhost -u root -pKennwort -e "DROP DATABASE nextcloud;CREATE DATABASE next$
mysql -h localhost -u root -pKennwort nextcloud <nextcloud.sql
# Dateiberechtigungen korrigieren
echo "------------------------------------------------------"
echo "Dateiberechtigungen korrigieren"
/root/setPermissions
# Dienst wieder starten
echo "------------------------------------------------------"
echo "Wartungsmodus deaktivieren"
/root/wartungaus
komplettes Image sichern
Es werden in dem Ordner "/media/backup/image" Image vom kompletten Laufwerk abgelegt. Es werden jeweils 3 Backups behalten.
image:
#!/bin/bash
backup=/media/backup/image
anzahl=3
datum=`date +%Y-%m-%d_%H-%M-%S`
dienste="service mysql"
# Backupordner mounten
/root/mountbackup
# Dienste anhalten
/root/wartungan
$dienste stop
# Backup erstellen
dd if=/dev/sda of=$backup/$datum.img bs=1MB
# Dienste wieder starten
$dienste start
/root/wartungaus
# Backups loeschen
ls -trd $backup/* | head -n-$anzahl | xargs rm -rf
# Backupordner umounten
/root/umountbackup
Raspberry-Software bzw. Nextcloud updaten
Mit diesem Skript kann die grundlegende Raspberry-Software aktualisiert werden.
update-raspi:
#!/bin/bash
echo "------------------------------------------------------"
echo "Wartungsmodus aktivieren"
echo
/root/wartungan
echo "------------------------------------------------------"
echo "Nach Updates suchen, installieren und aufraeumen"
echo
apt-get update
apt-get dist-upgrade
apt-get clean
apt-get autoremove --purge
echo "------------------------------------------------------"
echo "Wartungsmodus deaktivieren"
echo
/root/wartungaus
Mit diesem Skript kann Nextcloud aktualisiert werden.
update-nextcloud:
#!/bin/bash
echo "------------------------------------------------------"
echo "Wartungsmodus aktivieren"
echo
/root/wartungan
echo "------------------------------------------------------"
echo "Nach Updates suchen, installieren und aufraeumen"
echo
sudo -u www-data php /var/www/nextcloud/updater/updater.phar
echo "------------------------------------------------------"
echo "Wartungsmodus deaktivieren"
echo
/root/wartungaus
tägliches Backup der Nextcloud
Ich lasse täglich um 2 Uhr die Nextcloud in den Ordner /media/backup/daten speichern.
Hierzu muss ein crontab-Eintrag erzeugt werden:
sudo crontab -e
An das Ende der Datei:
0 2 * * * /root/backup >/dev/null 2>&1
Und mit Ctrl-X, J und Return beenden.
wöchentliches Backup der SD-Karte
Ich lasse wöchentlich Samstags um 3:00 Uhr das komplette Laufwerk in den Ordner /media/backup/image speichern.
Hierzu wieder einen crontab-Eintrag erzeugen:
sudo crontab -e
Wieder ans Ende der Datei:
0 3 * * 6 /root/image >/dev/null 2>&1
Und erneut mit Ctrl-X, J und Return beenden.
Quellen:
https://docs.nextcloud.com/server/13/admin_manual/maintenance/backup.html
https://docs.nextcloud.com/server/13/admin_manual/maintenance/restore.html
https://docs.nextcloud.com/server/13/admin_manual/maintenance/update.html
http://raspberry.tips/raspberrypi-einsteiger/raspberry-pi-datensicherung-erstellen/
-
12. Ergänzungen und Tipps
Softwarepakete installieren
Softwarepaket xy kann mit den folgenden Befehlen installiert werden:
sudo apt-get install xy
Softwarepakete deinstallieren
Softwarepaket xy kann mit den folgenden Befehlen deinstalliert werden:
sudo apt-get purge xy
sudo apt-get clean
sudo apt-get autoremove --purge
"update" aktualisiert die Paketquellen
"clean" löscht den Cache der heruntergeladenen Pakete
"autoremove" löscht alle nicht mehr benötigten Pakete
Filesystemcheck und -reparatur beim Starten
Soll das Datensystem bei jedem Start überprüft und gegebenenfalls repariert werden, muss ein Parameter zur Kernelbefehlszeile hinzugefügt werden. Hierzu wird ins Terminal eingegeben:
sudo nano /boot/cmdline.txt
In die Befehlszeile wird dann hinter dem Eintrag "fsck.repair=yes" noch zusätzlich "fsck.mode=force" eingetragen.
Editor mit Ctrl-X, J und Return beenden und neu starten.
Die Ausgaben der Überprüfung sind dann in der Datei "/var/log/boot.log" zu finden.
Genaue Informationen über den Zustand der SD-Karte, inklusive Status des Dateisystems und Zeit des letzten Checks, erhält man mit:
sudo tune2fs -l /dev/sda2
-
13. SSH-Login mit Schlüsselauthentifizierung
Wenn man sich öfters per SSH auf dem Raspberry anmeldet, kann es nervig sein, immer ein langes und gutes Kennwort einzugeben.
Neben dem Login per Kennwort bietet SSH auch die Möglichkeit, sich mit einem Paar aus privatem und öffentlichem Schlüssel anzumelden. Hierzu wird auf dem Computer ein solches Paar erzeugt und der der öffentliche Schlüssel auf den Raspberry kopiert. Danach kann sich jeder, der im Besitz des privaten Schlüssels ist, direkt ohne weitere Kennworteingabe anmelden.
Erzeugen des Schlüsselpaares und Kopieren auf den Raspberry
Im Terminal des Computers gibt man den folgenden Befehl ein:
ssh-keygen
Danach werden mehrere Sachen abgefragt, die man alle durch Return-Drücken bestätigt:
- Speicherort des Schlüsselpaares, vorgeschlagen wird /Users/Name/.ssh/id_rsa
- Optionales Kennwort
- Erneut das optionale Kennwort
Es werden nun zwei Dateien erzeugt. "id_rsa" ist der private Schlüssel, "id_rsa.pub" ist der öffentliche Schlüssel.
Nun muss der öffentliche Schlüssel noch auf den Raspberry kopiert werden (dabei wird das Kennwort des raspberry abgefragt):
scp ~/.ssh/id_rsa.pub pi@nextcloudpi:authorized_keys
Auf dem Raspberry an die richtige Stelle kopieren
Im Terminal des Raspi gibt man die folgenden Befehle ein:
mkdir ~/.ssh
mv authorized_keys ~/.ssh/authorized_keys
chmod 600 ~/.ssh/authorized_keys
Ab jetzt kann man sich ohne Kennwort von dem Computer aus mit folgendem Befehl anmelden:
ssh pi@nextcloudpi
-
Reserviert für Ergänzungen
-
Reserviert für Ergänzungen
-
Ich will mich mal als Linux Neueinsteiger mal recht herzlich bedanken für diese gut verstehbare Anleitung. Habe schön Nächte für meinen Pi gesessen und Foren durchsucht. Nach dem letzten Update ging bei mir nix mehr und ich musste alles Neu machen und bin jetzt mit Deiner Anleitung endlich auch in der Lage die Cloud über https zu nutzen aus der Ferne.
Ganz lieben Dank für alle Mühe und Copy Paste Befehle.
LG Nick
-
Danke, schön zu hören. :)
-
Ich habe die Möglichkeit ergänzt, dass man sich statt mit dem Kennwort per Schlüsselauthentifizierung anmelden kann.
13. SSH-Login mit Schlüsselauthentifizierung (https://www.apfelinsel.de/forum/index.php/topic,7469.msg108012.html#msg108012)
-
Super, dass werde ich demnächst gleich mal probieren. Danke!
-
wow vielen vielen dank für diese sehr ausführliche und gut verständliche anleitung!
gerade auch das mit dem myfritz dynDNS hat mir sehr das leben erleichtert! :)
-
https://www.golem.de/news/nextcloud-verschluesselte-dateien-in-der-eigenen-cloud-2008-150337.html
-
Mal wieder ein Update von mir.
Bei dem Betrieb von zwei Nextclouds ist mir vor allem eins aufgefallen:
Die Stromversorgung eines Raspi ist wirklich heikel und entscheidend.
Praktisch immer, wenn es aus heiterem Himmel Probleme mit der Nextcloud gab, lag es an der Stromversorgung. Es gibt ganz viele verschiedene Anbieter von Netzteilen für einen Raspi, die sehen alle ähnlich aus, kosten ungefähr gleich viel und haben alle die gleichen aufgedruckten Leistungsdaten (5V und 2,5A).
Aber bei vielen habe ich gemerkt, dass schon im Leerlauf die Spannung unter 5V liegt und bei leichter Last (Booten mit einem USB-Stick, also meilenweit unter den 2,5A) die Spannung stark zusammenbrach (<4,6V) und Warnmeldungen produziert wurden. Bei etwas mehr Belastung dann wahrscheinlich kleine Aussetzer mit Datenverlust.
Die Warnungen sieht man mit Hilfe des folgenden Befehls:
sudo dmesg
Im Prinzip sollte es bei der genutzten Konfiguration überhaupt keine Probleme mit der Stromversorgung geben, aber die Netzteile sind weit davon entfernt, die aufgedruckte Leistung wirklich liefern zu können.
Wie geschrieben, anhand der aufgedruckten Daten, Preise und technischen Beschreibungen kann man leider überhaupt keine Wahl treffen.
Nach einigem Probieren, Testen und Messen bin ich auf ein Netzteil gestossen, was tatsächlich funktioniert. Die Leerlaufspannung liegt über 5V und selbst unter Last bleibt die Spannung über 5V. Seitdem ich dieses (an mehreren Raspis) einsetze, bekomme ich keine Spannungswarnungen mehr und die mysteriösen Probleme snd auch weg.
Deshalb diesmal ausnahmsweise ein Link zum Verkäufer:
Micro USB Netzteil für Raspberry Pi 5V / 2,5A von der Marke OTB beim Händler Berrybase (https://www.berrybase.de/raspberry-pi-co/raspberry-pi/stromversorgung/netzteile-fuer-die-steckdose/micro-usb-netzteil-f-252-r-raspberry-pi-5v/2-5a-schwarz#)
-
Der Händlerlink ist wahrscheinlich hilfreich.
Warum nur wahrscheinlich? Weil dasselbe Noname-Netzteil bei anderen Händlern mit derselben Beschreibung auftaucht. Aber sind das alles gleiche Geräte, auch bei den jew. Händlern selbst?
Habe selbst miterlebt, wie bei einem Elektronikversand die Netzteile nur nach Spezifikationen sortiert wurden, aber von verschiedenen Zulieferern kamen, die sich aber nicht oder nur per irgendwelchen Nummern identifizierten.
Also wie bei Lebensmitteln aus China. Da weiß man auch nicht, wo sie herkommen.
Wie auch immer, ich hatte noch keine Probleme mit der Stromversorgung. Nur eine Echtzeituhr musste ich nachrüsten. Es ist eine Lotterie wie bei vielen Techniksachen heutzutage. Selbst wenn ein Hersteller vermerkt ist, ist der einem meist völlig unbekannt und kann oft auch nirgends im Internet gefunden werden oder höchstens eine Adresse irgendwo in China.
-
Sollte übrigens keine Kritik an Macflieger oder Berrybase sein.
Es ist halt so eine Sache, die Erfahrung mit unzureichenden Netz- oder Ladeteilen habe ich auch schon gemacht.
-
Habe ich auch nicht als negative Kritik aufgefasst.
Gerade bei den Anbietern auf eBay, Amazon, Aliexpress etc. hat man oft das Problem, dass man bei Elektronikteilen nicht so sicher weiß, was man da bekommt. Die technischen Angaben haben da oft wenig mit der Realität zu tun. Und alleine über den Preis kann man da auch nichts entscheiden. Das ist mir schon öfter aufgefallen und ich merke mir immer genau, wo ich etwas gekauft habe, was gut funktioniert hat. Da kaufe ich dann meistens wieder, auch wenn andere evtl. etwas billiger sind.
Besonders bei diesen Netzteilen habe ich mich echt schon schwarz geärgert. Da steht überall 5V und 2,5A drauf, das ist prinzipiell auch kein Hexenwerk und problemlos technisch machbar und dann bekommt man Geräte, die schon bei weniger als 1A die Grätsche machen.
Mir war das anfangs auch nicht groß aufgefallen, denn der Raspi lief und funktionierte prinzipiell, eben hart an der Grenze. Nur dass aufgrund der niedrigen Spannung alle paar Wochen mal dann wohl Bitfehler oder irgendwas auftraten, die dann Sachen zerschossen, war extrem ärgerlich.
-
https://www.golem.de/news/nextbox-nitrokey-bringt-cloud-nach-hause-2102-153838.html
-
Bei der ganzen Sache gibt es ja zwei Hauptprobleme:
1. Hardware und Nextcloud-Software:
Das ist relativ problemlos. Die Hardware ist nichts besonderes und die Software ist auch bereits ausgereift und kann mit wenig Aufwand vom Hersteller vorinstalliert und geupdatet werden. Sieht man ja auch hier im Thread, wenn man nur nach der reinen Nextcloudpi-Software schaut. Dazu gibt es in dem Artikel ein paar Informationen über die eingesetzte Hard- und Software.
2. Netzwerkverbindung und Zugriff von außen
Das ist das Hauptproblem und nicht trivial. Die Heim-Anschlüsse, die noch eine öffentliche IPv4 haben, werden immer weniger. Hat man aber nur eine öffentliche IPv6, dann kann man nur an Orten, die ebenfalls IPv6 bieten, eine direkte Möglichkeit nach Hause zu verbinden. Und das sind leider immer noch die allermeisten Orte: praktisch alle Mobilfunknetze und die meisten offenen WLANs. Dazu kommt, dass alle unterschiedliche Router mit unterschiedlichen Fähigkeiten und Konfigurationen einsetzen.
Drei Sachen müssen eigentlich erledigt werden:
- Irgendein DynDNS-Dienst muss aktiv sein (egal ob IPv4 oder IPv6). Den könnte der Hersteller selber automatisch anbieten. Das würde funktionieren, wenn auch nicht ganz so einfach wie bei der in diesem Thread beschriebenen Lösung, bei der die Fritzbox und AVM sich darum kümmern.
- Der Router muss die eingehenden Verbindungen zur Cloud durchreichen (egal ob IPv4 oder IPv6). Sauber gelöst werden kann das nur in den Einstellungen des Routers, wobei nicht alle das können. Möglich ist auch, dass mit Hilfe eines externen Servers ein "Loch" in die Firewall des Routers gebohrt wird, ähnlich wie es Teamviewer, Anydesk etc. machen.
- Es muss eine Umsetzung von IPv4 nach IPv6 geben (nur IPv6). Das beschreibe ich hier im Thread auch mit einem externen Dienstleister über den dann der komplette Traffic läuft. Das könnte der Hersteller auch selber anbieten.
Wie diese Hauptprobleme bei der beschriebenen Box gelöst sind, finde ich in dem Artikel leider nicht. Aber wenn man sich das Video auf der Kickstarterseite anschaut, scheint es genau wie ich vermutet habe, alles drei über einen Server des Herstellers zu laufen.
Man ist dann natürlich auch von diesem abhängig und ich frage mich, wie deren Finanzierungsmodell aussieht (vor allem beim Traffic).
Trotzdem eine sehr interessante Lösung.
-
Vielen Dank!