序文 Linux のファイル権限管理はとにかく素晴らしいです。SUID、SGID、SBIT の機能を確認し、まとめてみましょう。 実際、SUID と SGID の機能は sudo の機能と似ています。ユーザー A が、本来ユーザー B が所有する実行ファイルを実行したい場合、B のファイルに suid ビットが設定されていれば、A はユーザー B として実行します。 SUID は Set UID の略で、ユーザー ID を設定するという意味です。少しぎこちない感じがしますが、SUID が最も簡潔だと思います。これは、ファイル所有者の権限の実行ビットに表示されます。この権限を持つファイルが実行されると、呼び出し元は一時的にファイル所有者の権限を取得します。たとえば、次のコマンドを使用します。 ls -l /usr/bin/passwd 次のような結果が得られます。
ご覧のとおり、ファイル所有者の実行ビットは x ではなく s なので、passwd プログラムには SUID 権限があります。ユーザー パスワードを変更するときは passwd コマンドを使用すること、また Linux ではユーザー パスワードが /etc/shadow ファイルに保存されることがわかっています。まず、/etc/shadow ファイルの権限を確認します。 ls -l /etc/shadow 返される結果は次のとおりです。
上記の結果から、root のみがシャドウ ファイルにデータを書き込むことができ、他のユーザーにはそれを表示する権限すらないことを知ることができます。では、通常、パスワードはどのように変更するのでしょうか?はい、SUID に関連しています。 passwd コマンドを使用すると、passwd の所有者、つまり root の権限が取得され、shadow ファイルに書き込むことができます。 SUID を使用する場合は、次の点を満たす必要があります。 1.SUIDはバイナリファイルにのみ有効です 2. 呼び出し元はファイルに対する実行権限を持っている 3. 実行プロセス中、呼び出し側は一時的にファイルの所有者権限を取得します。 4. この権限はプログラムの実行中のみ有効です 「Bird BrotherのLinuxプライベートレシピ」には、この意味を特に表現した写真があります。 SGID は Set GID の略です。ファイルが属するグループ権限の実行ビットに表示されます。通常のバイナリ ファイルとディレクトリに有効です。通常のファイルに対して動作する場合、SUID と同様に、ファイルを実行するときに、ユーザーはファイルが属するグループの権限を取得します。 SGID がディレクトリに適用されると、非常に重要になります。ユーザーがディレクトリに対して書き込み権限と実行権限を持っている場合、そのユーザーはそのディレクトリ内にファイルを作成できます。ディレクトリが SGID で変更された場合、そのディレクトリ内にユーザーが作成したファイルは、そのディレクトリが属するグループに属します。 SBIT は Sticky Bit の略です。他のユーザー権限の実行ビットに表示され、ディレクトリを変更するためにのみ使用できます。ディレクトリに SBIT 権限がある場合、このディレクトリにファイルを作成できるユーザーは、このディレクトリとルートでそのユーザーが作成したファイルのみを削除できますが、他のユーザーは削除できません。例えば: ls -ld /tmp 以下の結果が得られます。
最後の桁が t であることがわかります。これは、/tmp ファイルがこのタイプのファイルであることを意味します。 では、上記の 3 つの権限をどのように設定すればよいのでしょうか?まず、権限を表す数字を使用して、いくつかの予備知識を紹介しましょう。
2 つまたは 3 つの権限が同時に存在する場合、書き込み権限の値を加算することで必要な結果が得られます。 SUIDとSGIDが同時に存在する場合は6になります。変更の例を次に示します。 chmod 4777 テスト テスト ファイルに SUID 権限を付与する方法は、すでにおわかりかもしれません。通常のファイル権限の前に、これらの特別な権限値を追加するだけです。 要約する 上記はこの記事の全内容です。この記事の内容が皆さんの勉強や仕事に一定の参考学習価値を持つことを願っています。ご質問があれば、メッセージを残してコミュニケーションしてください。123WORDPRESS.COM を応援していただきありがとうございます。 以下もご興味があるかもしれません:
|
<<: スライダー間隔コンポーネントのネイティブ js 実装
>>: Windows 10 無料インストール版の MySQL インストールと設定のチュートリアル
目次クエリキャッシュの最適化概要クエリプロセスクエリキャッシュ構成クエリキャッシュの無効化メモリ管理...
削除する方法はいくつかあります:リンクを直接追加するonfocus="this.blur(...
序文実際、クエリ中に結果に番号が付けられるこのような状況に遭遇したことは一度もありません。同僚が転職...
Nginx (エンジン x) は、軽量で高性能な HTTP およびリバース プロキシ サーバーであり...
信頼性が高く、人気があり、簡単に構成できる Web サーバーである Apache で独自の Web ...
目次1. 開発環境から本番環境への移行2. 統一されたリクエストパスを設定する3. パッケージ化コマ...
Docker 学習https://www.cnblogs.com/poloyy/p/15257059...
この記事では、Fedora 28 に i3 をインストールして簡単に設定する方法を説明します。 1....
この記事では、パスワードボックスの検証情報を実装するためのJavaScriptの具体的なコードを例と...
Web フロントエンド開発では、ページに多くの記事を表示することが避けられません。記事の最後にあるク...
毎回インストールチュートリアルを探すのは面倒なので、後で確認できるように手順をバックアップします。解...
入力ボックス内のカーソルのサイズが一定ではありませんIE7とChromeの違いは非常に明白ですまず、...
1. コンテナにnginxサービスをデプロイするcentos:7 イメージはコンテナを実行し、このコ...
結果: コードロジックを実装するのが主な部分であり、具体的なページ構造を一つ一つ紹介することはありま...
ムーアの法則はもはや適用されない2004年にフレックストロニクスがフロッグデザインを買収したのを皮切...