• Hallo liebe Userinnen und User,

    nach bereits längeren Planungen und Vorbereitungen sind wir nun von vBulletin auf Xenforo umgestiegen. Die Umstellung musste leider aufgrund der Serverprobleme der letzten Tage notgedrungen vorverlegt werden. Das neue Forum ist soweit voll funktionsfähig, allerdings sind noch nicht alle der gewohnten Funktionen vorhanden. Nach Möglichkeit werden wir sie in den nächsten Wochen nachrüsten. Dafür sollte es nun einige der Probleme lösen, die wir in den letzten Tagen, Wochen und Monaten hatten. Auch der Server ist nun potenter als bei unserem alten Hoster, wodurch wir nun langfristig den Tank mit Bytes vollgetankt haben.

    Anfangs mag die neue Boardsoftware etwas ungewohnt sein, aber man findet sich recht schnell ein. Wir wissen, dass ihr alle Gewohnheitstiere seid, aber gebt dem neuen Board eine Chance.
    Sollte etwas der neuen oder auch gewohnten Funktionen unklar sein, könnt ihr den "Wo issn da der Button zu"-Thread im Feedback nutzen. Bugs meldet ihr bitte im Bugtracker, es wird sicher welche geben die uns noch nicht aufgefallen sind. Ich werde das dann versuchen, halbwegs im Startbeitrag übersichtlich zu halten, was an Arbeit noch aussteht.

    Neu ist, dass die Boardsoftware deutlich besser für Mobiltelefone und diverse Endgeräte geeignet ist und nun auch im mobilen Style alle Funktionen verfügbar sind. Am Desktop findet ihr oben rechts sowohl den Umschalter zwischen hellem und dunklem Style. Am Handy ist der Hell-/Dunkelschalter am Ende der Seite. Damit sollte zukünftig jeder sein Board so konfigurieren können, wie es ihm am liebsten ist.


    Die restlichen Funktionen sollten eigentlich soweit wie gewohnt funktionieren. Einfach mal ein wenig damit spielen oder bei Unklarheiten im Thread nachfragen. Viel Spaß im ngb 2.0.

Raspberry 2 als NAS Server

Steeve

Vereinsheimer
Barkeeper

Registriert
15 Juli 2013
Beiträge
41.121
Installiere dir doch den Client für die Integration in den Explorer/Dateimanager plus die NC Client App fürs Smartphone.

Edit: Ok die Explorer Integration geht nur über WebDAV.

So gehts.
 
Zuletzt bearbeitet:

Michael2019

NGBler

Registriert
11 Mai 2019
Beiträge
178
  • Thread Starter Thread Starter
  • #62
Ja, lokal kann man ja auch mit WinSCP oder so arbeiten. Aber wenn ich von außerhalbn darauf zugreifen will, muss ich ja per DynDNS zugreifen und dann wohl erst in den Nextcloud Panel und dann in die Daten.

Edit: Keine ahnung, warum das nicht geht, aber vor alles ist es wichtig, dass es per DynDNS geht - und das lädt und lädt, loggt sich aber nicht ein.

Edit: Jetzt geht es :)

Edit: Ich denke, ich weiß, warum das obenb nicht ging. Dort war ein Fehler afu der Seite. Die Syntax muss heißen



Edit: Noch was, es ist ja aus Sicherheitsgründen gut, aber wie kann ich es einstellen, dass ich auch üer DynDNS in die Konfig Oberfläche komme?
 
Zuletzt bearbeitet:

Michael2019

NGBler

Registriert
11 Mai 2019
Beiträge
178
  • Thread Starter Thread Starter
  • #63
Kann mir noch jemand erklären, wie ich von außerhalb (also außerhalb meines Netzwerkes) auf die config Seite des Raspberry komme? Über DynDNS kommt dann, dass man nicht befugt ist, zuzugreifen.

Und noch was, wird autom. mitgeloggt, wer sich wann auf den Server einloggt? wenn ja, wo? Wenn nicht, wie trage ich es in die Config Datei ein?
 

