web-dev-qa-db-ja.com

危険なbashコマンドから保護する方法は?

bashSudoの有無にかかわらず使用する場合、多くのトラップがあります。たとえば、rootとしてログインした場合

rm -rf ~/bin

そして

rm -rf /bin 

キャラクターは1人だけですが、この違いによってかなり不幸になる可能性があります。

このような災害を少しでも防ぐために、これを/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コマンドは何ですか?日常の災害から身を守るために?

6
WeSee

まず、rootを使用して日常のコマンドを実行しないでください。

それが実際に災害にさらされる最良の方法です。

このことを念頭に置いて、Sudoを使用すると、実際にコマンドと、ユーザーがSudoで実行できるコマンドオプションを制限できます。

たとえば、sudoersファイルでは、次のようにrmの使用を制限できます。

myuser ALL=(root)   NOPASSWD: rm -r

これは、myuserがSudoをrootとしてのみ使用でき、 -rオプションを指定してrmを実行します。

Sudoersファイルは正規表現もサポートしているため、Sudoの使用中に実行できる内容を実際にカスタマイズできます。

良い出発点 .。

10
Alex