|
Serwer PureTFP i użytkownicy wirtualni w MySQL
joker - 16-08-2008 09:54
Witam. Szukam rozwiązania następującego problemu. Serwer PureTFP + MySQL czyli użytkownicy wirtualni przechowywani w bazie danych MySQL. Chciałbym żeby każdy użytkownik, który utworzy sobie konto FTP miał automatycznie dodanego Vhosta z Apache'a. Do zarządzania całością buduję interfejs www w php dlatego wybrałem konfigurację ftp+mysql. Nie wiem tylko jak rozwiązać problem automatycznego dodawania vHosta kiedy pojawi się kolejny user w bazie FTP. Będę wdzięczny za każdą sugestię.
[Dodano: 2008-08-16, 10:18] Mam pewien pomysł. Mianowicie Po utworzeniu użytkownika FTP tworzy się dla niego katalog w lokalizacji /home/ftp/(nazwa_usera), następnie skrypt wywoływany przez crona sprawdzałby czy dla tego katalogu istnieje vhost przez porównanie nazwy katalogu z nazwą vhosta (nazwa katalogu = nazwa usera FTP = nazwa vhosta = wyrażenia unikalne). Jeśli istnieje nie robi nic, jeśli nie tworzy vhosta, ale jak za pomocą skryptu utworzyć plik konfiguracyjny vhosta? Czy jest to możliwe?
tomii - 16-08-2008 11:05
A nie lepiej wyedytować to co tworzy ci katalog aby przy okazji stworzyło vhost (w końcu nie ma 2 użytkowników o tej samej nazwie i nie będziesz musiał drugi raz sprawdzać tego samego).
joker - 16-08-2008 13:33
Pomysł jest bardzo dobry, ale obawiam się że będę musiał w tym przypadku dobrać się do źródełek Pure FTP i odnaleźć część odpowiedzialną za tworzenie katalogu, ściągam źródła i szukam.
[Dodano: 2008-08-16, 15:42] Niestety to przerasta moje możliwości, nie mogę połapać się w źródłach, nie programowałem nigdy wcześniej, może jakieś inne pomysły?
tomii - 17-08-2008 08:50
to może skrypt w shellu, którego parametrem będzie nazwa użytkownika i on wywołuje tworzenie użytkownika a następnie dodaje vhosta. wersja bardziej zaawansowana (nie jestem pewien czy wykonalna ) jak polecenie dodawania usera zwróci błąd, że taki user już istnieje to skrypt się przerywa.
joker - 17-08-2008 10:11
dzięki za pomysł ale ta wersja odpada, użytkownik musi być tworzony przy pomocy kodu PHP dodając odpowiednie wpisy do bazy danych, powód - zarządzanie ma się odbywać przez przeglądarkę WWW
[Dodano: 2008-08-17, 10:55] Czy możliwe jest przepisanie adresu URL przy pomocy modułu rewrite z
http://domena.pl/user/link
na
http://user.domna.pl/link
tomii - 17-08-2008 12:19
a przypadkiem php nie możę wywoływać poleceń systemowych?
giaur - 17-08-2008 13:18
Owszem. Problem bedzie inny - uprawnienia. Domyślnie skrypty będą wywoływane z prawami zwykłego uzytkownika, wiec osagniecie celu bedzie niemozliwe. Jezeli sie uprzec, to mozna oczywiscie zezwolic na wykonanie zamierzonych operacji np. przez sudo ale to nie jest najszczesliwszym pomyslem.
tomii - 17-08-2008 13:47
No to php może dodawać nazwy użytkowników dodanych do jakiegoś pliku, a skrypt w shellu pod cronem tworzy vhost i suwa nazwy userów, którzy otrzymali vhost z pliku.
joker - 17-08-2008 14:30
Czy ktoś mógłby podać treść takiego skryptu, który utworzyłby vhosta?
zanotowane.pldoc.pisz.plpdf.pisz.plminister.pev.pl
|