Metal_Warrior

Defender of Freedom
Teammitglied

Registriert
10 Aug. 2013
Beiträge
6.830
Ort
/dev/mapper/home
Kann mir noch jemand erklären, wie ich von außerhalb (also außerhalb meines Netzwerkes) auf die config Seite des Raspberry komme? Über DynDNS kommt dann, dass man nicht befugt ist, zuzugreifen.
Da du sicher ne Web-GUI meinst, wird das wohl über den Apachen eingestellt werden müssen, also in /etc/apache2/sites-enabled/nextcloud oder so...

Aber hey, du erzählst mir hier erst was von Sicherheit und willst dann die Sicherheitsmechanismen zerlegen, die wirklich was helfen? Ich glaub, ich krieg mich nicht mehr...

Und noch was, wird autom. mitgeloggt, wer sich wann auf den Server einloggt? wenn ja, wo? Wenn nicht, wie trage ich es in die Config Datei ein?
Ja, das sollte eigentlich in /var/log/apache2/access.log oder in /var/log/auth.log stehen.

Vielleicht solltest du aber erstmal überhaupt lernen, wie Netzwerk und Serverdienste so funktionieren, weil sonst ist das mit Security eher so... naja, mau...
 

Michael2019

NGBler

Registriert
11 Mai 2019
Beiträge
178
  • Thread Starter Thread Starter
  • #65
Da du sicher ne Web-GUI meinst

Nein, per Terminal reicht das vollkommen. Ich habe beim zweiten Versuch ohnehin alles im Terminal eingerichtet und nicht auf der GUI.

du erzählst mir hier erst was von Sicherheit und willst dann die Sicherheitsmechanismen zerlegen

Nein, wie kommst du darauf? Das soll auch ganz sicher nicht dauterhaft so sein. Ich wollte einfach nur wissen, ob man im Notfall den Raspberry aus der Ferne konfigurieren kann.

Ja, das sollte eigentlich in /var/log/apache2/access.log oder in /var/log/auth.log stehen.

Dann schaue ich da mal rein. Geht ja auch per SSH.


Das war ja ein Missverständnis. Ansonsten habe ich auch Fail2Ban eingerichtet. Dort habe ich die Dauer des "Ban" und "Find-Dauer" hochgesetzt. Allerdings könnte der Angreifer ja auch die IP wechseln, sodass er es wieder versuchen könnte. Ich erlaube drie Fehlversuche, bis es zu einem "Ban" kommt.

Hast du noch Vorschläge, außer denen, die man auch so schon in der Konfig einstellen kann?

Edit: Ja, nicht ganz in der Datei aber in '"nc-access".

Ich habe nach dem Ende der Konfiguration ein Full-Backup erstellt, dieses kann ich aber über die GUI nicht downloaden, warum? Muss ich das mit "cp" machen?
 
Zuletzt bearbeitet:

Metal_Warrior

Defender of Freedom
Teammitglied

Registriert
10 Aug. 2013
Beiträge
6.830
Ort
/dev/mapper/home
Ich wollte einfach nur wissen, ob man im Notfall den Raspberry aus der Ferne konfigurieren kann.
Ja, das nennt man SSH und geht natürlich aus der Ferne. Ein Linux ist vollständig von der Konsole aus steuerbar, da braucht man nirgends ne GUI (die weniger Möglichkeiten als das Terminal bietet). Bei SSH würde ich dir empfehlen, lediglich PubKeyAuth zuzulassen, mit AllowUsers den SSH-Zugriff auf einen definierten User einzuschränken (der NICHT root oder pi ist, und auch nicht nextcloud, apache2, mysql, etc., sondern zum Beispiel hanswurst), und UsePAM auf no zu setzen, weil das manchmal eine Umgehung der Einschränkungen zulässt. Keys sollten ECDSA, RSA ab 2048bit oder ED25519 sein. Wenn du außerdem die Login-Gracetime auf ne Sekunde herabsetzt, steigen die meisten Angreifer-Scripte sofort aus - dazu muss aber der PrivateKey unverschlüsselt auf deiner Maschine liegen, oder mittels Keyring automatisch entsperrt werden (alternativ: SSH-Agent).

