http://wiki.samba.gr.jp/mediawiki/index.php?title=%E4%B8%80%E8%88%AC%E3%83%A6%E3%83%BC%E3%82%B6%E3%81%A7_smbpasswd_%E3%82%B3%E3%83%9E%E3%83%B3%E3%83%89%E3%81%8C%E4%BD%BF%E3%81%88%E3%81%AA%E3%81%84&feed=atom&action=history
一般ユーザで smbpasswd コマンドが使えない - 版の履歴
2024-03-29T08:29:39Z
このウィキのこのページに関する変更履歴
MediaWiki 1.39.5
http://wiki.samba.gr.jp/mediawiki/index.php?title=%E4%B8%80%E8%88%AC%E3%83%A6%E3%83%BC%E3%82%B6%E3%81%A7_smbpasswd_%E3%82%B3%E3%83%9E%E3%83%B3%E3%83%89%E3%81%8C%E4%BD%BF%E3%81%88%E3%81%AA%E3%81%84&diff=1455&oldid=prev
Ribbon: J0016
2006-08-09T05:31:32Z
<p>J0016</p>
<p><b>新規ページ</b></p><div>{{冒頭部|J0016|2002/04/02|たかはしもとのぶ}}<br />
==対象==<br />
この文書は、以下のプロダクトに付いて説明したものです。<br />
* Samba 2.2.x<br />
* Samba 2.0.x<br />
* Samba 1.x <br />
==状況==<br />
一般ユーザが smbpasswd コマンドを利用してパスワードの変更を行なおうとすると、以下のようなエラーが発生して変更できません。<br />
ただし root 権限のあるユーザで変更することは可能です。<br />
==原因==<br />
smbpasswd コマンドで Sambaのパスワードを変更する際、コマンドを呼び出したのが root かどうかで内部的な動作が異なります。root から呼び出した場合は直接 smbpasswd ファイルをアクセスしてパスワード(正確にはパスワードのハッシュ値)を書き換えます。<br />
<br />
一般ユーザで呼び出した場合は、127.0.0.1 で待受けている smbd とTCP/IPで通信を行なってパスワードを変更します。ただし、-r <ホスト名>オプションで指定したホスト上のパスワードを変更する場合は、root であっても smbd と通信を行なってパスワードの変更を行ないますので、これは、-r オプションで localhost を指定した場合でも同様です。<br />
<br />
以下、説明の便宜上前者を root 権限でのパスワード変更、後者を一般ユーザ権限でのパスワード変更と呼称します。<br />
<br />
問題の事象は、root 権限でのパスワード変更と一般ユーザ権限でのパスワード変更とで内部的なロジックが異なることが原因で発生します。<br />
<br />
最も多いのは一般ユーザ権限でのパスワード変更を行なおうとした際に、<br />
<br />
$ smbpasswd<br />
Old SMB password:<br />
New SMB password:<br />
Retype new SMB password:<br />
machine 127.0.0.1 rejected the session setup. Error was : Not listening for calling name.<br />
Failed to change password for smbuser<br />
<br />
のようなエラーが発生する場合です。このような出力が発生する場合は、hosts allowやhosts denyオプションの設定で、127.0.0.1 へのアクセスを拒否してしまった場合が考えられます。これらのオプションを設定する際は、必ず 127.0.0.1 からのアクセスを許可するように設定してください。<br />
<br />
root 権限で smbpasswd コマンドを利用する場合は、直接 smbpasswd ファイルを書き換えてしまうため、この問題は顕在化しません。<br />
<br />
なお、適切なパスワードを入力しても以下のように出力されてしまう場合については、J0400: [[unix password syncが機能しない]]を参照してください。<br />
<br />
$ smbpasswd<br />
Old SMB password:<br />
machine 127.0.0.1 rejected the password change: Error was : The specified password is invalid.<br />
Failed to change password for smbuser<br />
$ <br />
<br />
この技術情報は samba-jp:12565 からの一連のスレッドの議論などを元に作成されています。</div>
Ribbon