Scroll to navigation

LOGIN.DEFS(5) File Formats Manual LOGIN.DEFS(5)

名前

/etc/login.defs - shadow パスワード機能の設定

説明

/etc/login.defs ファイルは shadow ログイン機能に対するサイト固有の設定を定義する。 このファイルは必ず存在しなければならない。 このファイルが無くてもシステム運用は可能であるが、 おそらく望まない結果となるだろう。

このファイルは読み取り可能なテキストファイルで、 ファイル中の一行につき一つの設定パラメータを設定している。 各行では、設定パラメータの名前とその値が空白で区切られて示される。 空行とコメント行は無視される。 コメント行は `#' 記号で始まる。 記号`#'はその行での空白以外の最初の文字でなければならない。

パラメータ値は四つの型を取ることができる。 文字列・ブール型・数値・倍精度数値、である。 文字列には全ての印字可能文字を使える。 ブール型パラメータの値は ``yes'' か ``no'' のいずれかでなければならない。 値の指定されていないブール型パラメータや、 ``yes'', ``no'' 以外が指定されたブール型パラメータの値は ``no''とされる。 (単精度および倍精度) 数値は、 10 進数、 (数値の前に ``0'' を付けた) 8 進数、 (数値の前に ``0x'' を付けた) 16 進数のいずれかで指定する。 単精度・倍精度数値パラメータの最大値は計算機に依存する。

以下に示すような設定項目がある:

もし yes なら、 chfn, chsh 両プログラムは、スーパーユーザが起動したのでない限り 何らかの変更を行なう前にパスワードを尋ねる。
このパラメータは passwd ファイルの gecos フィールドのうち、 一般ユーザが chfn を使って変更できるフィールドを指定する。 指定する文字列は f, r, w, h 各文字の任意の組み合わせで、それぞれフルネーム、部屋番号、 職場電話番号、自宅電話番号を意味する。 指定されなかった場合は、スーパーユーザだけが全ての項目を変更できる。 最も制限をきつくしたい場合は、 chfn を SUID ではインストールしなければよい。
useradd プログラムおよび groupadd プログラムがグループ ID を選択する時の範囲。
メールスプールディレクトリ。 あるユーザアカウントが修正・削除された際に、 そのユーザのメールボックスに対する作業のために必要となる。 指定されないと、コンパイル時のデフォルト値が用いられる。
一つのパスワードを使える最長日数。 パスワードがこの日数よりも古い場合は、変更するよう強制される。 指定されていない場合は -1 となる (この制限機能を無効にする)。
パスワードを変更してから次に変更できるようになるまでの最短日数。 この日数が経たないうちにパスワードを変更しようとしても拒否される。 指定されていない場合は -1 となる (この制限機能を無効にする)。
パスワードの有効期限が来る前に警告を発する期間の日数。 ゼロにしておくと、期限切れの当日にのみ警告を行い、 負の数を指定した場合は一切警告を行わない。 指定されていない場合は警告を行わない。

PASS_MAX_DAYS, PASS_MIN_DAYS, PASS_WARN_AGE はアカウントを作るときにだけ利用される。 これらの設定を変更しても、既存のアカウントには影響しない。

useradd プログラムがユーザ ID を選択する時の範囲。
許可属性マスクをこの値に初期化する。 指定されていない場合は、許可属性マスクは 077 に初期化される。
定義されていると、ユーザを削除するときにこのコマンドが実行される。 削除されるユーザ (最初の引き数に渡される) の at/cron/print ジョブなどを削除するコマンドにしておくとよい。

参照表

以下の参照表は、 shadow パスワード機能のどのプログラムが どのパラメータを使用するかを示したものである。

CHFN_AUTH CHFN_RESTRICT
CHFN_AUTH
GID_MAX GID_MIN
PASS_MAX_DAYS PASS_MIN_DAYS PASS_WARN_AGE UMASK
PASS_MAX_DAYS PASS_MIN_DAYS PASS_WARN_AGE
GID_MAX GID_MIN PASS_MAX_DAYS PASS_MIN_DAYS PASS_WARN_AGE UID_MAX UID_MIN UMASK
MAIL_DIR USERDEL_CMD
MAIL_DIR

バグ

shadow パスワード機能によって提供されてきた機能の大部分は、 現在は PAM によって処理されている。 したがって、 login(1), passwd(1), su(1) などのプログラムは、もはや /etc/login.defs を用いない。 対応する PAM の設定ファイルを調べるようにしてほしい。

関連項目

login(1), passwd(1), su(1), passwd(5), shadow(5), pam(8)

著者

Julianne Frances Haugh (jockgrrl@ix.netcom.com)
Chip Rosenthal (chip@unicom.com)