EN JA
PASSWD(1)
PASSWD(1) FreeBSD General Commands Manual PASSWD(1)

名称

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

書式

passwd [ -l][ user]

yppasswd [ -l][ -y][ -d domain][ -h host][ -o]

解説

passwd ユーティリティは、ユーザの local, Kerberos, NIS パスワードを変更します。ユーザがスーパユーザでない場合、 passwd は最初に現在のパスワードを求め、正しいパスワードが入力されない場合には処理を停止します。

新規パスワード入力時、パスワードは表示されません。通りがかりの人にパスワードを見られることを避けるためです。 passwd ユーティリティは、タイプミスを検出するため、2 度新規パスワード入力を求めます。

新しいパスワードは、少なくとも 6 文字以上 (ユーザのログインクラスに対する login.conf(5) の“minpasswordlen”設定が優先します) で、アルファベットだけにならないようにすべきです。パスワードの最大文字数は、 _PASSWORD_LEN (現在は 128 文字) より短いことが必要です。

新規パスワードは大文字と小文字を混合して含む必要があります (ユーザのログインクラスに対して login.conf(5) の“mixpasswordcase”の設定を使用することで、上書き可能です)。小文字だけのパスワードのみ許可可能な場合に、小文字パスワードを許すと有用でしょう。例えば Windows クライアントを認証するために Samba を使用する場合が、該当します。他のすべての場合、数字、大文字、メタ文字が推奨されます。

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

次のオプションが使用可能です:

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

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

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

NIS との相互作用

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

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

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

-y
passwd は強制的に NIS 用になります。
-l
NIS が有効なときに、 -l フラグは強制的に passwd を“ローカルのみ”モードにするために使用できます。このフラグは、NIS ユーザが同じログイン名で存在するとき、ローカルユーザのためのエントリを変更するために使用することができます。例えば、システム用の bindaemon といった“代替”エントリは NIS パスワードマップとローカルユーザデータベースの両方に存在することが、よくあります。この場合デフォルトでは passwd は NIS のパスワードを変更しようとします。 NIS ではなくローカルのパスワードを変更するとき -l を使います。
-d domain
NIS パスワードを変更するとき、ドメイン名を指定します。デフォルトで passwd は、システムのデフォルトドメイン名を使います。このフラグは主に NIS マスタサーバのスーパユーザが使用するものです。一つの NIS マスタサーバが複数のドメインを扱っている場合や、 NIS マスタサーバではドメイン名が設定されていない (NIS サーバは必ずしもクライアントになる必要はありません) 場合に、 passwd コマンドがどのドメインを扱うのかを指定する必要があります。
-h host
NIS サーバの名前を指定します。このオプションを -d オプションと共に用いることで、非ローカルな NIS サーバ上の NIS パスワードを変えることが出来ます。ドメインが -d オプションで指定され、 passwd が NIS マスタサーバの名前が決定できない (おそらく、ローカルのドメイン名が設定されていないため) ときには、 NIS マスタサーバは、“localhost”であると仮定されます。このサーバ名を -h で指定することが出来ます。指定するホスト名は NIS マスタサーバでなくても構いません。 NIS マスタサーバ名はドメイン内の NIS (マスタもしくはスレーブ) サーバに問い合わせることで決定されるので、スレーブサーバを指定しても構いません。
-o
NIS マスタサーバにおいて、スーパユーザの確認を省略しません。代わりに“old”モードとします。このフラグはあまり実用的ではありませんが、パスワードのテストに使うことが出来ます。

関連ファイル

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

関連項目

chpass(1), kinit(1), login(1), login.conf(5), passwd(5), kerberos(8), kpasswdd(8), pw(8), pwd_mkdb(8), vipw(8) Robert Morris and Ken Thompson, UNIX password security.

yppasswd は実際には passwd へのリンクです。

歴史

passwd コマンドは、 Version 6 AT&T UNIX で登場しました。
June 6, 1993 FreeBSD