Kirjoittaja Aihe: phpmyadmin ja root ainoa toimiva käyttäjä?  (Luettu 3500 kertaa)

Tinqe

  • Käyttäjä
  • Viestejä: 4
    • Profiili
phpmyadmin ja root ainoa toimiva käyttäjä?
« : 08.04.09 - klo:20.31 »
Asensin serverilleni (Ubuntu 8.10 server) apachen, php:n, mysql:n ja phpmyadminin. Phpmyadmin toimii, mutta pääsen kirjautumaan vain roottina sisään. Olen yrittänyt luoda uutta käyttäjää (test ja tinqe), mutta mikäli käyttäjällä on salasana asetettuna, tulee "#1045 - Access denied for user 'test'@'localhost' (using password: YES)"-virheilmoitus. Ilman salasanaa pääsee kirjautumaan käyttäjänä (test ja tinqe) sisälle, rootilla on oma salasanansa. Olen yrittänyt sekä apt-getillä asennetulla phpmyadminilla, että phpmyadminin sivuilta löytyvällä 3.1.3.1-versiolla. Molemmilla sama lopputulos. MySQL-palvelimen versio on 5.0.67-0ubuntu6 (lukee phpmyadminin etusivulla).

Eli mikä mättää, phpmyadminin kirjautuminen, mysql vai käyttäjä? Phpmyadminin kirjautuminen on kekseillä ja koska root pääsee sisään, luulisin sen toimivan?

Asmo Koskinen

  • Käyttäjä
  • Viestejä: 4443
    • Profiili
Vs: phpmyadmin ja root ainoa toimiva käyttäjä?
« Vastaus #1 : 08.04.09 - klo:23.08 »
Eli mikä mättää, phpmyadminin kirjautuminen, mysql vai käyttäjä?

Nykyään käytän Webminiä kaikkeen, mikä koskee MySQL-ylläpitoa; jos Webmin vain on mahdollista asentaa.

Kyllä minulla silti on yksi phpmyadmin käytössä. Se on Arkissa, jossa minulla ei ole root-oikeuksia.

Sen hakemisto on Apache/htpasswd:n takana ja siihen on määritelty selkeästi käyttäjä ja käyttäjälle tietokanta, ei keksejä. Käyttäjätunnuksen, salasanan ja siihen liitetyn tietokannan olen saanut annettuina asioina. Phpmyadminin asensin tar.gz-tiedostosta.

/* Authentication type */
// $cfg['Servers'][$i]['auth_type'] = 'cookie';
$cfg['Servers'][$i]['user']         = 'xxx';
$cfg['Servers'][$i]['password']     = 'xxx';
/* Server parameters */
$cfg['Servers'][$i]['host'] = 'xxx';
$cfg['Servers'][$i]['connect_type'] = 'tcp';
$cfg['Servers'][$i]['compress'] = false;
/* Select mysqli if your server has it */
$cfg['Servers'][$i]['extension'] = 'mysql';
/* User for advanced features */

Viipaleessa/Hiekkalaatikossa minulla on Webmin ja sillä olen määritellyt tietokannat ja käyttäjät erilaisille LAMP-ohjelmille. Osaan kyllä simppelisti tulostaa mysql-komentoriviltä, mutta tunnusten ja tietokantojen ja niiden oikeuksien luominen käy paljon helpommin ja graafisesti Webmin-ohjelmalla. Joten jos phpmyadmin ei ole välttämätön, niin suosittelen tutustumaan komentorivin lisäksi Webmin-ohjelmaan.

Koodia: [Valitse]
mysql> show databases;
+--------------------+
| Database           |
+--------------------+
| information_schema |
| elgg               |
| kirjasto           |
| mysql              |
| wordpress          |
+--------------------+
5 rows in set (0.00 sec)


Koodia: [Valitse]
mysql> select User from mysql.user;
+------------------+
| User             |
+------------------+
| elgg             |
| kirjasto         |
| wordpress        |
| root             |
| root             |
| root             |
| debian-sys-maint |
| root             |
+------------------+
8 rows in set (0.00 sec)

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

Tinqe

  • Käyttäjä
  • Viestejä: 4
    • Profiili
Vs: phpmyadmin ja root ainoa toimiva käyttäjä?
« Vastaus #2 : 09.04.09 - klo:17.42 »
Kaveri neuvoi tarkistamaan, että palvelin on sallittu. Kun loin käyttäjän, laitoin sisäänkirjautumistietoihin "Salli mikä tahansa palvelin %", nyt vaihdoin sallituksi palvelimeksi localhost, niin alkoi toimia. Miksiköhän tuo ei anna sallia kaikkia palvelimia? Periaatteessa tuo ei häiritse, mutta haluaisin sallia kaikilta lähiverkon koneilta (192.168.0.x) yhteydet mysql:ään. Serverihän on adsl-purkin natin takana, joten ei olisi haitannut, vaikka olisin kaikki sallinut.

jekku

  • Käyttäjä
  • Viestejä: 2624
    • Profiili
Vs: phpmyadmin ja root ainoa toimiva käyttäjä?
« Vastaus #3 : 13.04.09 - klo:17.14 »
Kaveri neuvoi tarkistamaan, että palvelin on sallittu. Kun loin käyttäjän, laitoin sisäänkirjautumistietoihin "Salli mikä tahansa palvelin %", nyt vaihdoin sallituksi palvelimeksi localhost, niin alkoi toimia. Miksiköhän tuo ei anna sallia kaikkia palvelimia? Periaatteessa tuo ei häiritse, mutta haluaisin sallia kaikilta lähiverkon koneilta (192.168.0.x) yhteydet mysql:ään. Serverihän on adsl-purkin natin takana, joten ei olisi haitannut, vaikka olisin kaikki sallinut.

Onko kaikilla lähiverkon koneillasi webbiserveri (ja se phpmyadmin) joka koettaa yhteyttä tuohon kantakoneeseen?
Kun mielestäni phpmyadmin ajetaan paikallisesti - eli 'localhost'. Tai ehkä sen saa trimmattua toisinkin.

Mutta jos oikeasti tarvitset yhteyden kantaan muiltakin koneilta niin tutustupa tiedostoon /etc/mysql/my.cnf mitä se sanoo kuunneltavasta portista ja mitä osoitetta se kuuntelee.

AION

  • Käyttäjä
  • Viestejä: 150
    • Profiili
Vs: phpmyadmin ja root ainoa toimiva käyttäjä?
« Vastaus #4 : 24.04.09 - klo:11.26 »
PHP on aina serverside scripting language, toisin kuin html, jonka parsii client koneen selain. Kaikki PHP scriptit, mukaanlukien phpmyadmin ajetaan serverillä, jolloin jos otetaan yhteyttä samaan serveriin tulee localhost olla tickattu käyttäjän kohdalta.

Tuo allow from everywhere on muutenkin huonomääritelmä, joten sitä ei pitäisi ylipäänsä käyttää. Se miksi se ei toimi tossa phpmyadminissa niin en osaa sanoa.