koslibpro Δημοσ. 12 Μαρτίου 2012 Share Δημοσ. 12 Μαρτίου 2012 (επεξεργασμένο) Καλησπερα, εν συνεχεια ενος προηγουμενου thread,θα ηθελα να προσθεσω τον www-data στο sudoers. γενικα,εχω μια φορμα php σε localhost που ενας χρηστης πληκτρολογει το επιθυμητο username & password και παταει submit.οποτε και θελω να δημιουργειται ενας χρηστης.. οι φορμες που εχω ειναι στο spoiler: index.htm > <form method="GET" action="sub.php"> <p>Username: <input type="text" name="user" size="20"></p> <p>Password: <input type="text" name="pass" size="20"></p> <p><input type="submit" value="Submit" name="Submit"></p> </form> και το sub.php > <?php $user = $_GET['user']; $pass = $_GET['pass']; system("sudo useradd -m -p ".$pass." -u ".$user."); ?> μεχρι ωρας με αυτα που εχω κανει δεν γινεται τιποτα γιατι οταν τρεχει το scriptακι,περιμενει επειτα και κωδικο,αφου η εντολη μου αρχιζει με sudo..πως μπορω να προσθεσω λοιπον τον www-data στο sudoers με NOPASSWD για να λειτουργει σωστα αυτο που θελω..? υγ:η σχετικη γραμμη το /etc/sudoers file μου ειναι αυτη >www-data ALL=(root) NOPASSWD: /usr/sbin/useradd ,αν χρησιμευει πουθενα.. ευχαριστω! Επεξ/σία 12 Μαρτίου 2012 από koslibpro Συνδέστε για να σχολιάσετε Κοινοποίηση σε άλλες σελίδες άλλες επιλογές
mphxths Δημοσ. 12 Μαρτίου 2012 Share Δημοσ. 12 Μαρτίου 2012 Για δοκιμασε με %www-data .... Συνδέστε για να σχολιάσετε Κοινοποίηση σε άλλες σελίδες άλλες επιλογές
koslibpro Δημοσ. 12 Μαρτίου 2012 Μέλος Share Δημοσ. 12 Μαρτίου 2012 Για δοκιμασε με %www-data .... στο /etc/sudoers αρχειο δεν λες? το εκανα.και αλλαξα και το sub.php file ωστε να μην εχει sudo πριν το useradd,για να μην περιμενει κωδικο,μιας και δεν χρειαζεται. και παλι ομως δεν εγινε τιποτα.. Συνδέστε για να σχολιάσετε Κοινοποίηση σε άλλες σελίδες άλλες επιλογές
corrupted Δημοσ. 12 Μαρτίου 2012 Share Δημοσ. 12 Μαρτίου 2012 Λοιπον, εκανα μερικες διορθωσεις και σε μενα τουλαχιστον παιζει. Δοκιμασε το και πες μας... index.html ><form method="POST" action="sub.php"> <p>Username: <input type="text" name="user" size="20"></p> <p>Password: <input type="text" name="pass" size="20"></p> <p><input type="submit" value="Submit" name="Submit"></p> </form> sub.php ><?php $user = $_GET['user']; $pass = $_GET['pass']; system ("/usr/bin/sudo /usr/sbin/useradd -m -p ".$_POST['pass']." ".$_POST['user'].""); ?> Και στο /etc/sudoers, προσθεσε μια γραμμη: >www-data ALL=(ALL) NOPASSWD: /usr/sbin/useradd Το προβλημα ομως ξερεις πιο ειναι? Οτι τα passwords δεν ειναι κρυπτογραφημενα και δεν αναγνωριζονται απο το /etc/shadow ωστε να γινει login του χρηστη με το password που εχει διαλεξει. Θα πρεπει να τρεχεις την εντολη "passwd <user>" σαν root, για να θετεις εσυ το password του χρηστη (βλεπεις τι εχει διαλεξει σαν password απο το /etc/shadow). Ριξε μια ματια στα /etc/passwd και /etc/shadow... Συνδέστε για να σχολιάσετε Κοινοποίηση σε άλλες σελίδες άλλες επιλογές
corrupted Δημοσ. 12 Μαρτίου 2012 Share Δημοσ. 12 Μαρτίου 2012 (επεξεργασμένο) Update: sub.php ><?php $user = $_GET['user']; $pass = $_GET['pass']; system ("/usr/bin/sudo /usr/sbin/useradd -m -p ".crypt($_POST['pass'])." ".$_POST['user'].""); ?> Τωρα το password ειναι encrypted, αλλα παλι δεν γινεται σωστα το authentication. Δεν ξερω τι γινεται, σηκωνω τα χερια ψηλα... Μαλλον το encryption της php δεν ειναι το ιδιο με το encryption του συστηματος... Βλεπε http://php.net/manual/en/function.crypt.php Επεξ/σία 13 Μαρτίου 2012 από corrupted Συνδέστε για να σχολιάσετε Κοινοποίηση σε άλλες σελίδες άλλες επιλογές
koslibpro Δημοσ. 12 Μαρτίου 2012 Μέλος Share Δημοσ. 12 Μαρτίου 2012 φιλε corrupted πραγματικα σε ευχαριστω πολυ! Για την ακριβεια,με βολευει νομιζω το να κανω εγω χειροκινιτη εισαγωγη του pass του καθε χρηστη,αφου αυτος εχει επιλεξει ποιο θελει να ειναι! Το δοκιμασα και δουλευει και σε εμενα μια χαρα! Τον κωδικα που μου εδωσες βεβαια στο update σου,θα τον κρατησω καθως μπορει μελλοντικα να χρειαστει,ειναι πιθανο Συνδέστε για να σχολιάσετε Κοινοποίηση σε άλλες σελίδες άλλες επιλογές
corrupted Δημοσ. 12 Μαρτίου 2012 Share Δημοσ. 12 Μαρτίου 2012 Μην με ευχαριστεις, αυτα τα θεματα ειναι ωραια να τα ψαχνει κανεις. Να σου πω επισης οτι μετα την system γραμμη μπορεις να βαλεις αλλες δυο... >header("Location: thankyou.html"); exit; Αυτο θα κανει το sub.php να σε πηγαινει στο thankyou.html, οπου θα γραφεις "Σας ευχαριστω για την εγγραφη σας, ο λογαριασμος σας θα ενεργοποιηθει συντομα". Ειναι καλυτερα ετσι, παρα να φαινεται μια κενη σελιδα και να μην ξερει ο χρηστης τι εγινε, και να παταει back για να ξανακανει εγγραφη... Συνδέστε για να σχολιάσετε Κοινοποίηση σε άλλες σελίδες άλλες επιλογές
koslibpro Δημοσ. 13 Μαρτίου 2012 Μέλος Share Δημοσ. 13 Μαρτίου 2012 Μην με ευχαριστεις, αυτα τα θεματα ειναι ωραια να τα ψαχνει κανεις. Να σου πω επισης οτι μετα την system γραμμη μπορεις να βαλεις αλλες δυο... >header("Location: thankyou.html"); exit; Αυτο θα κανει το sub.php να σε πηγαινει στο thankyou.html, οπου θα γραφεις "Σας ευχαριστω για την εγγραφη σας, ο λογαριασμος σας θα ενεργοποιηθει συντομα". Ειναι καλυτερα ετσι, παρα να φαινεται μια κενη σελιδα και να μην ξερει ο χρηστης τι εγινε, και να παταει back για να ξανακανει εγγραφη... εχεις pm επι του θεματος Συνδέστε για να σχολιάσετε Κοινοποίηση σε άλλες σελίδες άλλες επιλογές
Προτεινόμενες αναρτήσεις
Δημιουργήστε ένα λογαριασμό ή συνδεθείτε για να σχολιάσετε
Πρέπει να είστε μέλος για να αφήσετε σχόλιο
Δημιουργία λογαριασμού
Εγγραφείτε με νέο λογαριασμό στην κοινότητα μας. Είναι πανεύκολο!
Δημιουργία νέου λογαριασμούΣύνδεση
Έχετε ήδη λογαριασμό; Συνδεθείτε εδώ.
Συνδεθείτε τώρα