Allerdings könnte der Angreifer ja auch die IP wechseln, sodass er es wieder versuchen könnte. Ich erlaube drie Fehlversuche, bis es zu einem "Ban" kommt.

Drei sind eh schon viel. Ein Versuch, danach ist Feierabend. Das hält dir auch DDoS-Angreifer weitestgehend vom Hals.

Grundsätzlich arbeite ich nicht über GUI, daher kann ich dir da auch nix zu sagen. Ich nutze Linux sowohl auf Servern wie auch auf meinen Arbeitsgeräten, daher ist für mich ein SSH-Tunnel schneller aufgebaut und Daten darüber ausgetauscht, als da über irgendeine Web-GUI mich durchzuklickern. Einzige Ausnahme: Einbindung in mein Gnome-Nautilus. Aber auch da läuft SSH untendrin, ist halt bei größeren Datenmengen aus unterschiedlichsten Pfaden etwas bequemer.
 

Michael2019

NGBler

Registriert
11 Mai 2019
Beiträge
178
  • Thread Starter Thread Starter
  • #67
Ja, das nennt man SSH und geht natürlich aus der Ferne.

Ja, logisch, ich habe das auch getestet, aber es kann keine Verbindung aufgebaut werden. Ich hatte die Syntax "ssh pi@DynDNS-Adresse.de" - so steht es im Manual.

Bei SSH würde ich dir empfehlen, lediglich PubKeyAuth zuzulassen, mit AllowUsers den SSH-Zugriff auf einen definierten User einzuschränken (der NICHT root oder pi ist, und auch nicht nextcloud, apache2, mysql, etc., sondern zum Beispiel hanswurst)

Werde ich machen, sobald es an sich funktioniert. Man könnte auch ne Schlüsseldatei noch nutzen - aber wir wollen nicht gleich übertreiben :)

UsePAM auf no zu setzen, weil das manchmal eine Umgehung der Einschränkungen zulässt.

Werde es in die Config einfügen.

alternativ: SSH-Agent

Das Tool Pageant?

Sicher besser, als wenn der Key unverschlüsselt vorliegt.

Drei sind eh schon viel. Ein Versuch, danach ist Feierabend.

Ja, ja, aber ich vertippe mich auch gerne mal. Zudem wird sich mein Kollege auch hin und wieder einloggen. Ein zweiter Benutzer könnte man anlegen, aber da er ohnehin überall Einsicht hat, nicht unbedingt nötig - zumindets nicht jetzt primär wichtig.

für mich ein SSH-Tunnel schneller aufgebaut und Daten darüber ausgetauscht, als da über irgendeine Web-GUI mich durchzuklickern.

