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 (-1)」は、「-1」は、有効期間を設定する機能を停止するということを意味します。つまり passwd -x -1 username と入力すると、使用期間に関して該当ユーザーに行われていた設定はすべて解除されます。このフィールドを空白にしておくと、-1 として扱われます。
「n4 警告」は、パスワードの使用期間がその最大値に達する前に、パスワードを変更するように警告される日数です。たとえば、最終変更日時フィールドの値が 9201 、最大値フィールドの値が 30、警告フィールドの値が 5 であると仮定します。この場合、日付が 9226 日 (9201+30-5=9226) 以降になると、ログインするたびに「パスワードを変更してください」という警告が表示されます。パスワードの警告時期の詳細については、「警告期間の設定」を参照してください。
この値としては以下の 2 とおりが考えられます。
警告メッセージが表示される期間がないことを示します。
警告メッセージが表示される期間をその日数に指定します。
「n5 間隔」は、ログインとログインの間隔 (日数) の最大値です。ここで指定された日数を超える期間ログインを行わないと、ログインができなくなります。たとえば、間隔に 6 を指定した場合、6 日間ログインを行わないと 7 日目にはログインができなくなります (アカウントの最大ログイン間隔についての詳細は、「ログインの間隔の最大値の指定」を参照)。
この値としては以下の 2 とおりが考えられます。
「マイナス1 (-1)」は、最大ログイン間隔機能を解除します。任意の日数の間オフにすることができ、ログイン権限を失うことはありません。これがデフォルトです。
最大ログイン間隔 (日数) を指定します。
「n6 期限」は、パスワードの有効期限を示します。1970 年 1 月 1 日からの日数で表されます。この日を過ぎると、ログインができなくなります。たとえば、期限が 9739 (1995 年 9 月 1 日) に設定されている場合、1995 年 9 月 2 日 (GMT) になるとログインができなくなります。このときログインを試行すると「Login incorrect」というメッセージが表示されます (詳細は、「パスワード使用権の有効期限」を参照)。
この値としては以下の 2 とおりが考えられます。
「マイナス1 (-1)」は、有効期限の設定を解除します。パスワードが有効期限を過ぎている場合でも、-1 を設定すると再び使えるようになります。有効期限を設定したくないときは、-1 を指定するようにしてください。
有効期限の日付 (「1970 年 1 月 1 日から数えて何日目か」) です。現在以前の日付を設定すると、パスワードはすぐに無効になります。
「Login」はユーザーのログイン ID を指定します。
nistbladm を使用して passwd テーブルのシャドウ列を設定する場合、すべてのフィールドに適切な値を指定する必要があります。空白のまま残したり、0 を入力したりしても「変更なし」という意味にはなりません。
ユーザー amy が、パスワードの最終変更日が 1995 年 5 月 1 日 (1970 年 1 月 1 日から数えて 9246 日目)、パスワード作成後の変更禁止期間が 7 日、パスワードの有効期間が 30 日、「パスワードが間もなく無効になる」という警告が表示されるのがパスワード作成から 26 日目以降、ログインとログインの間隔の最大値が 15 日、アカウントの有効期限が (1970 年 1 月 1 日から) 9255 日目という設定にするには、以下のように入力します。
nistbladm -m shadow=9246:7:30:5:15:9285 [name=amy], passwd.org.dir |