Index: [Article Count Order] [Thread]

Date:  Thu, 08 Sep 2005 15:56:37 +0900
From:  Hisao SHIBUYA <shibuya (at mark) alpha.or.jp>
Subject:  [coba-o:01349] Re: パスワードの変更方法
To:  coba-o (at mark) bluequartz.org
Message-Id:  <431FE0A5.2010602 (at mark) alpha.or.jp>
In-Reply-To:  <20050908150335.D8AA.MOCHI (at mark) gaoka.com>
References:  <20050908150335.D8AA.MOCHI (at mark) gaoka.com>
X-Mail-Count: 01349

渋谷です。

> 今、家では非BQ環境で細々とホスティングぽい物をやっていますが、
> これを新規に立てたBQサーバに移行したいと試行錯誤しているのですが、
> クライアントが各自設定したパスワードを聞かずして移行する方法は
> ないのでしょうか?
> 
> 移行前のshadowファイルのパスワード部分をコピペしましたが、
> /var/db/shadow.dbで管理されているのでもちろん無理で、
> そのshadow.dbファイルをいじるべくPHPで一本書いたのですが
> ダメでした。
> 
> その他どこかにデータが格納されているのでしょうか?

パスワードは shadow.db に入っています。


> <移行後>
> CentOS4 + BQ + Webmin

BlueQuartz と Webmin の共存はコンフリクトするので問題が発生することがあると
思います。

pwdb 経由でパスワードを変更するスクリプトを以前書いてあったので付けておきます。
1 ユーザ用なので、GetOpt などを使うようにするか適宜変更してください。
$user と $passwd を適当に変更すれば、パスワードを変更します。パスワードは
/etc/shadow に書かれている 32 文字程度のものを書いてください。
(平文ではありませんので注意してください。)

shibuya (at mark) alpha.or.jp


-----
#!/usr/bin/perl

use PWDB;

$user = 'username';
$passwd = 'cripted_password';
PWDB::pwdb_start();
$pwdb = PWDB::pwdb_locate('user', [], $user, PWDB_ID_UNKNOWN);

if (!$pwdb) {
    print "Error\n";
    exit;
}

$uid = $pwdb->get_entry('uid');

$pwdb->set_entry('passwd', $passwd);
PWDB::pwdb_replace($pwdb, $user, $uid);
PWDB::pwdb_end();