• Willkommen im Linux Club - dem deutschsprachigen Supportforum für GNU/Linux. Registriere dich kostenlos, um alle Inhalte zu sehen und Fragen zu stellen.

[jelöööst] nfs

suwelo

Member
Hallo zusammen,
es wird mir ja fast schon peinlich schon wieder eine Anregung in den Raum zu werfen.

Seit vielen Jahren wächst mein Scripte Reichtum auf meinen Systemen an. Wenn man verschiedene Systeme mit gleichen oder ähnlichen Betriebssystem Varianten betreibt, gibt es doch bestimmt eine Lösung wie die gemeinsame Nutzung der

Code:
$USER/bin

Verzeichnisse für das "Script sharing" im LAN via "nfs "verteilt werden kann.

User (auch root (, ja)) meldet sich an und ein zentrales "Script Verzeichnis" wird im "home" Verzeichnis gemountet mit sämtlichen Berechtigungen, die der User auch sonst überall auf den "locahost" mit "ssh" und im Netzwerk Bekannten User Bereich angemeldeten System hat.

Ich habe auch in der

Code:
$USER/.bashrc

"alias" verteilt ..

Welche (Online-) Lektüre könnt Ihr mir für dieses Vorhaben empfehlen?

Habe ich die Ansicht allgemein vielversprechend, verständlich, vermitteln können?


:eek:ps:
 
Für so etwas gab es früher NIS, heutzutage würde man das wohl eher über LDAP bzw Kerberos machen. Dabei geht es aber eher darum auf jedem Rechner mit dem gleichen User immer die gleiche Umgebung zu haben. Stichworte solltest Du jetzt haben um da mal zu gucken ob das in etwa deinen Anforderungen entspricht. Danach kann man dann mal weiter gucken.
 
OP
suwelo

suwelo

Member
Hallo,
von NIS habe ich schon gehört und ein wenig gelesen. Ist das für Unix Systeme das sogenannte "Datei Domain System"?
Evtl habe ich das falsch ausgedrückt.

LDAP ist mir ein Begriff und kommt, so mir bekannt, für Verzeichnis und Annmeldestrukturen in Frage, ähnlich dem alten (veralteten) M$ Domain System noch vor ADS. Bei Novell (4 + 5) wäre es der NDS Tree.
Ich weiss auch was "Roaming Profiles" bei WIN NT sind. (waren?)

Gibt es für LDAP eine grafische Benutzeroberfläche?
Gibt es brauchbare Templates für die "Schemes" Dateien?
Darauf baut LDAP auf.

Geht das in die Richtung?

Ich möchte lediglich eine Konsole Umgebung mit zentralem Script Verzeichnis von einem extra dafür vorgesehenen anderen System haben.

Code:
$USER/bin

oder vollständiges  

$HOME/user

Keine grafische Anmeldung an den Systemen. Nur SSH.

Kerberos ist doch eine Anmelde Verschlüsselungsmethode von M$?
 

marce

Guru
Damit das sauber funktioniert musst Du erst mal dafür sorgen, daß alle User auf allen beteiligten Systemen die gleiche ID haben.

... dann solltest Du Dir Gedanken darum machen, was ggf. passiert, wenn das NFS mal nicht zur Verfügung steht.

... dann die Files auf einen NFS-Server zu packen und den auf jedem System einzubinden ist dann sozusagen das kleinste Problem...
 

stka

Guru
Dann will ich mal: Also NIS ist tot und zwar sowas von tot, das richt schon nicht mal mehr. Wenn du NFS auf mehreren Clients nutzen willst, ist eine zentrale Benutzerverwaltung schon von Vorteil, da kommt dann OpenLDAP ins Spiel. Ist zwar schon ein Brett so ein LDAP-Server aber gut und stabil. Einrichten musst du den über die Kommandozeile, verwalten kannst du deine Benutzer und Gruppen hinterher grafisch, gute Tools sind der LDAP Account Manger (LAM) oder das "ApacheDirectoryStudio". LAM ist Web-basiert "ApacheDirectoryStudio" ist Java und nur lokal installiert. Wenn du OpenLDAP konfigurieren willst dann hast du zwei Möglichkeiten: Die klassische über die slapd.conf oder die moderne über eine eigenen Datenbank. Für den Einstig empfehle ich auf jeden Fall die Konfiguration über die slapd.conf, die du später auch noch umwandeln kannst. Es gibt jede Menge howtos im Netz such dir eines das du gut verstehst und spiele damit erst einmal rum. Wenn der Server läuft ist der offen wie ein Scheunentor du solltest dir auf jeden Fall TLS und ACLs absehen. Du kannst aber auch ein Buch zum Thema kaufen :D. Ich hoffe, das hilft die bei deiner Entscheidung.
 

