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 ユーザが同じログイン名で存在するとき、ローカルユーザのためのエントリを変更するために使用することができます。例えば、システム用の bin や daemon といった“代替”エントリは 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 |