[perl] useradd script probleem

Pagina: 1
Acties:

  • DaFearLess
  • Registratie: Juni 2001
  • Niet online
als ik een user probeer toe te voegen met useradd scriptje Hier onder het stukje wat fout gaat.
Perl:
1
2
3
4
5
6
        # Creating user and set te password
        print "creating user<br>";
        $cryptedpw = Crypt::PasswdMD5::unix_md5_crypt ( $pass1 , substr ( time () , -8 ) ) ;
        print "crypt passwd : $cryptedpw<br>";
        system("useradd -m -s /bin/false -p '$cryptedpw' '$uname'");
        print "done<br>";


krijg ik de volgende melding in mijn error_log, en de user is niet toegevoegd.

code:
1
useradd: PAM authentication failed


kan iemand mij vertelle wat ik hier aan kan doen

specs : http://specs.tweak.to/7435


  • Osiris
  • Registratie: Januari 2000
  • Niet online
Ik kan je wel aanraden om in 't vervolg [Perl] voor je topic-title te zetten :)

  • tomato
  • Registratie: November 1999
  • Niet online
Onder welke user run je het script? Wat gebeurt er wanneer je gewoon een useradd op de command line uitvoert?

  • DaFearLess
  • Registratie: Juni 2001
  • Niet online
sorry :) het is al aangevraagt om veranderen

specs : http://specs.tweak.to/7435


  • DaFearLess
  • Registratie: Juni 2001
  • Niet online
tomato schreef op 24 augustus 2002 @ 01:21:
Onder welke user run je het script? Wat gebeurt er wanneer je gewoon een useradd op de command line uitvoert?
als ik het om de command line uitvoerd is er niks aan de hand.

en ik voerde hem dus onder de user apache uit das niet goed :)

dus ik heb de code iets veranderd

Perl:
1
2
3
4
5
6
        # Creating user and set te password
        print "creating user<br>";
        $cryptedpw = Crypt::PasswdMD5::unix_md5_crypt ( $pass1 , substr ( time () , -8 ) ) ;
        print "crypt passwd : $cryptedpw<br>";
        system("sudo -u root useradd -m -s /bin/false '$uname'");
        print "done<br>";


mar nu krijg ik in mijn error_log de melding

code:
1
2
3
4
5
6
7
8
We trust you have received the usual lecture from the local System
Administrator. It usually boils down to these two things:

        #1) Respect the privacy of others.
        #2) Think before you type.

Password:
sudo: pam_authenticate: Authentication service cannot retrieve authentication info.


ben wel iets verder maar tis nog niet werkend.

specs : http://specs.tweak.to/7435


  • Denhomer
  • Registratie: Augustus 2000
  • Laatst online: 12-10-2025

Denhomer

Doh !

Die extra melding is heeft wellicht te maken met het gerbuiken van "root". Dat andere zit je waarschijnlijk ergens fout met je md5 encryption. Maar ik zie niet direct waar.

Even uit de PAM readme :

Login Restrictions
------------------
Most of the current configurations of the 'login' service include a
module 'pam_securetty' or 'pam_access' which restrict the login of
some users (especially root) depending on the tty or the host name
they are logging from. The configuration files of these two modules
are /etc/securetty and /etc/security/access.conf respectively.

  • DaFearLess
  • Registratie: Juni 2001
  • Niet online
nou het gekke is als ik heb als perl script uitvoer(onder root) en dus niet als een cgi script werkt hij perfect. dus moet met rechten zitten denk ik.

is er nog een andere manier om het uit te laten voeren door een user die wel rechten heeft?

specs : http://specs.tweak.to/7435


  • Denhomer
  • Registratie: Augustus 2000
  • Laatst online: 12-10-2025

Denhomer

Doh !

Zie mijn edit iets hoger, misschien kan je er wat mee doen

[ Voor 0% gewijzigd door Denhomer op 24-08-2002 01:41 . Reden: typo ]


  • ACM
  • Registratie: Januari 2000
  • Niet online

ACM

Software Architect

Werkt hier

dafearless schreef op 24 augustus 2002 @ 01:39:
nou het gekke is als ik heb als perl script uitvoer(onder root) en dus niet als een cgi script werkt hij perfect. dus moet met rechten zitten denk ik.
Uiteraard ligt het daar aan, PAM is een veel gebruikte manier om te controleren of je de rechten wel hebt voor wat je wilt gaan doen...
Je zult dus in je PAM-settings voor sudo moeten uitzoeken waarom ie om een password vraagt.
is er nog een andere manier om het uit te laten voeren door een user die wel rechten heeft?

"Een user die wel rechten heeft"?

Leer jij eerst es je linux/unix systeem kennen!
Die rechten zijn van en alleen van root, dat root ze via sudo etc kan meegeven aan iemand anders is leuk, maar ze blijven primair alleen voor root.

  • DaFearLess
  • Registratie: Juni 2001
  • Niet online
Denhomer schreef op 24 augustus 2002 @ 01:41:
Zie mijn edit iets hoger, misschien kan je er wat mee doen
daar heb ik het in kenne finden

tnx

specs : http://specs.tweak.to/7435

Pagina: 1