Kirjoittaja Aihe: Mysql, php ja phpmyadmin  (Luettu 3459 kertaa)

heisti

  • Käyttäjä
  • Viestejä: 17
    • Profiili
Mysql, php ja phpmyadmin
« : 11.02.06 - klo:19.18 »
Olen pystyttylemässä palvelimeen muutamaa webbisaittia. Miten saan konffattua phpmyadminin niin, että kun tavallinen sivuston omistaja katselee sitä, niin se ei edes näkisi muiden tietokantoja. Oletuksenahan kaikki näkee kaikkien tietokannat ja käyttäjät.

Asmo Koskinen

  • Käyttäjä
  • Viestejä: 4443
    • Profiili
Re: Mysql, php ja phpmyadmin
« Vastaus #1 : 11.02.06 - klo:19.53 »
Olen pystyttylemässä palvelimeen muutamaa webbisaittia. Miten saan konffattua phpmyadminin niin, että kun tavallinen sivuston omistaja katselee sitä, niin se ei edes näkisi muiden tietokantoja. Oletuksenahan kaikki näkee kaikkien tietokannat ja käyttäjät.

Menisikö näin.

Asennat jokaiselle sivustolle/sivuston omistajalle oman phpMyAdminin. Kunkin "config.inc.php"-tiedostoon on pultattu vain yksi tietokanta, kunkin oma.

$cfg['Servers'][$i]['only_db']       = 'saitin tietokannan nimi ';          // If set to a db-name, only this db is displayed in left frame

Luo myös phpMyAdmin-hakemistolle (.htaccess) tunnus+salasana-suojaus htpasswd-ohjelmalla ~-hakemistoon.

Asenna itsellesi Webmin-palvelimelle, niin voit helposti muokata käyttäjien oikeuksia tietokantojen suhteen: "Database Permissions".

http://www.arkki.info/tmp/Webmin_MySQL.png

Ystävällisin terveisin Asmo Koskinen.
« Viimeksi muokattu: 11.02.06 - klo:20.15 kirjoittanut Asmo Koskinen »

heisti

  • Käyttäjä
  • Viestejä: 17
    • Profiili
Re: Mysql, php ja phpmyadmin
« Vastaus #2 : 12.02.06 - klo:17.39 »
Voitko vielä valaista asiaa? Asensin tuon phpmyadminin apt-getillä ja se meni tuone documentroottin. Voiko aptilla asentaa tuon jokaiselle käyttäjälle, vai kopioidaanko se nykyinen kansio kaikille??
Mites, jos se on jokaisen käyttäjän kotihakemistossa, nii eikös käyttäjä pääse silloin muokkaamaan config.inc.php tiedostoo.

Asmo Koskinen

  • Käyttäjä
  • Viestejä: 4443
    • Profiili
Re: Mysql, php ja phpmyadmin
« Vastaus #3 : 14.02.06 - klo:16.52 »
Voitko vielä valaista asiaa?

Ota Apachessa käyttöön UserDir. Näyttää olevan Ubuntun Apache2:ssa pois päältä oletuksena,

#UserDir is now a module
#UserDir public_html
#UserDir disabled root

#<Directory /home/*/public_html>
#   AllowOverride FileInfo AuthConfig Limit
#   Options Indexes SymLinksIfOwnerMatch IncludesNoExec
#</Directory>

Palvelimelle luot tunnukset noille saittien käyttäjille aivan normaalisti.
Juurihakemisto tunnuksille ei olekaan /var/www vaan /home/tunnus/public_html.
Jokaisen tunnuksen public_html-hakemistoon voit laittaa oman phpMyAdmin-ohjelmiston.
Hae tar.gz-paketti, pura se public_html-hakemistoon ja anna oikeat tiedot.
Hakemistoon viitataan tyyliin http://palvelin/~tunnus/.

(Jos hankit domainit, voit virtualisoida hakemistot: http://palvelin/~tunnus/ = http://www.tunnus.fi/
Tällöin tarvitse DNS-palvelut.)

Eli.

Tee MySQL-palvelimelle tietokanta nimeltään "tunnus".
Tee MySQL-palvelimelle käyttäjä nimeltään "tunnus".
Salli vain "tunnuksen" käyttää ainoastaan tietokantaa "tunnus".
Tee Apache-palvelimelle käyttäjä nimeltään "tunnus".
Ota käyttöön UserDir.
(Ota käyttöön Apachen VirtualHost.)

Ystävällisin terveisin Asmo Koskinen.
« Viimeksi muokattu: 14.02.06 - klo:17.08 kirjoittanut Asmo Koskinen »