/dev/null

Moderator
Teammitglied
Hallo suwelo,

ich weiß ja nicht, in welchen Größenordnungen sich deine Gedanken bewegen. Also, wie viele Rechner und welche Datenmengen?

Bei mir geht es um ggw. vier eigene Rechner und 2 von Freunden, welche über mein Wireguard-VPN mit meinen Geräten korrespondieren.
Und da ich den Ehrgeiz habe, (ohne darüber nachdenken zu müssen) auf allen meinen Rechnern immer die gleichen Daten zu haben, habe ich folgendes "gebaut":

Meine "Drehscheibe" ist ein kleiner RasPi 4B, welcher von einem 64GB-Stick bootet. Und darauf läuft (neben meinem pi-hole) lediglich ein Seafile-Server.
Auf allen Clients läuft der Seafile-Client. Auch, wenn ich es nicht benötige: den gibt es auch für die WinDOSe.
Und jetzt habe ich alles so konfiguriert, dass mein fast komplettes /home (ohne die großen Brocken wie ISOs, Filme, die Bildersammlung und diverse Caches usw.) meiner Rechner mit dem Seafile-Server synchronisiert. Dazu werden einfach alle zu synchronisierenden Ordner "zusammengeklickt". Natürlich dauert die Erstbefüllung einige Zeit.

Ergebnis:
  • Lege ich irgendwo irgend eine Datei an oder ändere eine, blitzt kurz ein Throbber auf und mein Client ist mit dem Server synchron. Fast unbemerkt und blitzschnell.
  • Will ich mal einen anderen Rechner benutzen, ist dieser nach wenigen Sekunden oder maximal Minuten auf dem gleichen Stand.
  • Da alle meine "außerhäusig" betriebenen Geräte (Lappi und Schlaufernsprecher) grundsätzlich immer über mein VPN mit dem Heimnetz verbunden sind, funktioniert das auch, wenn ich das Gerät erst "irgendwo" (wo ich "Netz" habe) einschalte.
  • Und zum bewussten Verteilen von Daten habe ich einen (verschlüsselten) Ordner "Transfer" angelegt.
  • Auch meine Freunde nutzen so wie beschrieben mein Serverchen. Sowohl zu Hause, als auch Unterwegs. An jedem der bei ihnen stehenden WG-Server (jeweils eine Fritz!Box 7412) sind alle ihre Geräte per VPN angeschlossen.

Ich könnte mir gut vorstellen, dass da auch eine größere Scriptsammlung keine Hürde für einen Seafile-Server darstellt. (Aber wie schon geschrieben, ich kenne deinen Umfang nicht!)

BTW:
Ich weiß natürlich, dass das Synchronisieren nichts mit einer Datensicherung zu tun hat. Das mache ich mit Duplicati auf mehrere verteilte NAS ... .

MfG Peter
 

spoensche

Moderator
Teammitglied
Dein Vorhaben ist, mit Blick auf die Sicherheit, nicht ganz ausgereift und auch nicht empfehlenswert. Wenn ein User die Zugriffsrechte, insbesonderes die Ausführungsrechte bearbeiten kann, kann er durch aus auch das SUID Bit setzen. Wenn ein Angreifer jetzt einen normalen Benutzeraccount kompromitiert hat und auch die Möglichkeit, den Eigentümer auf root zu ändern und das SUID- Bit zu setzen, dann kann er ganz easy root Zugriff auf jedem deiner Systeme erhalten und du hast einen super GAU.

