[PHP] passwd aanpassen met PHP

Pagina: 1
Acties:

  • zeroxcool
  • Registratie: Januari 2001
  • Laatst online: 04-09 13:39
Hallo, ben al een tijd bezig en ik kom er niet uit...

Heb tot nu toe dit:
code:
1
2
3
4
5
6
7
8
9
10
11
12
13
        $sql = mysql_query("select name,cs,ftp,www,telnet,permission from users where id='$HTTP_POST_VARS[id]'");
        list($n,$c,$f,$w,$t,$p) = mysql_fetch_array($sql);
        if ($n != $HTTP_POST_VARS[name]) {
            $passwd = fopen("passwd","r+");
            while(!feof($passwd)) {
                $users = fgets($passwd, 4096);
                $split = explode(":",$users);
                if (($split[3] == "$groupid") and ($split[0] == "$n")) {
                    fwrite($passwd,"$HTTP_POST_VARS[name]:$split[2]:$split[3]:$split[4]:/home/$HTTP_POST_VARS[name]:$split[6]");
                }
            }
            fclose($passwd);
        }

Stel dat dit passwd is:
code:
1
2
3
4
5
6
7
8
9
apache:x:48:48:Apache:/var/www:/bin/false
mysql:x:27:27:MySQL Server:/var/lib/mysql:/bin/bash
squid:x:23:23::/var/spool/squid:/dev/null
gameone:x:500:500::/www:/bin/bash
home:x:501:502::/:/bin/bash
counterstrike:x:502:503::/home/counterstrike:/bin/bash
manage:x:503:505::/home/manage:/bin/bash
micrux:x:504:505::/home/micrux:/bin/bash
admin:x:505:505::/home/admin:/bin/bash

Nu wil ik dus, stel dat ik als $HTTP_POST_VARS[name], administrator heb ingevuld, dat automatisch micrux wordt vervangen door administrator en dat /home/micrux /home/administrator wordt, maar hoe doe ik dit?

Als ik het zo doe, dan wordt er alleen op de laatste lijn een nieuwe aangemaakt zoals het hoort, alleen de 'oude' blijft staan...

[edit]typo's

zeroxcool.net - curity.eu


  • HGM
  • Registratie: April 2000
  • Niet online

HGM

afgezien van waarom je dit wilt gaan doen??

Dit is gewoon zwaar onveilig!

Je moet de file doorlopen en waar je de variabele tegenkomt die je wilt vervangen, vervang je deze en zo schrijf je de hele file opnieuw weg.

Maar nogmaals ik zou dit absoluut niet zo oplossen. Het rechtstreeks editen van de passwd file is absoluut niet slim zeker niet wanneer je dit webbased gaat doen...

Verwijderd

Jip dit is dom van je..

  • zeroxcool
  • Registratie: Januari 2001
  • Laatst online: 04-09 13:39
Nou, ik zal het maar even uitleggen, ben een Counter-Strike Manager aan het bouwen, customers, server watchers en admins. Het is dus gewoon een soort online server start/manage programma.

Maar gewoon ereg'en had ik niet aan gedacht, thx!

zeroxcool.net - curity.eu