SMB Zugriff zeitlich begrenzen

Tamagotschi

Benutzer
Mitglied seit
22. Jul 2019
Beiträge
17
Punkte für Reaktionen
0
Punkte
1
Hallo!

Ich stehe vor einem "Problem" und finde keine Lösung dazu.

Möchte eine SMB Freigabe für einen Synology Benutzer zeitlich begrenzen. Beispiel: Mo - Fr von 8-18 Uhr. Danach soll der User nicht mehr auf das Laufwerk zugreifen können.
Mir ist bewusst, dass das sehr problematisch ist, wenn Dateien geöffnet sind und eine Trennung erfolgt. Es sind aber nur reine "Leserechte" auf das Laufwerg vergeben.

Mein Ansatz wäre eine API Lösung, oder ein Script unter Linux?
Ist mein Vorhaben überhaupt möglich?

Über jeden Beitrag zur Lösung würde ich mich sehr freuen :)!

VG
Tamagotschi
 

plang.pl

Benutzer
Contributor
Sehr erfahren
Maintainer
Mitglied seit
28. Okt 2020
Beiträge
14.180
Punkte für Reaktionen
4.915
Punkte
519
Nur für einen User?
Wäre es eine Option, dass der User sich nach der Zeit gar nicht mehr an der DS anmelden kann?
 

Tamagotschi

Benutzer
Mitglied seit
22. Jul 2019
Beiträge
17
Punkte für Reaktionen
0
Punkte
1
Nein, andere "Dienste" sollen weiter laufen (können).
Es geht rein um einen User/Benutzer - vielleicht irgend wann auch mal 2,3 oder mehrere ;)
 
Zuletzt bearbeitet von einem Moderator:

plang.pl

Benutzer
Contributor
Sehr erfahren
Maintainer
Mitglied seit
28. Okt 2020
Beiträge
14.180
Punkte für Reaktionen
4.915
Punkte
519
Mir würde da nur einfallen via Script die /etc/samba/smb.conf anzupassen. Danach müsste aber jedesmal der Samba-Dienst neu gestartet werden, wordurch für ein paar Sekunden alle Connections wegbrechen
EDIT: Oder die hier: /etc/samba/smb.share.conf
 

Tamagotschi

Benutzer
Mitglied seit
22. Jul 2019
Beiträge
17
Punkte für Reaktionen
0
Punkte
1
Ja, das wäre die einfachste Lösung.
Aber gibt es da nicht auch eine API Anbindung für die Syno? Könnte man es darüber machen?
Brechen wirklich immer alle bestehenden Verbindungen kur ab wenn ich einen Benutzer unter der Syno ändere? Also Verzeichnisse zuweise, Berechtigungen ändere usw. ?? Kein HUB auf die Prozesse?
 
Zuletzt bearbeitet von einem Moderator:

plang.pl

Benutzer
Contributor
Sehr erfahren
Maintainer
Mitglied seit
28. Okt 2020
Beiträge
14.180
Punkte für Reaktionen
4.915
Punkte
519
Wenn die Samba Config via CLI geändert wird, findet das m.W. erst dann Anwendung, wenn der Samba Dienst neu startet. Bei Änderungen via UI / API gilt das nicht. Ich wüsste aber nicht, wie sich die gewünschte Änderung per API realisieren lässt. Eine andere Lösung wäre ein weiteres Firewall-Profil zu erstellen und das per geplantem Script umzuschalten. In dem einen Profil hat der Client dann ganz normal Zugriff und in dem anderen wird der Samba-Port von dem Client aus geblockt. Das ginge via API und ohne Neustart irgendwelcher Dienste.
 

plang.pl

Benutzer
Contributor
Sehr erfahren
Maintainer
Mitglied seit
28. Okt 2020
Beiträge
14.180
Punkte für Reaktionen
4.915
Punkte
519
Du kannst auch 2 getrennte Konten für ihn anlegen. Einer für Dienste und der andere nur für SMB. Der erstere Account hat entsprechend keinen Zugriff auf SMB. Den User per API zu deaktivieren und aktivieren, ist tatsächlich das einfachste von allen genannten Methoden
 