Das stimmt schon, es ist auch Gewöhnungssache. Ich habe mit der Konsole kein Problem, bin nur noch nicht soooo lange am Raspberry beschäftigt, als das ich schon alles wissen würde, was ich brauche. Aber wie versende ich per Konsole Dateien?`Also über das Internet?
 

Michael2019

NGBler

Registriert
11 Mai 2019
Beiträge
178
  • Thread Starter Thread Starter
  • #69
Oh, ich glaube, das habe ich tatsächlich vergessen, danke!
 

Metal_Warrior

Defender of Freedom
Teammitglied

Registriert
10 Aug. 2013
Beiträge
6.830
Ort
/dev/mapper/home
Ja, logisch, ich habe das auch getestet, aber es kann keine Verbindung aufgebaut werden. Ich hatte die Syntax "ssh pi@DynDNS-Adresse.de" - so steht es im Manual.
Tipp für die Zukunft: mit -v kann man meist die Gesprächigkeit der Tools hochdrehen, dann posten sie dir auch, was nicht funktioniert. Bei SSH kann man mit maximal -vvv den Debugmodus jeden Furz ausgeben lassen, den SSH tut, d. h. selbst einzelne Buchstaben, die du eintippst.

Man könnte auch ne Schlüsseldatei noch nutzen - aber wir wollen nicht gleich übertreiben :)
PubKeyAuth ist mit Schlüsseldatei. Höhere Sicherheit, höherer Komfort. Kann man selten behaupten, ist hier aber so.

Das Tool Pageant?
Welches Betriebssystem nutzt du, um dich auf den RPi einzuklinken? Also womit ARBEITEST du? Wenn Debianoid (Debian, Ubuntu, Mint), hilft dir ein sudo apt-get install ssh-agent, wenn der nicht sowieso schon installiert ist. Danach Ubuntuusers fragen, wie das damit genau läuft, ich nutz das Ding in der Arbeit in Verbindung mit Seahorse, d. h. ich musste dem Agent nur einmal den Schlüssel entsperren, jetzt macht das jedes Mal Seahorse für mich.

Sicher besser, als wenn der Key unverschlüsselt vorliegt.
Ja, grundsätzlich ja.

Aber wie versende ich per Konsole Dateien?`Also über das Internet?
Zwei Möglichkeiten:
[src=bash]scp SOURCE pi@DynDNS-Adresse.de:/path/to/target
rsync -ahu --progress --stats SOURCE pi@DynDNS-Adresse.de:/path/to/target[/src]
Aber nochmal: pi als User für irgendwelche Zugänge sollte man tunlichst vermeiden.
 

Michael2019

NGBler

Registriert
11 Mai 2019
Beiträge
178
  • Thread Starter Thread Starter
  • #71
Tipp für die Zukunft: mit -v kann man meist die Gesprächigkeit der Tools hochdrehen, dann posten sie dir auch, was nicht funktioniert. Bei SSH kann man mit maximal -vvv den Debugmodus jeden Furz ausgeben lassen, den SSH tut, d. h. selbst einzelne Buchstaben, die du eintippst.

O.K., vielen Dank! Das wusste ich tatsächlich nicht. Allerdings hätte ich so eine Funktion allgemein von dd und dd_rescue etc. wissen können :-D

PubKeyAuth ist mit Schlüsseldatei. Höhere Sicherheit, höherer Komfort. Kann man selten behaupten, ist hier aber so.

Schaue es mir an, ggf. frage ich nochmals nach.

Welches Betriebssystem nutzt du, um dich auf den RPi einzuklinken?

Normalerweise mit dem Arbeitsgerät, dort ist M$.
scp SOURCE pi@DynDNS-Adresse.de:/path/to/target
rsync -ahu --progress --stats SOURCE pi@DynDNS-Adresse.de:/path/to/target


Vielen Dank!

Aber nochmal: pi als User für irgendwelche Zugänge sollte man tunlichst vermeiden.

werde auch per Terminal nen neuen Nutzer anlegen.
 

Michael2019

NGBler

Registriert
11 Mai 2019
Beiträge
178
  • Thread Starter Thread Starter
  • #72
So, ich habe nun einen neuen Benutzer angelegt und bin wie hier beschrieben vorgegangen.

Edit: Wie schaut es mit der Rechtevergabe aus? Er sollte ja nicht alles können dürfen.
 
Zuletzt bearbeitet:

theSplit

1998
Veteran Barkeeper

Registriert
3 Aug. 2014
Beiträge
28.562
@Michael2019:
Wenn du willst, dass der User nur lesen und schreiben, aber nichts ausführen kann:
[kw]chmod -R -x+rw OrdnerName[/kw]

bzw.
[kw]chmod -x+rw DateiName[/kw]

Das würde dem Owner nur erlauben Dateien zu lesen und zu schreiben, -x entfernt die "Execute" Permission

Willst du das automatisch für neue Inhalte setzen, mußt du mit [kw]setfacl[/kw] die Berechtigungen, auf den Ordner, anwenden lassen. Mehr steht hier: https://wiki.ubuntuusers.de/ACL/
 

Metal_Warrior

Defender of Freedom
Teammitglied

