はてなあたまさんのブログです。

WEB開発勉強中でーす

1-3.Linuxのセキュリティー/グループ

1-3.Linuxのセキュリティー

   グループ。

   Linuxでグループとは「ファイル共有」と言えます!


Linuxが新しいファイルを作る時には

ファイル権限をuid, gidで与えました。

例えば、test.txtというファイルがあるとしましょう!

一般ユーザーアカウントである「Aさん」が、test.txtにアクセルするためには

①ファイルを変更するか

②defaultグループを第3者も含めることができるようにするべきでした。

めっちゃくちゃ複雑で面倒ですね。

それでよくつかわれているのが「SUIDとSGID」というコマンドです。

このコマンドを使うことにして実行時、実行権限が作成者のものになり

ファイルが実行されるので、ものすごく楽になります!!!!


① SUID= set user id

-> ユーザーがファイルを直接実行する時、そのファイルは作成者(=所有者ですね)の

名前に実行するようにさせてくれるものです。

SUIDがonの状態では、どのアカウントでファイルを実行させても

ファイルは作成者(=所有者ですね)の権限で実行されます。

・・なぜですか?と聞かれると権限問題にあって

シェルスクリプトかファイルかプログラムなどなど・・の作成者(=所有者)ではなければ

データベースに繋げれないとかの権限設定がありますので

そのような「面倒さ」を解消するために

このような遠回しなやり方を使っているようです。


② SGID= set group id

こっちもSUIDのように。

SGIDがonの状態では、どのアカウントでファイルを実行させても

ファイルは作成者のグループ(=所有者ですね)の権限で実行されます!

*このオプションを活性化させると共有directoryが所有しているように

作れます。

ex) mkdirとtouchみたいなdirectoryがSGIDがonになっているとしましょ!!!

そのdirectoryに入ると所有者のグループ名が例え・・・「sy」ですね???

ですが! 現在、ログインしているユーザーのグループは「hatena」だとしましょ!

そうすると、今ログインしているユーザがどのようなこと(コマンドとか?)をしても

そのフォルダ―の所有者のグループに実行されます。

因みに、SGIDがonに設定されているフォルダ―の「サブフォルダ」まで

全部設定されますので、注意が必要です!!!


3.stick bit

プロセスが終わっても、ファイルがメモリーの中に残るようにするFLAGです。

あまり使われてないようです。