Hallo!
Ich habe ein kleines Script geschrieben, dass auf /dev/usb/lp0 zugreifen soll (mit rw rechten)
Dieses Script sollen alle User ausführen können, jedoch sollen die User NICHT auf /dev/usb/lp0 Zugriff haben.
Wie ist es möglich dies zu realisieren? Vielleicht irgentwie mit dem suid bit oder so?
Gruß
Chris
Rechte-Problem
Normalerweise würdest du für diesen Zweck eine neue Gruppe, z.B. "usbprinter" anlegen, ein chgrp usbprinter .../usb/lp0 machen, und der Gruppe schreibzugriff geben.
Dein Skript würdest du dann ebenfalls der Gruppe zugehörig machen und dann das setgid-bit setzen (chmod g+s)
Leider ignoriert der Kernel aus Sicherheitsgründen das SETGID und SETUID-Flag bei Skripten. Sollte dein Skript in Perl sein, musst du das perl-suid Paket dazuinstallieren. Sollte es ein Shellskript sein, würde ich stattdessen mittels sudo arbeiten.
Dein Skript würdest du dann ebenfalls der Gruppe zugehörig machen und dann das setgid-bit setzen (chmod g+s)
Leider ignoriert der Kernel aus Sicherheitsgründen das SETGID und SETUID-Flag bei Skripten. Sollte dein Skript in Perl sein, musst du das perl-suid Paket dazuinstallieren. Sollte es ein Shellskript sein, würde ich stattdessen mittels sudo arbeiten.