Registriert
10 Aug. 2013
Beiträge
6.830
Ort
/dev/mapper/home
@theSplit: Vielleicht solltest du das etwas mehr ausführen, weil so, wie du das grade geschrieben hast, änderst du gar nichts an der Sicherheit.

Userverwaltung sieht in Linux üblicherweise folgendermaßen aus:

Eine Datei hat genau einen Besitzer und genau eine Besitzergruppe. Das führt dazu, dass es auf jeder Datei drei Rechteabschnitte gibt, nämlich den Owner (User), die Group, und alle anderen.
Ich geh hier jetzt explizit NICHT auf ACLs und erweitertes Rechtemanagement ein, weil es die Sache unnötig verkompliziert und in den wenigsten Setups sinnvoll ist. Einfach ist übersichtlich, und übersichtlich ist sicher.

Es gibt für jeden Rechteabschnitt genau 3 Rechte auf eine Datei:
Lesen - r(ead)
Schreiben - w(rite)
Ausführen - (e)x(ecute)

Siehst du dir eine x-beliebige Datei auf dem System per ls -l an, sieht das etwa so aus:

-rwxr-xr-x 1 root root Größe Änderungsdatum Dateiname

Das bedeutet:
Die Datei darf von dem User (root) gelesen, geschrieben und ausgeführt werden, von der Besitzergruppe (root) nur gelesen und ausgeführt und von allen anderen ebenfalls nur gelesen und ausgeführt werden. Nicht verwirren lassen: In den meisten Distros hat jeder User eine primäre Gruppe, die nur ihn selbst enthält und genauso heißt wie er selbst - das ist ein Sicherheitsfeature, weil alle neuen Dateien mit seinem User und seiner Usergruppe erstellt werden, und man schnell einstellen kann, dass der Rest standardmäßig zum Beispiel gar nicht darauf zugreifen darf (per umask, das lass ich hier aber jetzt auch mal weg).

Ein User darf in unendlich vielen Gruppen Mitglied sein. Wenn du also möchtest, dass eine Datei von mehreren Usern bearbeitet werden darf, musst du nur Folgendes machen:

1. Du erstellst eine Gruppe, die alle diese User beinhaltet.
2. Du änderst mit chown die Besitzergruppe der Datei (chown :gruppe Datei)
3. Du änderst die Rechte mit chmod so ab, dass die Benutzergruppe das darf (chmod g+w Datei)

Warum ich Split jetzt etwas angegangen bin, liegt darin, dass er dir nur unzureichend Infos gibt. chmod kann ziemlich viel ändern, und so, wie er das macht, ändert er die Rechte global, d. h. für alle Rechteabschnitte. Ich habe hier eine andere Syntax gewählt, nämlich eine dedizierte: ugo beschreibt den Rechteabschnitt, und rwx das Recht. Nun kannst du mit +, - und = genaue Anweisungen geben, welcher Rechteabschnitt welche Rechte bekommen soll. In der Praxis wird man als Linux-Admin aber einfacher vorgehen, nämlich im Oktalsystem. Hinter jedem Recht steht eine Zahl, und man muss nur addieren, um den Abschnitt mit einem Rechteset zu versehen:
r = 4
w = 2
x = 1

Ich kann so also schnell für eine Datei das Rechteset rwxrwxr-x festlegen, wenn ich einfach nur
chmod 775 Datei
mache, anstatt
chmod u=rwx,g=rwx,o=rx Datei

Wenn du willst, dass in Ordnern Rechte automatisch vererbt werden, kann man das mit einem Sonder-Bit tun:
chmod g+S Ordner
vererbt die Gruppenrechte des Ordners an alle Dateien, die dort neu erstellt werden. Allerdings ist Samba zum Beispiel dafür bekannt, das zu ignorieren, insofern ist das nicht immer eine gangbare Lösung.
 

Michael2019

NGBler

Registriert
11 Mai 2019
Beiträge
178
  • Thread Starter Thread Starter
  • #76
Erst mal VIELEN DANK!!!!

@Metal_Warrior

