[PHP-users 8460] Re: web上からphpを使ったユーザー管理(useradd)
Moriyoshi Koizumi
php-users@php.gr.jp
Sat, 06 Jul 2002 04:04:09 +0900
小泉@町田です。
ちょっとPHPの範疇から外れますけど、
たぶん既出でないと思うので書いておきます。
間違ってるかもしれないのでどんどん指摘してください。
他の *nix ではどうか分かりませんが、Linux の場合なら、
pam-mysql 認証モジュール(http://sourceforge.net/projects/pam-mysql/) や
pam-pgsql 認証モジュール(http://sourceforge.net/projects/sysauth-pgsql/)
をインストールして、
/etc/pam.d/sshd
/etc/pam.d/systemauth
のようなファイル群を少し書き換えれば、
MySQL や PostgreSQL の DB上に記録されたユーザアカウントで
ログインできたりするようになります。
(書き換え方や設定の詳細は pam のマニュアルを参照してください。
必要条件だの十分条件だの結構複雑です。)
なお、RedHat を使う場合は、auth_config が
スタートアップ時 systemauth を書き換えてしまうので注意が必要です。
セキュリティ上 * 実に * 好ましくないやり方ですので、
あくまで参考程度に。
pam-pgsql で google するとトップに出てくるのが、 http://online.securityfocus.com/advisories/3950
(このバグは直っているはずですが)
pam-mysql も昔は深刻なバグが。
http://www.linuxsecurity.com/advisories/other_advisory-833.html
それでもDBでユーザ管理をやってみたい場合、
パスワードを生で格納しないでMD5ダイジェストにしておくなど、
基本的な注意事項をお忘れなく。
titi@beefarm.jp <titi@beefarm.jp> wrote:
> キスミです。
>
> ありがとうございました。上手くいきました!
>
> ところで好奇心から質問させて頂きますが、sudoを使わずにやることはやはり
> 無理なのですか?
>
> >はじめまして。
> >
> >やりかたはいろいろあると思いますが、apacheの起動ユーザー
> >(たいていはnobodyまたはapache)にsudoでuseraddコマンドを追加
> >します。sudoの使い方はマニュアルで調べてください。visudoでコマンドを
> >登録します。これでPHPからユーザー登録できます。
> >
> >サンプルコード
> ><?php
> > $login = "test";
> > $passwd = crypt("hogehoge", "AB");
> > system("/usr/local/bin/sudo /usr/sbin/useradd -p $passwd $login");
> >?>
> >
> >
> >_______________________________________________
> >PHP-users mailing list
> >PHP-users@php.gr.jp
> >http://ns1.php.gr.jp/mailman/listinfo/php-users
> _______________________________________________
> PHP-users mailing list
> PHP-users@php.gr.jp
> http://ns1.php.gr.jp/mailman/listinfo/php-users