Das ist bestimmt nicht in deinem Interesse.

Mal abgesehen davon sollte die Anmeldung per root nur im Failsafe bzw. Recovery Mode zulässig sein und ansonsten ist root access nur via sudo möglich.

Lösungsmöglichkeiten:

1. Kopier die Scripte via Ansible auf die Zielsysteme.

2. Erstelle dir eigene RPM Pakete und du hast die optimale Lösung.

3. Schreibe dir ein Script, dass beim Systemstart prüft, ob die Scripte lokal existieren und wenn nicht holst du die Scripte als t.gz Archiv via HTTP vom Server und kopierst sie nach /usr/local/bin.
 
OP
suwelo

suwelo

Member
Hallo,
vergangenes Wochenende ist mir wieder eingefallen, weshalb ich von NIS die Finger weglassen wollte. Es funktioniert nicht. Die 3 Tage waren verschwendete Zeit.

NFS hat den Nachteil, dass ich ein von PC A bereit gestelltes "NFS share", das als zentrales Backup Verzeichnis im LAN auf PC B gemountet wurde, nicht als Sicherungsverzeichnis benutzt werden kann.

Bei NFS sind Sicherheitsbedenken in einem Welt weit wachsenden LAN durchaus berechtigt.

SeaFile, ansible, heartbeat, pacemaker, sind Cluster angelehnte Lösungen.

Mit heartbeat habe ich schon herum experimentiert, mit mäßigem Erfolg.

Mir würde eine einfache Desktop lose SSH Umgebung auf Konsole Basis ausreichen. Es handelt sich nur um mehrere Single Board PCs und einen Desktop.

Die Script Verzeichnis Größe wäre mit 20 MB (Tendenz stark steigend) angedacht. Die Scripte müssten hin- und her geschoben werden. Noch ist es weit aus weniger.

:D
 
suwelo schrieb:
.. gibt es doch bestimmt eine Lösung wie die gemeinsame Nutzung der
Code:
$USER/bin
Verzeichnisse für das "Script sharing" im LAN via "nfs "verteilt werden kann.
Ich verwende dafür sshfs
Berechtigungen lassen sich am ssh_server sehr gut justieren und verschüsselt ist die Verbindung auch.
Zur Zeit habe ich mehrere Flash_partitions auf ARM Systeme von Firma nach zu Hause gemountet.
Bin sehr zufrieden mit dieser Lösung.
 

marce

Guru
Jede Mount-Lösung scheitert meist (oder krankt) an der SPOF des Quellsystems (ok, außer er will ein Ceph oder sonstiges Cluster-FS über die Geschichte legen, was aber wieder ganz andere Dinge mitsichbringen würde)

Nächster QnD-Ansatz wäre aus meiner Sicht ein lokales git-Repo an gewünschter Stelle (oder dahin verlinkt oder ggf. sogar ge-overlay-FSd) welches auf allen beteiligten Systemen beim Login gefetched und beim Logout gepushed wird.
 
A

Anonymous

Gast
marce schrieb:
Jede Mount-Lösung scheitert meist (oder krankt) an der SPOF des Quellsystems (ok, außer er will ein Ceph oder sonstiges Cluster-FS über die Geschichte legen, was aber wieder ganz andere Dinge mitsichbringen würde)

Nächster QnD-Ansatz wäre aus meiner Sicht ein lokales git-Repo an gewünschter Stelle (oder dahin verlinkt oder ggf. sogar ge-overlay-FSd) welches auf allen beteiligten Systemen beim Login gefetched und beim Logout gepushed wird.
Finde ich für diese Aufgabenstellung hier doch sehr ambitioniert, obwohl ich noch überlegen würde zusätzlich die connections mit einer QKD solutions zu protecten ;)
@marce, mal ganz im Ernst, Schlimmer Fall von IT-DEnglisch.

Ich lese in Eingangspost doch ehr irgenwas von "…. allgemein vielversprechend, verständlich, vermitteln können …."
suwelo schrieb:
Welche (Online-) Lektüre könnt Ihr mir für dieses Vorhaben empfehlen?

