Linux での /etc/passwd および /etc/shadow 設定ファイルの詳細な説明

1./etc/passwd

パスワードユーザーを行ごとに記録します。

ユーザー名: パスワード: UID: GID: 説明情報: ホームディレクトリ: デフォルトシェル

1.1 ユーザー名

ユーザーアカウントを表す文字列にはコロン (:)、できればドット文字 (.) を含めることはできません。また、最初の文字としてハイフン (-) またはプラス記号 (+) を使用しないでください。

1.2 パスワード

「x」または「*」の場合、実際のパスワードは /etc/shadow に保存され、/etc/passwd ファイルはすべてのユーザーが読み取り可能で、/etc/shadow は root のみが読み取りおよび書き込み可能です。

1.3 UID

UID はユーザー ID であり、各ユーザーには一意の UID があり、Linux システム内でさまざまなユーザーを識別するために使用されます。RHEL8 のユーザー UID は次のように分類されます。

UIDの範囲 ユーザーID
0 システムの管理者ユーザー。
1-999 システムユーザー。サービス プログラムの抜け穴が原因でハッカーによってサーバー全体に昇格されることを避けるために、デフォルトのサービス プログラムは独立したシステム ユーザーによって実行され、それによって被害の範囲を効果的に制御します。通常はログインできません例: shutdown(6)、bin(1)、ftp(14)、halt(7)、mail(8)
0 一般ユーザー。管理者が日常業務のために作成したユーザー。

1.4 性同一性障害

ユーザーの最初のグループのグループ ID 番号。

初期グループユーザーがログインすると、このユーザー グループに関連する権限が与えられます。各ユーザーには初期グループが 1 つだけあり、通常はユーザー名と同じ名前のグループがユーザーの初期グループとして使用されます。システム管理者によってユーザー「linuxprobe」が作成されると、初期グループとして linuxprobe グループが生成されます。

追加グループユーザーは、他の複数のユーザー グループに参加し、他のグループの権限を持つことができます。これらは追加のグループであり、複数存在する場合があります。

1.5 説明情報

任意の注釈付き説明テキストを保存します。

1.6 ホームディレクトリ

ユーザーがシステムにログインした後のディレクトリ。ほとんどの場合、各ユーザーのホーム ディレクトリは特定のディレクトリの下にあり、ユーザーのホーム ディレクトリの名前はユーザーのログイン名です。各ユーザーは読み取りと実行を行います (検索) 権限。

たとえば、root のホーム ディレクトリは /root で、新しく作成されたユーザー linuxprobe のホーム ディレクトリは /home/linuxprobe です。

1.7 デフォルトのシェル

コマンド インタプリタ(シェル) は、ユーザーが入力したコマンドをシステムが認識できる機械語に変換します。主流の Linux は、デフォルトで次のような Bash (/bin/bash) インタープリターを使用します。

linuxprobe: x:1000:1000:linuxprobe:/home/linuxprobe:/bin/bash

/sbin/nologin に変更された場合、ユーザーはログインできないことを意味します。

ビン : x : 1 : 1 : ビン : / ビン : / sbin / nologin

また、シェルには sh、csh、ksh、tcsh など多くの種類があります。

2./etc/shadow

影
ユーザーを行ごとに記録します。このファイルのデフォルトの権限は [-rw------]/[---------] で、root のみが読み書きできます。

ユーザー名: 暗号化されたパスワード: 最終変更時刻: 最小変更間隔: パスワードの有効期間: パスワードの変更が必要になるまでの警告の日数: パスワードの有効期限が切れた後の猶予時間: アカウントの有効期限: 予約済みフィールド

2.1 ユーザー名

/etc/passwd のユーザー名と同じです。

2.2 暗号化パスワード

暗号化されたパスワードの形式は次のとおりです\$id\$salt\$encrypted。id は暗号化アルゴリズムを表し、salt は乱数、encrypted は暗号化された暗号文を表します。

ID 暗号化アルゴリズム
1 MD5
5 SHA256
6 SHA512
2、2y、y ふぐ

ソルトとはソルト値であり、固定長のランダムな文字列であり、パスワードを毎回変更した後、ランダムに文字列を生成し、パスワードを干渉値でハッシュ化し、そのハッシュ値を暗号化する。

2.3 最終変更日

パスワードが最後に変更された時刻を示します。19458 は、パスワードが 1970 年 1 月 1 日から 19458 日後に変更されたことを示します。

[root@ホスト名など]# date -d “1970-01-01 19458 days”
火曜日 4 月 11 日 00:00:00 CST 2023

2.4 最小変更間隔

最後にパスワードを変更した日からパスワードを変更できない期間を指定します。0 はパスワードがいつでも変更できることを意味します。

2.5 パスワードの有効期間

最後にパスワードを変更した日から、パスワードを変更しなければならない期間を指定します。デフォルトは 99999 (パスワードが永続的に有効であることを示します) ですが、多くの場合、90 に変更されます

2.6 パスワードの変更が必要になるまでの警告日数

ユーザーに「パスワードの有効期限は n 日です!」と通知します。デフォルトは 7 (パスワードが有効になるまでの最後の 7 日間) で、ユーザーがシステムにログインするたびに警告が発行されます。

2.7 パスワード有効期限後の猶予時間

パスワードの有効期限が切れた後も、パスワードを変更せずにログインできます。0 はパスワードが期限切れになるとすぐに期限切れになることを意味し、-1 はパスワードが期限切れにならないことを意味し、10 はパスワードが 10 日後に期限切れになることを意味します。

2.8 アカウントの有効期限

アカウントの有効期限は1970年1月1日からの合計日数となり、この期間を過ぎると有効期限が切れているか否かに関わらずアカウントは利用できなくなります。

2.9 予約済みフィールド

まだ使用されていません。

おすすめ

転載: blog.csdn.net/weixin_47505548/article/details/130833278