Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: mysql nie tylko po localhost
Forum PHP.pl > Forum > Bazy danych > MySQL
Jarod
Mam na linuxie postawionego mysql. Ale nie mogę się z nim połączyć z innego komputera niż localhost. Natomiast przez skrypty php bez problemu.

Gdzie i co skonfigurować aby łączyć się z innego kompa?
bendi
Cytat(J4r0d @ 8.06.2006, 11:20 ) *
Gdzie i co skonfigurować aby łączyć się z innego kompa?

Musisz dodać sobie użytkownika, który będzie mógł się łączyć z innego hosta niż localhost - http://dev.mysql.com/doc/refman/5.0/en/adding-users.html
Jarod
Cytat(bendi @ 8.06.2006, 11:52 ) *
Musisz dodać sobie użytkownika, który będzie mógł się łączyć z innego hosta niż localhost - http://dev.mysql.com/doc/refman/5.0/en/adding-users.html


Dzięki - sprawdze.

Do tej pory korzystam z konta dla roota, tzn w config.inc.php mam login i hasło roota. Wiem, trzeba by to zmienić. Ale zresztą i tak użytkownik musi mieć prawie te sama prawa co root.


Pytanie z innej beczki. Plik config.inc.php (na czas testó) trzymam w katalogu ze stroną. Wypadałoby go gdzieś przerzucić wyżej niż katalog strony. I teraz jakie dać prawa do tego pliku, tak aby nikt go nie mógł podpatrzeć, skasować, i tylko skrypty php miały do niego dostęp?
em1X
Uzywanie konta root jest niewskazane.

Gdy tworzysz jakas aplikacje najlepiej utworzyc dla niej oddzielnego uzytkownika z jak najmniejsza mozliwoa iloscia uprawnien (np. tylko select, update, delete)
FiDO
Cytat(J4r0d @ 8.06.2006, 22:45 ) *
Pytanie z innej beczki. Plik config.inc.php (na czas testó) trzymam w katalogu ze stroną. Wypadałoby go gdzieś przerzucić wyżej niż katalog strony. I teraz jakie dać prawa do tego pliku, tak aby nikt go nie mógł podpatrzeć, skasować, i tylko skrypty php miały do niego dostęp?

Zalezy od tego jak masz zainstalowane php na serwerze. Jesli jako CGI to skrytpy odpalane sa z prawami Twojego usera, wiec wtedy starcza bardzo restrykcyjne prawa 600 (tylko odczyt i zapis dla Ciebie).
W przypadku, gdy php jest zainstalowane jako modul to skrypty odpalane sa z konta apacha (www, apache, nobody.. roznie w zaleznosci od konkretnego systemu i ustawien), ktory nie jest w tej samej grupie co Twoje konto, wiec dla niego stosowane sa prawa Others. Powinny wiec wystarczyc 602 (zapis i odczyt dla Ciebie + odczyt dla apacha). Katalogom wystarczą prawa 601, tak zeby php moglo wykonac skrypty znajdujace sie w nich.
Ma to jednak jedna wade. Jesli ktos ma konto na tym serwerze i zna dokladna sciezke do pliku z takimi prawami to moze sobie go bez problemu wyswietlic z poziomu wlasnego skryptu php (tylko w przypadku php jako modulu), teoretycznie szanse na to sa male, ale jednak sa.. nie wiem jak to rozwiazac.
elj
A może by tak zmienić w
/etc/mysql/my.cfg
lub
/etc/my.cfg

odpowiedni wpis serwera

z localhost na adres IP serwera

i nie zapomnieś o firewallu > puścić port 3306

pozdro.
Jarod
Cytat(FiDO @ 10.06.2006, 13:43 ) *
Zalezy od tego jak masz zainstalowane php na serwerze. Jesli jako CGI to skrytpy odpalane sa z prawami Twojego usera, wiec wtedy starcza bardzo restrykcyjne prawa 600 (tylko odczyt i zapis dla Ciebie).
W przypadku, gdy php jest zainstalowane jako modul to skrypty odpalane sa z konta apacha (www, apache, nobody..


Po czym poznać czy php zainstalowane jest jako CGI czy jako moduł?
FiDO
Wywolaj funkcje phpinfo(). Tam na samej gorze jest wpis "Server API". Jesli ma on wartosc Apache 2.0 Handler to znaczy, ze php jest jako modul. W przypadku CGI bedzie tam jakas wartosc z napisem CGI. Na home.pl dla przykladu jest UltraCGI/1.0 for IdeaWebServer
Jarod
Cytat(FiDO @ 11.06.2006, 17:22 ) *
Wywolaj funkcje phpinfo(). Tam na samej gorze jest wpis "Server API". Jesli ma on wartosc Apache 2.0 Handler to znaczy, ze php jest jako modul. W przypadku CGI bedzie tam jakas wartosc z napisem CGI. Na home.pl dla przykladu jest UltraCGI/1.0 for IdeaWebServer


Jako moduł. Czyli instalacja php jako CGI jest bezpieczniejsza?
FiDO
Nie do konca. Sa argumenty za jednym i drugim jesli chodzi o bezpieczenstwo, ale nie czuje sie na tyle dobry z tego tematu, zeby je tutaj przytoczyc i wyjasnic.
Jarod
Cytat(bendi @ 8.06.2006, 11:52 ) *
Musisz dodać sobie użytkownika, który będzie mógł się łączyć z innego hosta niż localhost - http://dev.mysql.com/doc/refman/5.0/en/adding-users.html



Nie mogę sobie z tym poradzić.
W pliku config.inc.php (plik konfiguracyjny, który znajduje się
w katalogu ze skryptami php) mam ustawioną nazwę bazy, login (root)
i hasło (testowe). Wszystko ładnie pięknie chula po sieci LAN.
Ale chciałbym z innego kompa połączyć się z bazą na serwerze
za pomocą Connector ODBC Mysql i lipa. Nie da się. Co robię nie tak?
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2019 Invision Power Services, Inc.