Wie blockiere ich einen Befehl, zum Beispiel mkdirfür einen bestimmten Benutzer?
Was ich gerade erstellt habe, ist eine Nur-Lese-Funktion, die im Benutzerprofil gespeichert wird ~/.bashrc
/bin/mkdir() {
echo "mkdir command not allow for you"
}
mkdir() {
echo "mkdir command not allow for you"
}
./mkdir() {
echo "mkdir command not allow for you"
}
readonly -f /bin/mkdir
readonly -f mkdir
readonly -f ./mkdir
Prüfung:
rahul@ubuntu:~$ cd /bin/
rahul@ubuntu:/bin$ ./mkdir /home/rahul/ggg
mkdir command not allow for you
rahul@ubuntu:/bin$ cd
rahul@ubuntu:~$ mkdir testing
mkdir command not allow for you
rahul@ubuntu:~$ /bin/mkdir testing
mkdir command not allow for you
Meine Frage ist also, wie dies erreicht werden kann. Gibt es ein Werkzeug dafür?
Update 1 # Wenn der Benutzer jedoch schlau ist, kann er mkdir binary kopieren und umbenennen und verwenden. Wie kann man das erreichen?
cp /bin/mkdir mkdir2dann verwenden :(
cp -r /usr/local/lib gggwird ein Verzeichnis mit dem Namen erstellt ggg(das eine Kopie des Inhalts von /usr/local/lib, falls vorhanden, enthält, die der Benutzer dann einfach löschen kann). Mit können find / -type d -emptySie ein leeres Verzeichnis zum Kopieren suchen.
mkdirund umbenennen oder sogar die vorhandene Binärdatei kopieren und umbenennen kann. Es gibt auch eine Shell zum Überschreiben von Aliasen und Funktionen.