はい、rootにはすべての権限があります
ここで、ディレクトリ名のテストを作成し、ファイルlonston.txtにタッチしてファイルをリストしたことがわかります。
root@system99:/tmp# mkdir test && touch lonston.txt && ls -l
total 4
-rw-r--r-- 1 root root 0 Feb 27 16:35 lonston.txt
drwxr-xr-x 2 root root 4096 Feb 27 16:35 test
次に、000を使用してファイルとディレクトリの権限をnull権限に変更し、権限を表示するためにリストしました
root@system99:/tmp# chmod 000 lonston.txt && chmod 000 test && ls -l
total 4
---------- 1 root root 0 Feb 27 16:35 lonston.txt
d--------- 2 root root 4096 Feb 27 16:35 test
それから、私はファイルに書き込み、catを使用してファイルを読み取ることができます
root@system99:/tmp# echo "Yes root have all Privileges than other user's, let we see the permission of user's too" > lonston.txt
root@system99:/tmp# cat lonston.txt
Yes root have all Privilages than other user's, let we see the permission of user's too
たとえ私がd ---------(null)000許可を持っているディレクトリに入っても、rootでさえ読み取りまたは書き込み許可を持っていません。
root@system99:/tmp# cd test/
root@system99:/tmp/test# pwd
/tmp/test
でも、許可の変更後にファイルとフォルダを作成できました
root@system99:/tmp/test# touch /tmp/test/lonston/testdir/babin.txt
root@system99:/tmp/test# ls -l /tmp/test/lonston/testdir/
total 0
-rw-r--r-- 1 root root 0 Feb 27 16:39 babin.txt
ここで、400の許可が表示されます。
root@system99:/tmp/test# chmod 400 babin.txt
ファイル許可を確認するリスト
root@system99:/tmp/test# ls -l
total 8
-r-------- 1 root root 34 Feb 27 16:42 babin.txt
drwxr-xr-x 3 root root 4096 Feb 27 16:38 lonston
vim im iを使用して、ファイルbabin.txtに1行追加しました
root@system99:/tmp/test# vim babin.txt
しかし、vimモードでは、W10に気付くでしょう:警告:読み取り専用ファイルを変更しますが、それでも書き込み可能です
これで、出力用にファイルをcatできます
root@system99:/tmp/test# cat babin.txt
hi this is the write persmission
this is added while the file have 400 permission
次に、rootユーザーから通常のユーザーにログアウトし、rootの何もnull permissonを持つファイルをリストしました
root@system99:/tmp# exit
exit
/ tmpディレクトリに移動します
sysadmin@system99:~$ cd /tmp/
sysadmin@system99:/tmp$ ls -l
total 8
---------- 1 root root 88 Feb 27 16:36 lonston.txt
d--------- 2 root root 4096 Feb 27 16:35 test
しかし、通常のユーザーからファイルを読んでいる間はできません
sysadmin@system99:/tmp$ cat lonston.txt
cat: lonston.txt: Permission denied
sysadmin@system99:/tmp$ cd test/
cat: test/: Permission denied
それだけです、rootユーザーの力を得ることを願っています
通常のユーザーの場合、root権限が必要な場合はsudoを使用する必要があり、sudoパスワードが要求されます
例:
sysadmin@system99:/tmp$ sudo cat lonston.txt
[sudo] password for sysadmin:
Yes root have all Privilages than other user's, let we see the permission of user's too
sudoユーザーはrootユーザーのグループと連携しているため、sudoにはroot権限があります。
sudoの詳細
# man sudoers
ここでは、通常のユーザーがSudo権限を持つことができるように定義されていることがわかります。
sysadmin@system99:/tmp$ sudo cat /etc/sudoers
# Members of the admin group may gain root privileges
%admin ALL=(ALL) ALL
# Allow members of group sudo to execute any command
%sudo ALL=(ALL:ALL) ALL
完全に、rootに読み取り権限がない場合でも、ファイルを読み取り、編集、または削除できます。
CAP_DAC_OVERRIDE
を与えると、システム上の他のセキュリティメカニズムをオーバーライドするために必要なすべての特権が1回のファウルで一気に付与されます。CAP_DAC_OVERRIDE
基本的にCAP_DO_WHATEVER_YOU_WANT
です。