PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : phpMyAdmin configurieren



ccc
06-04-2006, 01:37
hallo

habe apache2 und phpmyadmin installiert (debian sarge stable):

# dpkg -l | grep apache2
ii apache2 2.0.54-5 next generation, scalable, extendable web se
ii apache2-common 2.0.54-5 next generation, scalable, extendable web se
ii apache2-doc 2.0.54-5 documentation for apache2
ii apache2-mpm-pr 2.0.54-5 traditional model for Apache2
ii apache2-utils 2.0.54-5 utility programs for webservers
ii libapache2-mod 1.999.21-1 Integration of perl with the Apache2 web ser
ii libapache2-mod 4.3.10-16 server-side, HTML-embedded scripting languag
# dpkg -l | grep phpmyadmin
ii phpmyadmin 2.6.2-3sarge1 set of PHP-scripts to administrate MySQL ove
# dpkg -l | grep php4
ii php4 4.3.10-16 server-side, HTML-embedded scripting languag
ii php4-cli 4.3.10-16 command-line interpreter for the php4 script
ii php4-common 4.3.10-16 Common files for packages built from the php
ii php4-mysql 4.3.10-16 MySQL module for php4
ii php4-snmp 4.3.10-16 SNMP module for php4

habe 10 domains und 10 virual servers konfiguriert.
zu jeder domain sollte eine mysql database gehören und access sollte via phpmyadmin erfolgen.

in /usr/share/phpmyadmin/config.inc.php habe folgende authentication:

$cfg['Servers'][$i]['auth_type'] = 'http'; // Authentication method (config, http or cookie based)?
$cfg['Servers'][$i]['user'] = ''; // MySQL user
$cfg['Servers'][$i]['password'] = ''; // MySQL password (only needed
// with 'config' auth_type)
$cfg['Servers'][$i]['only_db'] = ''; // If set to a db-name, only

zusätzlich habe noch in/etc/apache2/sites-enabled/000-default folgendes hinzugefügt:

# Provide an alias to phpmyadmin
Alias /phpmyadmin /usr/share/phpmyadmin
<Directory /usr/share/phpmyadmin>
Order allow,deny
allow from all
</Directory>
das problem ist, dass jetzt jeder user, sogar mysql root kann via phpmyadmin auf seine mysql datenbank zugreifen
und zwar egal welche domain im browser steht.
natürlich meine nur die domains die zum server pointed sind.
wie kann ich das ändern ?
jeder user sollte via phpmyadmin zu seiner mysql datenbank nur via seine domain verbinden können.

mein zweites problem ist, wie kann ich mysql admin (root) user
für phpmyadmin aus sichercheitsgründen sperren ?

Romanday
06-04-2006, 09:40
hallo
das problem ist, dass jetzt jeder user, sogar mysql root kann via phpmyadmin auf seine mysql datenbank zugreifen
und zwar egal welche domain im browser steht.
natürlich meine nur die domains die zum server pointed sind.
wie kann ich das ändern ?
jeder user sollte via phpmyadmin zu seiner mysql datenbank nur via seine domain verbinden können.

mein zweites problem ist, wie kann ich mysql admin (root) user
für phpmyadmin aus sichercheitsgründen sperren ?

Dann mußt Du die Rechte für jeden Datenbank User setzen.
Danach bekommt jeder User seinen eigenen phpmyadmin + config.

Übrigens root ist root. Da würde ich keine faxen machen.

--

ccc
06-04-2006, 15:10
Dann mußt Du die Rechte für jeden Datenbank User setzen.
Danach bekommt jeder User seinen eigenen phpmyadmin + config.

Übrigens root ist root. Da würde ich keine faxen machen.

--

mir geht es eher darum zu verhindern, dass z.B

user1 von der domain1 mit http://domain2/myphpadmin

oder

http://servername/myphpadmin

einloggen kann,

statt nur http://domain1/myphpadmin

und weiss nicht wie ich das lösen kann.

p.s.

übrigens user root für public konnte mit dem folgenden eintrag in /etc/phpmyadmin sperren:

// deny root and allow only from the local network
$cfg['Servers'][$i]['AllowDeny']['order'] = 'deny,allow';
$cfg['Servers'][$i]['AllowDeny']['rules'] = array(
'deny root from all',
'allow root from localhost',
'allow root from 192.168.0.0/24',
);

gruss
ccc

Romanday
06-04-2006, 16:02
mir geht es eher darum zu verhindern, dass z.B

user1 von der domain1 mit http://domain2/myphpadmin

oder

http://servername/myphpadmin

einloggen kann,

statt nur http://domain1/myphpadmin

und weiss nicht wie ich das lösen kann.

gruss
ccc

Du kannst doch in der config einen Pfad angeben.
Den darfst Du dir auch aussuchen.
Wie das Passwort abgefragt wird geschieht über auth_type.

Du kannst natürlich zusätzlich auch bestimmte Pfade mit einem
Passwort belegen. Das stellt man z. B. mit dem Indianer ein.