PASSWD(1)

名称
passwd, yppasswd - ユーザのパスワードを変更する

書式
passwd [-l] [user] yppasswd [-l] [-y] [-d domain] [-h host] [-o]

解説
passwd は、ユーザの local, Kerberos, NIS パスワードを変更します。 パスワードの変更にあたっては、最初に、現在のパスワードの入力を求 められます。現在のパスワードが正しく入力されたら、新しいパスワードの入 力を求められます。新しいパスワードは、タイプミスを避けるため、2 回入力しな ければなりません。

新しいパスワードは、少なくとも 6 文字以上 (ユーザのログインクラスに対する login.cap(5) の "minpasswordlen" 設定が優先します) で、アルファベットだけにならな いようにすべきです。パスワードの最大文字数は、 _PASSWORD_LEN (現在は128文字) より短くなければなりません。 数字、アルファベットの大文字、メタキャラクタの使用を推奨します。

新しいパスワードが確認されたら passwd は新しいパスワードを Kerberos 認証ホストに伝えます。

-l  Kerberosデータベースではなく、 ローカルマシンのパスワードだけを変更します。 ローカルマシンのパスワードだけを変更する場合は、 pwd_mkdb(8) がパスワードデータベースの更新に使われます。

ローカルまたは NIS パスワードを変更する場合、 ユーザのログインクラスの "passwordperiod" ケーパビリティに基づき、 次にパスワードを変更すべき日付が設定されます。

別のユーザの Kerberos パスワードを変更するには、 kinit(1) を実行してから、 passwd(1) を実行する必要があります。 スーパユーザがローカルマシンのパスワードを修正するときにかぎり、現在の パスワードの入力は不要です。

NIS との相互作用
passwd は NIS のサポートが組み込まれています。 もしユーザ名が NIS のパスワードデータベースの中にあり、 ローカルにはない場合、 passwd は自動的に ``yppasswd'' に切り替わります。 指定されたユーザ名がローカルのパスワードデータベースにも、 NIS のパスワードマップにも存在しない場合、 passwd はエラーを返します。

NIS のパスワードを変更するとき、非特権ユーザーは 確認のために現在のパスワードの入力を求められます ( rpc.yppasswdd(8) デーモンはいかなる変更でも NIS パスワードマップに加える前に 現在のパスワードの入力を求めます)。 この制限はスーパユーザにも適用されますが、大きな例外があります。 NIS マスタサーバのスーパユーザはパスワードの確認が省略されるの です。 したがって、NIS マスタサーバのスーパユーザは、すべてのユーザの NIS パスワードを無制限に変更できます。 しかし、NIS クライアントや NIS スレーブサーバのスーパユーザは 変更にパスワードが必要です。

以下のオプションは NIS のためのものです:

-y  passwd は強制的に NIS 用になります。

-l  NIS が有効な場合に passwd を強制的にローカル用にします。 このフラグは同じログイン名で NIS のユーザと ローカルなユーザが存在するときに、ローカルユーザの パスワードエントリを変更するために使われます。 例えば、システム用の bin や daemon といったエントリは NIS パスワードマップとローカルユーザデータベース の両方に存在することが、よくあります。 この場合デフォルトでは passwd は NIS のパスワードを変更しようとします。 NIS ではなくローカルの パスワードを変更するとき -l を使います。

-d domain
    NIS パスワードを変更するとき、ドメイン名を指定します。デフォルトで passwd は、システムのデフォルトドメイン名を使います。このフラグは主に NIS マスタサーバのスーパユーザが使用するものです。一つの NIS マスタサーバが複数のドメインを扱っている場合や、NIS マスタサーバでは ドメイン名が設定されていない (NIS サーバーは必ずしもクライアントになる 必要はありません) 場合に、 passwd コマンドがどのドメインを扱うのかを指定する必要があります。

-s host
    NIS サーバの名前を指定します。このオプションを -d オプションと共に用いることで、非ローカルな NIS サーバ上の NIS パスワードを変えることが出来ます。 -d オプションでドメイン名を指定し、 NIS マスタサーバの名前が決定できな い (おそらく、ローカルのドメイン名が設定されていないため) ときには、 NIS マスタサーバは、 ``localhost'' であると仮定されます。 このサーバ名を -s で指定することが出来ます。指定するホスト名は NIS マスタサーバ でなくても構いません。 NIS マスターサーバー名はドメイン内の NIS (マスタもしくはスレーブ) サーバに問い合わせることで決定される ので、スレーブサーバを指定しても構いません。

-o  NIS マスタサーバにおいて、スーパユーザの確認を省略しません。 'old' モードにします。このフラグはあまり実用的ではありませんが、 パスワードのテストに使うことが出来ます。

関連ファイル
/etc/master.passwd
    パスワードのマスタファイル
/etc/passwd
    Version 7 形式のパスワードファイル
/etc/passwd.XXXXXX
    パスワード変更時に作られるテンポラリファイル
/etc/login.conf
    ログインクラスケーパビリティデータベース
/etc/auth.conf
    認証サービスの設定

関連項目
chpass(1), kerberos(1), kinit(1), login(1), login.conf(5), passwd(5), kpasswdd(8), pwd_mkdb(8), vipw(8) Robert Morris, Ken Thompson, UNIX password security.

注釈
yppasswd(1) は実際には passwd へのリンクです。

歴史
passwd コマンドは AT&T UNIX から登場しました。