Ist es möglich, die Berechtigungen von USB-Ports auf einem Debian (Linux) -System einzuschränken?
Zum Beispiel :
- Die Möglichkeit unterdrücken, jegliches Material außer dem USB-Stick anzuschließen ?
- Die Möglichkeit geben, einen USB-Stick zu lesen, aber nicht darauf zu schreiben ?
- Senden eines Warnsignals, wenn ein USB-Stick an ein System angeschlossen ist?
linux
debian
permissions
usb
JeanJouX
quelle
quelle
Antworten:
Wenn der Linux-Kernel ein neues Gerät erkennt, sendet er eine Nachricht an udev . Die Aufgabe von udev ist es, das neue Gerät dem Benutzerland zugänglich zu machen. Für viele Geräte muss udev lediglich Einträge in erstellen
/dev
. Bei Blockgeräten kann das Gerät so montiert werden. Auf diese Weise können dedizierte Anwendungen das Gerät für Zeichengeräte wie serielle Ports und Sound-Ports verwenden. Für Netzwerkschnittstellen kann udev einen Namen festlegen. Für Tastaturen kann udev auch zusätzliche Scancodes definieren. Wenn udev keinen Geräteeintrag erstellt, wird das Gerät effektiv nicht verwendet.Udev kann durch Regeln gesteuert werden ; Standardregeln sind in vorhanden
/lib/udev/udev.d
und können vom Administrator über Dateien in überschrieben werden/etc/udev/udev.d
. Jede udev-Regel hat Bedingungen der Form ; Die Regel gilt, wenn alle diese Regeln erfüllt sind. Sie können die Bedingungen, die für ein Gerät gelten, anzeigen, indem Sie oder ausführen .VARIABLE==VALUE
udevadm info -a -n /dev/…
udevadm info -a /sys/…
Soweit ich weiß, gibt es keinen generischen Mechanismus, um ein Gerät zu ignorieren. Wenn es sich nicht um eine Netzwerkschnittstelle handelt (unter der kein Geräteknoten verwendet wird
/dev
), können Sie sie effektiv unbrauchbar machen, indem Sie ihr keine Berechtigungen erteilen:USB-Geräte verfügen über einen Autorisierungsmechanismus : Wenn das
authorized
Attribut auf 0 (false) gesetzt ist, greift das System nicht auf das Gerät zu. Mit dieser Regel ist kein anderes USB-Gerät als USB-Speichergeräte verfügbar.Es ist auch möglich , USB-Geräte nach der Startsequenz zu deaktivieren, indem Sie alle USB-Host-Ports mit diesem Snippet deaktivieren
/etc/rc.local
:Einzelne Geräte können über eine udev-Regel (oder manuell) aktiviert werden, die das
authorized
Attribut auf 1 setzt.Wenn Sie ein Speichergerät schreibgeschützt machen möchten, setzen Sie sein
ro
Attribut auf 1.Wenn Sie einen Befehl ausführen möchten, verwenden Sie den
RUN
Schlüssel in einer udev-Regel (beachten Sie, dass Sie den vollständigen Pfad zum Befehl benötigen und die verfügbaren Escape-Sequenzen und Umgebungsvariablen im Handbuch finden ). Wenn Sie möchten, dass dieser Befehl auf die GUI zugreift, lesen Sie Öffnen eines Fensters auf einer Remote-X-Anzeige (warum "Anzeige kann nicht geöffnet werden").quelle
Sie sollten einige udev-Regeln einrichten.
Schritte für Ihre Anforderungen:
Hier ist ein releated Thread: /ubuntu/15570/configure-udev-to-change-permissions-on-usb-hid-device
Es sollte helfen, zu erklären und weitere Hinweise zu geben. Wenn Sie nicht weiterkommen, fügen Sie Ihrer Frage die nächste Straßensperre hinzu.
quelle