![]() |
![]() ![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 2 Pomógł: 0 Dołączył: 23.01.2005 Ostrzeżenie: (0%) ![]() ![]() |
Mam takie pytanko. Muszę stworzyć skrypt php, który będzie zmieniał hasło usera na serwerze linuksowym. Proszę o pomoc. Czy to można zrobić przez odczyt pliku /etc/shadow a następnie wyszukanie konkretnego usera w tym pliku, dalej odkodowanie hasła i zapis w tym miejscu nowego hasła? W jaki sposób to zrobić? A może jakoś za pomocą funkcji system()? Z góry dzięki. Pozdrawiam.
|
|
|
![]()
Post
#2
|
|
![]() Grupa: Przyjaciele php.pl Postów: 5 724 Pomógł: 259 Dołączył: 13.04.2004 Skąd: N/A Ostrzeżenie: (0%) ![]() ![]() |
poczytaj
man passwd -------------------- Nie lubię jednorożców.
|
|
|
![]()
Post
#3
|
|
![]() Grupa: Zarejestrowani Postów: 34 Pomógł: 2 Dołączył: 21.11.2003 Skąd: Kraków Ostrzeżenie: (0%) ![]() ![]() |
hmm jesli mowa o zmianie hasla tylko do poczty to proponuje postfixa + sql - problem z glowy
jesli jednak nie to coz - dodac najlepiej nowego uzytkownka, jemu dac sudo na passwd [uzytkownik] i tyle. inaczej tego sobie nie wyobrazam jakos ![]() ![]() ![]() -------------------- "Programming today is a race between software engineers striving to build bigger and better idiot-proof programs, and the Universe trying to produce bigger and better idiots. So far, the Universe is winning."
(Przydatne zapytania MySQL) |
|
|
![]()
Post
#4
|
|
Grupa: Zarejestrowani Postów: 2 Pomógł: 0 Dołączył: 23.01.2005 Ostrzeżenie: (0%) ![]() ![]() |
Dokładnie chodzi o pocztę. Tylko że to jest sendmail. Użytkownicy muszą mieć możliwość zmiany hasła do poczty z poziomu strony www.
|
|
|
![]()
Post
#5
|
|
![]() Grupa: Zarejestrowani Postów: 34 Pomógł: 2 Dołączył: 21.11.2003 Skąd: Kraków Ostrzeżenie: (0%) ![]() ![]() |
sendmail nie ma tutaj nic do gadania. zainstaluj sobie jakiegos MTA (postfix, exim). sendmail jak sama nazwa wskazuje sluzy do wysylania poczty.
http://linux.zsp2.edu.pl/ - tutaj znajduje sie doskonaly tutorial na temat jak postawic postfixa wraz z takimi dodatkami jak skaner antywirusowy, filtr antyspamowy itd ![]() a jesli istotnie nie chcesz tego czynic to jedyna logiczna metoda to tak jak pisalem: 1. zakladasz sobie uzytkownika, np: www (jakos shell /bin/false - uzytkownik bez hasla, katalogu domowego itd). jako jego grupe mozesz dac whell czy co tam masz u siebie ![]() 2. instalujesz sobie sudo 3. apache'a odpalasz kazdorazowo z tego wlasnie uzytkownika. aby to zrobic musisz przeczytac manuala do sudoers (man sudoers). dzieki temu dajesz uzytkownikowi prawa do wykonania komend: apachectl startssl (albo star jesli nie uzywasz ssla) oraz apachectl stop. 4. piszesz skrypt (w bashu lub perlu lub c - co ci pasuje), ktory jest wywolywany z poziomu php z trzema parametrami: stare haslo, nowe haslo, login uzyszkodnika. 5. znow sudoers i dajesz uzytkownikowi prawa do wykonania tego skryptu i czytania /etc/shadow (za pomoca jakiejs grupy oczywiscie) 6. skrypt teraz niech ci zwraca np. 1 w przypadku zmiany hasla, 0 w przypadku bledu (np. zly login) - choc to moze byc bez sensu - generalnie mozesz zrobic w php panel kont i juz w trakcie logowania sie do panelu uzytkownicy musieliby wpisac logpasa uzywanego na serwerze. wtedy nie ma problemu - trzymasz logpasy w bazie danych i w chwili gdy uzytkownik sie zaloguje to skryptowi do zmiany hasla automatycznie przekazujesz stare haslo (siedzi w bazie SQL) a nowe haslo podaje juz uzyszkodnik zmieniajaca to haslo. bol taki, iz musisz sobie napisac oddzielny skrypt (na zazasadach jak wyzej) sprawdzajacy poprawnosc logowania sie do panelu. albo tez napisac sobie panel dodawania nowych kont na serwerze, ktory poza wykonywaniem adduser z parametrami dodawalby podane dane do bazy danych. wiem - to wszystko brzmi troszke jakby bylo zakrecone - ale prawda jest taka, iz caly system do zarzadzania kontami na serwerze to dobra rzecz. roboty jest troszke - ale to wystarczy sie zadeklarowac na jakas dystrybucje i z glowy - piszesz raz i masz na wieki wiekow. czyli reasumujac: 1. mozesz napisac sam panel do zmiany hasel. 1 skrypt shellowy itd. 2. mozesz napisaac caly panel zarzadznaia kontami i cala strefe klienta 3. alternatywnie mozesz uzyc jakiegos gotowca (np. C-Panel X bodajze obsluguje troszke dystrybucji a mozna w nim rozne cuda - wianki robic. niewiele o nim powiem, gdyz pod slackiem nie chodzi - ja pod slacka mam swoje autorskie, ktore rozwijam ![]() powodzenia ![]() -------------------- "Programming today is a race between software engineers striving to build bigger and better idiot-proof programs, and the Universe trying to produce bigger and better idiots. So far, the Universe is winning."
(Przydatne zapytania MySQL) |
|
|
![]() ![]() |
![]() |
Wersja Lo-Fi | Aktualny czas: 13.06.2025 - 09:07 |