The UNIX and Linux Forums  
Hej og Velkommen fra USA til UNIX og Linux Forums! Tak for dit besøg og deltager i vores globale samfund.

Go Back   UNIX og Linux Forums > Top Forums > Shell Programmering og Scripting
.
google unix.com



Shell Programmering og Scripting Post spørgsmål om ksh, CSH, SH, Bash, Perl, PHP, SED, AWK og ANDRE shell scripts og Shell scriptsprog her.

Mere UNIX og Linux Forum Emner du måske kan finde Helpful
Tråd Thread Starter Forum Svar Last Post
SSH bedt om adgangskode til ikke identiske brugere vjkatsun UNIX for Advanced & Ekspertsøgning Brugere 5 06-02-2008 02:18 AM
Modify Perl-script til at arbejde med txt - Tilladelser script joangopan Shell Programmering og Scripting 1 09-13-2007 12:38 AM
Har brugerne ændret deres adgangskode annemar UNIX for dummyer Spørgsmål & svar 6 09-20-2006 05:18 AM
Listen adgangskoden indstillinger for alle brugere irasela UNIX Desktop til dukkerne Spørgsmål & svar 3 08-17-2006 03:40 PM
Indstilling af adgangskode restriktioner for alle brugere drathbone UNIX for dummyer Spørgsmål & svar 2 03-03-2006 08:02 PM

Closed Thread
English Japanese Spanish French German Portuguese Italian Dutch Swedish Russian Norwegian Hungarian Hebrew Danish Bulgarian Greek Powered by Powered by Google
 
LinkBack Thread Tools Søg denne tråd Rate Thread Display Modes
  #1 (permalink)  
Old 08-15-2007
paqman paqman is offline
Registreret Bruger
  
 

Join Date: Jul 2007
Stillinger: 21
Modify brugere password via scriptet?

Ok, først ud, jeg arbejder på en VMware ESX Server, som jeg tror er løseligt baseret ud af Red Hat 9. Men jeg er helt ny til den (i dag), så være rart.

Jeg forsøger at skrive en useradd script, der vil skabe nogle brugere, generere en adgangskode og angive deres adgangskode til denne nye genereret adgangskode.

Nu ved hånden, kan jeg bruge useradd kommando, og derefter bruge passwd til at ændre deres password. Men hvis jeg har fået at oprette et par hundrede brugere, dette er ikke sjovt.

Så hvis jeg ikke kan bruge passwd i et script (fordi det kræver brugerinteraktion), hvordan kan jeg oprette disse brugere med en vis standard password?
  #2 (permalink)  
Old 08-15-2007
zazzybob's Avatar
zazzybob zazzybob is offline Forum Advisor  
Registreret Geek
  
 

Join Date: Dec 2003
Location: Melbourne, Australien
Stillinger: 2100
Dette er på en ESX 3.xx boks, men har du et par muligheder.

Den første er at bruge - stdin mulighed for at passwd, fx
Code:
# useradd -m -d /home/foo foo
# echo "foo" | passwd --stdin foo
Changing password for user foo.
passwd: all authentication tokens updated successfully.
Dette vil kræve, at du opbevare almindelig tekst password i dit script. A * meget * mere sikker løsning er at tilføje en bruger og angive en adgangskode, som du normalt ville gøre til en standard værdi, fx
Code:
# useradd -m -d /home/tmpuser tmpuser
# passwd tmpuser
...
Nu kan du bruge krypteret adgangskode for denne bruger, når du opretter andre konti, således at alle nyoprettede konti har den samme adgangskode som "tmpuser", fx
Code:
# useradd -m -d /home/newuser -p `awk -vFS=':' '$1 ~ /^tmpuser/ {print $2}' /etc/shadow` newuser
Skål,
ZB
  #3 (permalink)  
Old 08-21-2007
paqman paqman is offline
Registreret Bruger
  
 

Join Date: Jul 2007
Stillinger: 21
Citat:
Oprindeligt Indsendt af zazzybob View Post
Dette er på en ESX 3.xx boks, men har du et par muligheder.

Den første er at bruge - stdin mulighed for at passwd, fx
Code:
# useradd -m -d /home/foo foo
# echo "foo" | passwd --stdin foo
Changing password for user foo.
passwd: all authentication tokens updated successfully.
Dette vil kræve, at du opbevare almindelig tekst password i dit script. A * meget * mere sikker løsning er at tilføje en bruger og angive en adgangskode, som du normalt ville gøre til en standard værdi, fx
Code:
# useradd -m -d /home/tmpuser tmpuser
# passwd tmpuser
...
Nu kan du bruge krypteret adgangskode for denne bruger, når du opretter andre konti, således at alle nyoprettede konti har den samme adgangskode som "tmpuser", fx
Code:
# useradd -m -d /home/newuser -p `awk -vFS=':' '$1 ~ /^tmpuser/ {print $2}' /etc/shadow` newuser
Skål,
ZB
Tak for svaret. Jeg ville have svaret tilbage før, men har ikke fået en chance for at prøve det ud indtil nu. Jeg faktisk gerne det - stdin mulighed. Scriptet faktisk vil ikke være i besiddelse af en almindelig tekst adgangskode. Hvad jeg gerne vil gøre, er at generere en tilfældig password i mit manuskript, og videregive det til - stdin.

Jeg har kun ét problem. Jeg er virkelig nyt til VMware ESX, men jeg var i stand til at finde et lille script, der genererer en adgangskode. Her er det:

Code:
MAXSIZE=8
array1=(
q w e r t y u i o p a s d f g h j k l z x c v b n m
)
MODNUM=${#array1[*]}
pwd_len=0
while [ $pwd_len -lt $MAXSIZE ]
do
    index=$(($RANDOM%$MODNUM))
    echo -n "${array1[$index]}"
    ((pwd_len++))

echo
done
Som du kan se, at scriptet gør, er alle generere adgangskode, og derefter gentage det ud. Men jeg har aldrig set, hvor du kan bare bruge "echo", og ikke fortælle, hvad der skal ekko. Så hvad variabel er min adgangskode blive gemt i? Hvis det er $ index, så hvordan kan jeg bruge det med - stdin?

Problemet kommer, når jeg forsøger at bruge det, at sætte dette i min kode:
Code:
# echo "$index" | passwd --stdin foo
fordi den "echo" er også udskrive din adgangskode, så ved du, hvordan jeg kan bruge dette til min fordel?

Tak igen for din hjælp.
Closed Thread

Bogmærker

Thread Tools Søg denne tråd
Søg denne tråd:

Avanceret søgning
Display Modes Bedøm denne tråd
Bedøm denne tråd:

Udstationering Regler
Du kan ikke post nye tråde
Du kan ikke post svar
Du kan ikke post vedhæftede filer
Du kan ikke redigere dine indlæg

BB-kode er
Smilies er
[IMG] koden er
HTML-koden er Slukket
Trackbacks er
Pingbacks er
Refbacks er




Alle tidspunkter er GMT -4. Den tid er nu 11:23 PM.


Powered by: vBulletin, Copyright © 2000 - 2006, Jelsoft Enterprises Limited. Oversættelser Powered by .
vBCredits v1.4 Copyright © 2007 - 2008, PixelFX Studios
UNIX og Linux Forums Content Copyright © 1993-2009. Alle rettigheder Reserved.Ad Management ved RedTyger

Content Relevant webadresser ved vBSEO 3.2.0