Tamagotschi

Benutzer
Mitglied seit
22. Jul 2019
Beiträge
17
Punkte für Reaktionen
0
Punkte
1
Okay, das wäre eine Idee - 2 Accounts. 1 nur für SMB und diesen via API zeitlich steuern. Danke für den Tipp!
Werde mich dann mal daran versuchen :)
Dazu erst mal die Doku zu der API Schnittstelle lesen ....
 
Zuletzt bearbeitet von einem Moderator:

plang.pl

Benutzer
Contributor
Sehr erfahren
Maintainer
Mitglied seit
28. Okt 2020
Beiträge
14.180
Punkte für Reaktionen
4.915
Punkte
519
https://global.download.synology.co...logy_DiskStation_Administration_CLI_Guide.pdf
synouser NAME --modify expired 1 müsste das Konto deaktivieren, denke ich. Teste es mal. Ich weiß allerdings nicht, wie schnell die Änderung für SMB-Connections gilt. Musst mal ein wenig rumtesten. Und dann bitte hier Rückmeldung geben. Ich bin interessiert.
EDIT: Und ich weiß nicht genau, wo in dem Befehl der Name hin muss
 

Tamagotschi

Benutzer
Mitglied seit
22. Jul 2019
Beiträge
17
Punkte für Reaktionen
0
Punkte
1
Alles klar - danke!
Werde ein paar Tage brauchen, aber gebe dann eine Rückmeldung.
 
Zuletzt bearbeitet von einem Moderator:

plang.pl

Benutzer
Contributor
Sehr erfahren
Maintainer
Mitglied seit
28. Okt 2020
Beiträge
14.180
Punkte für Reaktionen
4.915
Punkte
519
Jo teste mal. Und bitte nicht immer die Beiträge voll zitieren. Ist hier und auch generell in Foren nicht gerne gesehen.
 

Tamagotschi

Benutzer
Mitglied seit
22. Jul 2019
Beiträge
17
Punkte für Reaktionen
0
Punkte
1
Folgendes würde klappen, vorausgesetz man kennt die IP Adresse von dem Rechner, der sich mit der Syno verbunden hat (SMB).

Syno User deaktiveren und offene Prozesse zum User schließen:
synouser --modify <Syno Username> "<Beschreibung Syno Username>" 1 <email Adresse des Users>
smbcontrol smbd kill-client-ip <ip Adresse des Clients>

Beispiel:
synouser --modify WichtigeDaten "Wichtige Daten in dem Verzeichnis" 1 hans@musermann.de
smbcontrol smbd kill-client-ip 192.168.0.25

Bei einem Windows Rechner war die Verbindung dann weg und auf das Netzwerklaufwerk konnte nicht mehr zugegriffen werden.

Syno User aktivieren:
synouser --modify <Syno Username> "<Beschreibung Syno Username>" 0 <email Adresse des Users>
Beispiel:
synouser --modify WichtigeDaten "Wichtige Daten in dem Verzeichnis" 0 hans@musermann.de

Ein "reload" oder "restart" vom SMBService war nicht nötig.

Wer allgemein schauen will ob es zu einem User SMB Verbindungen gibt:
smbstatus -u <Syno Username> -p
Beispiel:
smbstatus -u WichtigeDaten -p

Leider ist die json lib für samba nicht installiert sonst könnte man noch besser ein Programm schreiben um die Netzwerkverbindung zu trennen.
Aber so geht es auch ;)
 
Zuletzt bearbeitet:

plang.pl

Benutzer
Contributor
Sehr erfahren
Maintainer
Mitglied seit
28. Okt 2020
Beiträge
14.180
Punkte für Reaktionen
4.915
Punkte
519
Danke für die Rückmeldung.
 


 

Kaffeautomat

Wenn du das Forum hilfreich findest oder uns unterstützen möchtest, dann gib uns doch einfach einen Kaffee aus.

Als Dankeschön schalten wir deinen Account werbefrei.

:coffee:

Hier gehts zum Kaffeeautomat