login.defs - ファイルのフォーマットと規約の説明 - Linux コマンド集 一覧表
名前
/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 の設定ファイルを調べるようにしてほしい。
関連項目
著者
Julianne Frances Haugh (jockgrrl@ix.netcom.com)
Chip Rosenthal (chip@unicom.com)