Super Beitrag, vielen Dank!!! Im Grunde wird es so sein, dass sich außer mir keiner per SSH einloggen wird, das ist sicher. Trotzdem schreibe ich "Sicherheit" groß!

Es gibt für jeden Rechteabschnitt genau 3 Rechte auf eine Datei:

Ja, das ist mir bekannt. Sollte ich, auch wenn ich mich nur mit dem anderen von mir erstellten Nutzer einlogge, an den Rechten etwas ändern?

Was die Verschlüsselung angeht, das muss ich mir noch genau ansehen, damit das klappt.
 

Metal_Warrior

Defender of Freedom
Teammitglied

Registriert
10 Aug. 2013
Beiträge
6.830
Ort
/dev/mapper/home
@Michael2019: Kommt drauf an, was er können soll. Grundsätzlich darf er vermutlich erstmal alles lesen, was nicht kritisch ist (d. h. keine Keys, Passwortdateien etc., weil die root gehören und nur 640 als Rechteset haben). Grundsätzlich solltest du am System selbst rechtetechnisch nichts verändern, das geht nämlich fast immer in die Hose. Lediglich Dateien, die einer deiner User erstellt hat, und nicht für andere sichtbar sein sollen, solltest du mit o-rwx bearbeiten. Einfacher geht es, einfach nur deinem Userordner die Others-Berechtigungen zu entziehen. Keine Sorge, das stört das Anmelden nicht; root darf immer, egal was in den Rechten steht.
 

Michael2019

NGBler

Registriert
11 Mai 2019
Beiträge
178
  • Thread Starter Thread Starter
  • #78
@Metal_Warrior

Nun habe ich ein Problem, ich habe die Gracetime auf 2 Sekunden gesetzt - ich gebe zwar sofort das PW ein, aber "remote connecton" wird getrennt - was nun? Den Benutzer "pi" habe ich gesperrt, sodass sich nur mein angelegter Nutzer anmelden darf.

Edit: Mit WinSCP geht es, wenn das PW gespeichert wird. Aber ich speichere nie Passwörter auf dem Rechner. Ich muss das wieder ändern.

Edit: Allerdings habe ich so keine Rechte, die Datei zu modifizieren bzw. nachdem ich sie runtergeladen und verändert habe wieder hochzuladen. Wie bekomme ich das in den Griff?
 
Zuletzt bearbeitet:

theSplit

1998
Veteran Barkeeper

Registriert
3 Aug. 2014
Beiträge
28.562
@Michael2019: Wieso kannst du "nicht wieder hochladen" ? Hat der Benutzer (nicht "root") keine Berechtigungen?

Bzw. versuchst du eine Config Datei zu überschreiben, auf die der Remote Nutzer aber keine Schreibrechte hat? Oder wie ist dies zu verstehen?

Da du dich indirekt ja ausgesperrt hast mit der Grace Time, kannst du folgendes machen:
1) Das Paket "sshpass" installieren...
2) Dann:
[kw]sshpass -p dasPasswort ssh user@hostname[/kw]

Das sollte dafür sorgen, das du "rechtzeitig" als User @ Hostname mit "dasPasswort" eingeloggt wirst. Und du die "Grace Time" wieder hochsetzen kannst, wenn du dich mit "su-" als Root anmelden kannst.

Es ist nur wichtig du solltest danach deine Bash History zu leeren, weil dein Passwort sonst dort nachvollziehbar ist:
[kw]history -r[/kw] (auf deinem PC, nicht die Gegenstelle,

Danach, zu empfehlen, dass du Schlüssel (Key Authentication) benutzt, was deutlich sicherer als Passwort Authentication ist.
 

drfuture

Zeitreisender
Teammitglied

Registriert
14 Juli 2013
Beiträge
8.731
Ort
in der Zukunft
Oder 2. Faktor per Google authentikator (bzw. Kompatible Programme) als Alternative. Praktisch wenn man mehrere Dienste per 2fk absichert und man kein keyfile im Zugriff haben muss.
 
Oben