Habe ich die Ansicht allgemein vielversprechend, verständlich, vermitteln können?

robi
 

marce

Guru
Ja, das war das Ansinnen des TE über die Darstellung seines Problems.

Abgesehen davon finde ich, daß in einem IT-Forum Fachbegriffe durchaus genannt werden dürfen, vor allem, wenn sie beim googlen (wegen mir auch "Suchen in einer Internetsuchmaschine, egal welcher, sei's beim Marktführer oder jeder beliebigen anderen") schon Treffer bringen, die einem weiterhelfen würden.

Ob man das nun als "schlimmes IT-Denglisch" bezeichnen muss - wegen mir gerne. Die (bzw. meine) Erfahrung zeigt aber, daß man mit solchen Formulierungen meist weiter kommt als wenn man das irgendwie zu umschreiben versucht, ohne das konkrete Buzzwords für die Suchmaschine des geringesten Misstrauens copy-paste-fähig enthalten sind.
 
OP
suwelo

suwelo

Member
Moin zusammen,
mit dem Umgang von Fachbegriffen in Fachbezogenen Foren habe ich nun keine Einwände. Wenn etwas unverständlich ist, dann fragt man nach oder nutzt die Datenkrake seines grösst möglichen Missvertrauens

Als Einstieg in allgemeines Denglisch empfehle ich, dass einige Erkenntnis erweiternde Begrifflichkeiten angeschaut werden wie, "public viewing" oder "handy". Vielleicht lässt sich der geneigte Leser nachfolgend niedergeschriebene Nierdrigkeiten wie "Wireless Ladekabel" mal auf der Zunge zergehen.


:D :D

Ich habe die letzten Tage mit ClusterSSH (cssh) herum experimentiert.

Schön ist ja, dass ich einen Konsole Befehl in Echtzeit an mehrere Server innerhalb der Netzwerkinfrastruktur verteilen kann.
Es lassen sich damit auch Server Gruppen einrichten. Ich denke, dass sich das auch irgendwie mit nfs vereinbaren lassen ließe.

Leider war ich einige Tage damit beschäftigt, einen katastrophalen Fehler mit "update-initramfs" auf meinem Desktop wieder rückgängig zu machen und weil das noch zu wenig ist, den Grub Boot Loader wieder neu beleben zu müssen.

Letztere Erfahrung über einen USB Boot Stick, der mit einem "secondary (semi)" grafischen "Raspberry PI 3b" System erstellt worden ist.

Ich setz das mal auf jelöööst.

Ach bitte, bitte ihr liebsten vielen, Foren Feen.
Lasst mir doch meinen Spass "[jelöööst]" <-- ich tu's wenigstens.

Man k ö ö ö lscht nie aus.

:???:
 

marce

Guru
suwelo schrieb:
Ich habe die letzten Tage mit ClusterSSH (cssh) herum experimentiert.

Schön ist ja, dass ich einen Konsole Befehl in Echtzeit an mehrere Server innerhalb der Netzwerkinfrastruktur verteilen kann.
Es lassen sich damit auch Server Gruppen einrichten. Ich denke, dass sich das auch irgendwie mit nfs vereinbaren lassen ließe.
Den Gedankensprung von ClusterSSH auf NFS müsstest Du bitte erklären...
 

panamajo

Guru
suwelo schrieb:
vergangenes Wochenende ist mir wieder eingefallen, weshalb ich von NIS die Finger weglassen wollte. Es funktioniert nicht.
Ich behaupte das Gegenteil. Das wofür YP/NIS entwickelt wurde (Zentralisierte Bereitstellung von Benutzer/Gruppen/Hostdaten) funktioniert sehr wohl.
suwelo schrieb:
NFS hat den Nachteil, dass ich ein von PC A bereit gestelltes "NFS share", das als zentrales Backup Verzeichnis im LAN auf PC B gemountet wurde, nicht als Sicherungsverzeichnis benutzt werden kann.
Auch das funktioniert.
 
OP
suwelo

suwelo

Member
Moin zusammen,

