Como bloquear o comando, digamos, mkdir
para um usuário específico?
O que eu fiz acabou de criar uma função somente leitura e armazenar no perfil de usuários ~/.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
Teste:
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
Então, minha pergunta é: qual deve ser a maneira de conseguir isso? existe alguma ferramenta para isso?
Atualização 1 # Mas se o usuário for inteligente, ele poderá copiar o binário do mkdir, renomeá-lo e usá-lo. Então, como conseguir isso?
cp /bin/mkdir mkdir2
, em seguida, usá-lo :(
cp -r /usr/local/lib ggg
criará um diretório chamado ggg
(contendo uma cópia do conteúdo /usr/local/lib
, se houver, que o usuário poderá excluir). Você pode usar find / -type d -empty
para encontrar um diretório vazio para copiar.
mkdir
e renomeá-lo, ou mesmo apenas copiar e renomear o binário existente. Além disso, há um shell embutido para substituir aliases e funções.