nistbladm コマンドでは、シャドウ列の様々なフィールドの値を指定することによってパスワードパラメータの設定を行います。シャドウ列のフィールドの値は、以下のような形式で設定します。
個々のフィールドの内容は以下のとおりです。
「n1 最終変更日」は、パスワードが最後に変更されたときの日付です。1970 年 1 月 1 日からの日数で表されます。このフィールドの値は、パスワードが変更されると自動的に更新されます (日数に関する詳細な情報は、「nistbladm と日数」に示されています)。このフィールドが空白であったり、指定されている値が 0 の場合は、過去に一度もパスワードの変更が行われていないことを意味します。
このフィールドの値は、残りのフィールドの設定の基礎となることに注意してください。このフィールドの値が不当に変更されると、残りのフィールドの設定も不当なものになります。
「n2 最小値」は、パスワードが変更されてから、次の変更が可能になるまでの期間です。たとえば、パスワード作成時の最終変更日フィールドの値が 9201 (1970 年 1 月 1 日から 9201 日経過したことを示す) で、最小値フィールドの値が 8 だとすると、 9209 日目まではパスワードの変更ができません (詳細は、「パスワードの変更禁止期間の設定」を参照)。
この値としては以下の 3 とおりが考えられます。
「0」は、変更禁止期間がないことを意味します。
「0 より大きい数字」はこの数字がパスワードの変更禁止期間 (単位:日) になります。
「最大値 (n3) より大きい値」はこのフィールド値が最大フィールドの値より大きい場合、パスワードを変更できません。変更しようとすると、You may not change this password というメッセージが表示されます。
「n3 最大値」は、パスワードが作成されてから、使用できなくなるまでの日数を示します。この日数を過ぎると、ログインの際新しいパスワードの設定が強制されます。たとえば、パスワード作成時の最終変更日の値が 9201 の最大値が 30 である場合、9231 (9201+30) 日目が経過した後は、ログイン時に新しいパスワードの設定が強制されます (詳細は、「パスワードの有効期間の設定」を参照してください)。
この値としては以下の 3 とおりが考えられます。
「0」は「次回のログイン時にパスワードの変更を強制し、その後は有効期間を設定する機能を停止する」ということを意味します。
「0 より大きい値」は、この数字がパスワードの有効期間 (単位:日) になります。
「-1」は、有効期間を設定する機能を停止するということを意味します。つまり passwd -x -1 username というコマンドを実行すると、以前に行われたパスワードの有効期間の設定が解除されることになります。このフィールドを空白にしておくと、-1 として扱われます。
「n4 警告」は、「パスワードが間もなく無効になる」という警告メッセージが表示されるタイミングを示します。パスワードが作成されてからの日数で指定します。たとえば、最終変更日が 9201、最大値が 30、警告が 5 である場合、9226 (9201+30-5) 日が経過した後は、ログインの度に「パスワードが間もなく無効になる」という警告メッセージが表示されます (詳細は、「警告期間の設定」を参照)。
この値としては以下の 2 とおりが考えられます。
「0」は、警告メッセージが表示される期間がないことを示します。
「0 より大きい値」は、この数字が、パスワードが作成されてから警告メッセージが表示されるまでの期間 (日数) になります。
「n5 間隔」は、ログインとログインの間隔 (日数) の最大値です。ここで指定された日数を超える期間ログインを行わないと、ログインができなくなります。たとえば、間隔に 6 を指定した場合、6 日間ログインを行わないと 7 日目にはログインができなくなります (詳細は、「ログインの間隔の最大値の指定」を参照)。
この値としては以下の 2 とおりが考えられます。
「-1」は、デフォルト設定です。機能を停止します。この場合、ログインとログインとの間隔が何日開いてもログイン特権が失われることはありません。
「0 より大きい値」は、この数字が、ログインとログインの間隔 (日数) の最大値になります。
「n6 期限」は、パスワードの有効期限を示します。1970 年 1 月 1 日からの日数で表されます。この日を過ぎると、ログインができなくなります。たとえば、期限が 9739 (1995 年 9 月 1 日) に設定されている場合、1995 年 9 月 2 日 (GMT) になるとログインができなくなります。このときログインを試行すると Login incorrect というメッセージが表示されます (詳細は、「パスワード使用権の有効期限」を参照)。
この値としては以下の 2 とおりが考えられます。
「-1」は、機能を停止します。パスワードが有効期限を過ぎている場合でも、-1 を設定すると再び使えるようになります。有効期限を設定したくないときは、-1 を指定するようにしてください。
「0 より大きい値」は、この数字が有効期限の日付になります (1970 年 1 月 1 日から数えたもの)。現在以前の日付を設定すると、パスワードはすぐに無効になります。
Login はユーザのログイン ID
nistbladm を使用して passwd テーブルのシャドウ列を設定する場合、すべてのフィールドに適切な値を指定する必要があります。空白のまま残したり、0 を入力したりしても「変更なし」という意味にはなりません。
ユーザー amy が、パスワードの最終変更日が 1995 年 5 月 1 日 (1970 年 1 月 1 日から数えて 9246 日目)、パスワード作成後の変更禁止期間が 7 日、パスワードの有効期間が 30 日、「パスワードが間もなく無効になる」という警告が表示されるのがパスワード作成から 26 日目以降、ログインとログインの間隔の最大値が 15 日、アカウントの有効期限が (1970 年 1 月 1 日から) 9255 日目という設定にするには、以下のように入力します。
master# nistbladm -m shadow=9246:7:30:5:15:9255:0 [name=amy], passwd.ord_dir