家庭的な質問があります。私は7歳の子供にLinuxの使い方を教えたいとしましょう。私は彼がYouTubeキッズチャンネルで時間を無駄にしたくない。だから私はそのようなチャンネルをブロックするためにChromeに拡張機能を適用しました。しかし、Linuxを学んでみると、拡張機能の強制インストール構成ファイルを削除したいかもしれません。プロファイルの削除を防ぎながら彼にsudo権限(Linuxを完全に体験できるようにする)を許可するにはどうすればよいですか?
場合によっては、彼はsudoerに関連する状況の解決策を学ぶことができます。例:sudo apt installの場合は、実際にソースコードをダウンロードし、必要なものをコンパイルしてインストールできます。
しかし、彼はsudoer以外のユーザーとして/etc/resolf.confを変更することはできません。
私が知っている限り、2つの異なるsudoerがお互いのファイルを変更することができます。
最後に、OSファイルの所有者を変更したくありません。これを行う正しいバージョンは何ですか?
ベストアンサー1
ALL
あなたが要求するのは、セットから命令を取り除こうとしているので完全に不可能です。ルートなどの管理者がコマンドをブラックリストに登録することはほとんど不可能ですので、man sudoers
詳しく説明してください。
安全予防措置
「!」の制限演算子
ALLから「減算」のために「!」演算子の使用は通常効果がありません。ユーザーは目的のコマンドを別の名前にコピーし、そのコマンドを実行してこの問題を簡単に回避できます。たとえば、
bill ALL = ALL, !SU, !SHELLS
BillがSUまたはSHELLSにリストされているコマンドを実行するのを実際に防ぐ方法はありません。なぜなら、彼は単にコマンドを別の名前にコピーしたり、エディタや他のプログラムのシェルエスケープを使うことができるからです。したがって、そのような制限はせいぜい勧告と見なされるべきです(そして政策によって強化されるべきです)。
通常、ユーザーがsudo ALLを使用している場合は「!」要素があるかどうかにかかわらず、ルートシェルを提供するために独自のプログラムを作成する(または独自のシェルコピーを作成する)ことを防ぐことはできません。ユーザー仕様。
以下を考慮することができます。
- ブラックリストの代わりにホワイトリストを定義します。
- 仮想マシンでオペレーティングシステムを実行し、ホストマシンを介したWebサイトへのアクセスを制限します。
- ルーターのファイアウォール設定でWebアクセスを制限します。