marce schrieb:
suwelo schrieb:
Ich habe die letzten Tage mit ClusterSSH (cssh) herum experimentiert.

Schön ist ja, dass ich einen Konsole Befehl in Echtzeit an mehrere Server innerhalb der Netzwerkinfrastruktur verteilen kann.
Es lassen sich damit auch Server Gruppen einrichten. Ich denke, dass sich das auch irgendwie mit nfs vereinbaren lassen ließe.
Den Gedankensprung von ClusterSSH auf NFS müsstest Du bitte erklären...

Das eine war eine Lösung für mich, mal schnell ein Script oder eine andere Datei von "Host A" nach "Host B" oder sonst wie rum hin- und her zu kopieren.

Das andere war der Gedanke wieder zurück zu einem zentralen Backup Verzeichnis im LAN zu kommen.
 
OP
suwelo

suwelo

Member
Moin zusammen,

panamajo schrieb:
suwelo schrieb:
vergangenes Wochenende ist mir wieder eingefallen, weshalb ich von NIS die Finger weglassen wollte. Es funktioniert nicht.
Ich behaupte das Gegenteil. Das wofür YP/NIS entwickelt wurde (Zentralisierte Bereitstellung von Benutzer/Gruppen/Hostdaten) funktioniert sehr wohl.
suwelo schrieb:
NFS hat den Nachteil, dass ich ein von PC A bereit gestelltes "NFS share", das als zentrales Backup Verzeichnis im LAN auf PC B gemountet wurde, nicht als Sicherungsverzeichnis benutzt werden kann.
Auch das funktioniert.

Mein Bind9 primary und secondary bekommen es hin die Zonen Dateien in die dafür vorgesehenen Verzeichnisse zu replizieren.

Eigentlich muss YP/NIS auch die dafür vorgesehenen YP/NIS Zonendaten replizieren. Ich kann doch eigene DNS Domains
Code:
*.example.com

neben von DNS unabhängigen YP/NIS Domains
Code:
*.nyx.com
nutzen?

Ich habe bis heute keine funktionierende YP/NIS Domain konfigurieren können, wegen der Replikation der Zonen Dateien zwischen "Master" und "Slave" oder war es es "Server" und "Client"?
 

panamajo

Guru
suwelo schrieb:
Eigentlich muss YP/NIS auch die dafür vorgesehenen YP/NIS Zonendaten replizieren. Ich kann doch eigene DNS Domains
Code:
*.example.com

neben von DNS unabhängigen YP/NIS Domains
Code:
*.nyx.com
nutzen?

Ich habe bis heute keine funktionierende YP/NIS Domain konfigurieren können, wegen der Replikation der Zonen Dateien zwischen "Master" und "Slave" oder war es es "Server" und "Client"?

YP/NIS repliziert die /etc/hosts vom Server, testen kannst du das am Client mit
Code:
ypcat hosts

Welchen Voodoo du ansonsten im LAN treibst (z.B. welche(n) Nameserver du verwendest) hat nichts mit YP/NIS zu tun.
 
OP
suwelo

suwelo

Member
Hallo,
d.h. die in der

Code:
/etc/hosts

Datei hinterlegten hosts, werden mit domain übernommen.

Code:
ip.add.ress.es0	dns1.example.com	dns1
ip.add.ress.es1	dns2.example.com	dns2
ip.add.ress.es2	mail-host3.example.com	mail-host3
ip.add.ress.es3	client-host4.example.com	client-host4
# ip.add.ress.es4	client-host5.example.com	client-host5
# ip.add.ress.es5	client-host6.example.com	client-host6
.
.
.

Die /etc/hosts ist für client-host4 gültig und würde auf client-host5 und client-host6 entsprechend nach gepflegt werden.

Heisst dass, ich sollte YP/NIS nicht auf dem DNS, der so oder so alle hosts kennt konfigurieren und YP/NIS auf einem anderen Server/Host konfigurieren um an diesem alle hosts (die Bind9 kennt) in die

Code:
/etc/hosts

wieder einzupflegen, die im LAN unterwegs sind?


:???:
 
Oben