/etc/shadow ファイルは、ユーザー認証に関する情報を保存するために使用されます。これにはスーパーユーザーの読み取り権限が必要です。
$ sudo cat /etc/shadow
root:MyEPTEa$6Nonsense:15000:0:99999:7:::
/etc/passwd の内容と非常によく似ていることに気づくでしょう。ただし、パスワードフィールドには暗号化されたパスワードが表示されます。フィールドはコロンで区切られており、以下の通りです。
- ユーザー名
- 暗号化されたパスワード
- 最終パスワード変更日 - 1970 年 1 月 1 日からの日数で表されます。0 の場合、ユーザーは次回ログイン時にパスワードを変更する必要があります。
- パスワードの最小使用期間 - ユーザーがパスワードを再度変更できるようになるまでに待つ必要がある日数。
- パスワードの最大使用期間 - ユーザーがパスワードを変更しなければならない最大日数。
- パスワード警告期間 - パスワードの有効期限が切れるまでの日数。
- パスワード非アクティブ期間 - パスワードの有効期限が切れた後、そのパスワードでのログインを許可する日数。
- アカウント有効期限 - ユーザーがログインできなくなる日付。
- 将来の使用のために予約されたフィールド。
今日のほとんどのディストリビューションでは、ユーザー認証は /etc/shadow ファイルだけに依存していません。PAM (Pluggable Authentication Modules) のような、認証を置き換える他のメカニズムが導入されています。