Linuxファイルシステムでは、すべてのファイルに、さまざまな目的で使用される3つの特別なアクセス許可があります。このチュートリアルでは、スティッキービットについて説明します。 、 SUID、 およびSGID Linuxファイルシステムでのファイル権限。
スティッキービットとは何ですか?
スティッキービットは、ファイルとディレクトリに対する特別なアクセス許可を示すために使用されます。スティッキービットが有効になっているディレクトリで、その中のファイルの削除が制限される場合。
すべてのファイルにはスティッキービットが設定されており、その所有者、ルート、またはファイルにアクセス許可を書き込む必要があるユーザーが削除できます。これは、 / tmpのような共有または公的にアクセス可能なディレクトリに役立ちます 。
Linuxファイルシステムのファイルにスティッキービットを設定する方法。
方法1:
chmod +t file1.txt
##View the file permissions ls -l file1.txt
-rw-r--r-T 1 root root 0 Mar 8 02:06 file1.txt
モトド2:
chmod 1777 file1.txt
##View the file permissions
ls -l file1.txt
-rwxrwxrwt 1 root root 0 Mar 8 02:06 file1.txt
上記の出力は、スティッキービットが文字 tで設定されていることを示しています またはT 提出された許可で。小文字のt 実行権限も有効で大文字のTであることを表します 実行権限が設定されていないことを表します。
SUID(setuid)とは何ですか?
SUIDビットがファイルに設定されていて、ユーザーがそれを実行した場合。プロセスには、実行中のファイルの所有者と同じ権限があります。
例: passwd コマンドでSUIDビットが有効になっています。通常のユーザーがパスワードを変更すると、このスクリプトは / etc / passwdなどのいくつかのシステムファイルを更新します。 および/etc / shadow root以外のアカウントでは更新できません。そのため、 passwd コマンドプロセスは常にrootユーザー権限で実行されます。
LinuxシステムでのファイルへのSUIDの実装は次のとおりです。
方法1:
chmod u+s file2.txt
##View the file permissions ls -l file2.txt
-rws r-xr-x 1 root root 0 Mar 8 02:06 file2.txt
方法2:
chmod 4655 tecadmin.txt
##View the file permissions ls -l tecadmin.txt
-rwS r-xr-x 1 root root 0 Mar 8 02:06 tecadmin.txt
SGID(setgid)とは何ですか?
SUIDと同じように、プロセスは実行中のファイルと同じグループ権限を持ちます。 SGIDビットがいずれかのディレクトリに設定されている場合、内部で作成されたすべてのサブディレクトリとファイルは、メインディレクトリと同じグループ所有権を取得します。誰が作成したかは関係ありません。
LinuxシステムのディレクトリにSGIDを設定する方法。
chmod g+s /test
##View the file permissions ls -ld /test
drwxrws rwx 2 root root 4096 Mar 8 03:12 /test
次に、別のユーザーに切り替えて、 / testでファイルを作成します ディレクトリ。
su - tecadmin
cd /test/
touch file3.txt
Next check the group ownership of the newly created file. It must be same as the /test directory group owner.ls -l file3.txt
-rw-rw-r-- 1 tecadmin root 0 Mar 8 03:13 file3.txtはい、同じです。 file3.txtは、ルートグループの所有権で作成されます。
この記事を読んでいただきありがとうございます。Linuxのスティッキービット、SUID、およびSGIDを理解するのに役立つことを願っています。
Linux