Назад | Перейти на главную страницу

Как защититься от опасных команд bash?

Когда используешь трепать с или без sudo есть много ловушек. Например, когда вы вошли в систему как root между

rm -rf ~/bin

и

rm -rf /bin 

есть только один персонаж, но эта разница может вас сильно расстроить.

Чтобы немного обезопасить себя от таких бедствий, я использую это в своем /etc/bash.bashrc (общесистемный .bashrc):

if [ $UID -ne 0 ]; then
    # ask me before deleting
    alias rm='rm -i'
else
    # do not delete / or prompt if deleting more than 3 files at a time
    alias rm='rm -I --preserve-root'
fi

При этом я, по крайней мере, должен подтвердить удаление, прежде чем попаду в беду. Может быть, есть еще более опасные команды, такие как rm ...

Какие самые опасные bash-команды и как защитить себя от повседневных бедствий?

Во-первых, никогда не используйте root для выполнения повседневных команд.

Это лучший способ подвергнуть себя опасности.

Имея это в виду, если вы используете sudo, вы можете фактически ограничить команды И параметры команд, которые пользователь может выполнить с помощью sudo.

Например, в вашем файле sudoers вы можете ограничить использование rm следующим образом:

myuser ALL=(root)   NOPASSWD: rm -r

Это означало бы, что myuser можно использовать только sudo как корень и может только выполнить rm с вариант.

Файл sudoers также поддерживает регулярное выражение, поэтому вы действительно можете настроить то, что может выполняться при использовании sudo.

Хорошая отправная точка...