Kullervo

  • Käyttäjä
  • Viestejä: 876
    • Profiili
Re: Mysql, php ja phpmyadmin
« Vastaus #4 : 31.03.06 - klo:13.10 »
Voitko vielä valaista asiaa?

Ota Apachessa käyttöön UserDir. Näyttää olevan Ubuntun Apache2:ssa pois päältä oletuksena,

#UserDir is now a module
#UserDir public_html
#UserDir disabled root

#<Directory /home/*/public_html>
#   AllowOverride FileInfo AuthConfig Limit
#   Options Indexes SymLinksIfOwnerMatch IncludesNoExec
#</Directory>

Palvelimelle luot tunnukset noille saittien käyttäjille aivan normaalisti.
Juurihakemisto tunnuksille ei olekaan /var/www vaan /home/tunnus/public_html.
Jokaisen tunnuksen public_html-hakemistoon voit laittaa oman phpMyAdmin-ohjelmiston.
Hae tar.gz-paketti, pura se public_html-hakemistoon ja anna oikeat tiedot.
Hakemistoon viitataan tyyliin http://palvelin/~tunnus/.

(Jos hankit domainit, voit virtualisoida hakemistot: http://palvelin/~tunnus/ = http://www.tunnus.fi/
Tällöin tarvitse DNS-palvelut.)

Eli.

Tee MySQL-palvelimelle tietokanta nimeltään "tunnus".
Tee MySQL-palvelimelle käyttäjä nimeltään "tunnus".
Salli vain "tunnuksen" käyttää ainoastaan tietokantaa "tunnus".
Tee Apache-palvelimelle käyttäjä nimeltään "tunnus".
Ota käyttöön UserDir.
(Ota käyttöön Apachen VirtualHost.)

Ystävällisin terveisin Asmo Koskinen.

Olen nyt jonkin aikaa tapellut apachen kanssa ja sen conffaaminen ei ota luonnistuakseen.
Miten tuo UserDir otetaan käytännössä käyttöön (rautalankaa please)?

Sotkua aiheuttanee myös se kun asensin ensin apache 1,3 ja nyt myöhemmin uudemman version, eli apachen 2 version.
Pitääkö jotain tiedostoja poistaa aiemman version jäljiltä, jos pitää niin miten?

Risto H. Kurppa

  • Käyttäjä
  • Viestejä: 3024
  • Useita Kubuntuja ajossa.
    • Profiili
    • http://risto.kurppa.fi
Re: Mysql, php ja phpmyadmin
« Vastaus #5 : 31.03.06 - klo:16.25 »
Virittelin itselleni vastaavaa joku kuukausi sitten ja avain piili tietokantojen oikeuksissa..

Yksi phpmyadminin kopio riittää. Näkyvyysasetukset säädetään MySQL:ssä, phpmyadmin osaa hoitaa homman kotiin yhteistyisää MySQL:n kanssa ja näyttää (näkee itsekin tällöin) vain ne, joihin kirjautuvalle käyttäjälle on mysqlssä annettu oikeudet.

Eli asenna phpmyadmin ja kirjaudu roottina sisälle
Luo tarvittavat kannat ja asettele niille yksitellen tms. seuraavanlaisia oikeuksia:

Users having access to "joomla4"
UserHostTypePrivilegesGrant
debian-sys-maintlocalhostglobalALL PRIVILEGESYes
php_userlocalhostglobalSELECT, INSERT, UPDATE, DELETENo
rootlocalhostglobalALL PRIVILEGESYes
test_userlocalhostdatabase-specificSELECT, INSERT, UPDATE, DELETE, CREATE, DROPNo

Moista. Tuosta debia-sys-maintista ja php_userista en oikeastaan osaa sanoa mitään.. (KENELLÄKÄÄN SUORALTA KÄDELTÄ VINKKEJÄ?) root olen minä ja test_user on käyttäjä joka näkee ainoastaan ne taulut, joihin olen hänelle nämä tässä määritellyt oikeudet antanut. Eli pystyy lisäämään & poistamaan tauluja ja tekemään niillä mitä vain mutta uusia kantoja ei pysty tekemään eikä myöskään antamaan oikeuksia muille.

Ja kannattaa ehkä hieman testailla ennenkuin 'julkaiset' mitään..

r
« Viimeksi muokattu: 31.03.06 - klo:16.29 kirjoittanut rhk »
UUSI UBUNTUN KÄYTTÄJÄ: SÄÄSTÄ AIKAASI LUKEMALLA  -> TÄMÄ <-