PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : [Programmierung] MYSQL



Cyberax
10.03.02, 14:15
Hallo

Ich habe einen Apache-Webserver mit MYSQL-Datenbank gestartet. :)

Nun ergibt sich allerdings ein Problem.

Jeder kann auf die Datenbanken zugreifen ! :confused

:confused
Es steht zwar noch nix drin aber das kommt ja noch. Ich habe schon viele Bücher und Foren gelesen, aber nirgend was gefunden, wo ich den Benutzernamen und das Passwort richtig eingeben kann.

Der Server soll im LAN und im Internet erreichbar sein.

Für das Internet nutze ich noch DNS2Go.


MYSQLamin ver.1.0
Apache 1.3.20



www.cyberax.dns2go.com


Kann mir jemand helfen ???

Astrominus
10.03.02, 14:26
Schon einmal an Passwortschutz über .htaccess gedacht ?

Supernature
10.03.02, 20:27
Nein Astro, das hilft in dem Fall nichts - es soll die SQL-Datenbank vor unbefugten Zugriffen geschützt werden.

User und Password für den Datenbankzugriff werden in der Datei my.ini eingegeben, diese liegt direkt unter c:\windows\

Mit WinMySQLadmin geht es aber auch direkt über den Reiter "my.ini Setup" - die Werte eintragen und dann links auf "Save Modifikation" klicken

pitix
11.03.02, 00:02
ähm ... da gibt es die Datenbank mysql mit der Tabelle user ... da füllste ein PAsswort ein (eines mit crypt() codiertes) bei allen (standardmäßig sind es 4 "user") Usern ... dann noch ein flush privileges und fertig haste dein PAsswortschutz auf die Datenbanken ...

oder lad dir MySQL-Front runter ... damit gehts einfach einzustellen

cya piti

Cyberax
11.03.02, 15:46
Mh, User und Passwort stehen in der my.ini, dennoch erfolgt keine Abfrage.

Statt dessen eine Fehlermeldung:

Warning: Access denied for user: 'cyberax@cyberax' (Using password: YES) in c:\apache\htdocs\phpmyadmin\lib.inc.php on line 255
Error

Es erschien aber nie ein Abfragefenster


Danke im vorraus

Cyberax

Supernature
11.03.02, 16:06
Klar, ein Abfragefenster erscheint nicht, mySQL erwartet, dass diese Parameter mit übergeben werden. User/PW müssen also entweder im php-Script direkt gespeichert sein oder von diesem vor der Verbindung mit der Datenbank abgefragt werden. Diese Abfrage musst Du aber selbst erstellen.

Cyberax
11.03.02, 17:06
Ok habe ich verstanden.

Wenn ich nun WinMYSQLAdmin laufen haben und über die HP in den PHPMYADMIN bereich gehe sehe ich ja die Datenbank.

Sobald ich nun dort eine neue DB erstellen will kommt folgende fehler meldung:

MySQL said: Access denied for user: '@cyberax' to database 'test2'


Wieso das nun ???

MFG

Cyberax

Supernature
11.03.02, 21:33
In der config.inc.php stehen aber die korrekten Werte?
Was passiert, wenn Du die neue Datenbank mit WinMYSQLAdmin erstellst?

Cyberax
12.03.02, 15:56
In WinMYSQLAdmin kann ich Datenbanken ohne Probleme erstellen.

Ok, ich hab da nen Fehler gefunden, hatte dort CYBERAX und nicht localhost als host stehen, jetzt kann ich die DB auch in phpmyadmin erstellen.


THX an alle nochmal

Cyberax
12.03.02, 18:21
Doch, eine Frage stellt sich jetzt noch....

Wie mache ich am besten eine Passwortabfrage auf die Datenbank, so dass nur ausgewählte User Zugang haben ???

pitix
12.03.02, 20:28
darf ich meinen Komentar nochmal an dieser Stelle einbringen ? ;)
lad dir MySQL-Front runter ... damit gehts einfach einzustellen ... da kannste die Datenbank auswählen und die Rechte setzen ;)

http://www.anse.de/mysqlfront/ ... ist glaub freeware, oder ?

cu pitix

Cyberax
14.03.02, 16:50
Dank an Pitix, das Programm ist gut zum erstellen von Rechten, aber mein Problem besteht weiter....

Wenn ich über den IE auf meinen Server gehe und dort in den phpadmin bereich, gelange ich ohne User und Passwortabfrage auf die Datenbank...

Wie kann ich das Ändern ???

Supernature
14.03.02, 17:16
nun kommen wir wieder zurück zu Astro's erster Antwort :)
Wenn Du das Verzeichnis schützt, in dem phpmyadmin liegt, ist das Problem gelöst.

pitix
14.03.02, 17:24
aaaaaaaaahso ... yo das is immer gleich ... aber da gibts nen Trick:

erstelle meherer Kopien von PHPadmin ... und dann stell bei jeder kopie nen anderen User ein ... udn dann noch jedes Verzeichnis mit .htaccess schützen

bei PHP-admin gibts kein Login ... leider ... (könnte man aber coden ;) )

cu pitix
-nachtrag- admin war schneller ;) ...

Astrominus
14.03.02, 18:07
Für den Fall das Du mit .htaccess nicht viel anfangen kannst, habe ich >> hier (http://www.webtorial.de/allg8.htm) einmal versucht das ganze zu erklären.

Cyberax
14.03.02, 19:28
Ok, habe das mal mit .htacces nach deiner Anleitung probiert Astrominus.

Habe die Dateien in ein Verzeichnis kopiert und in das Verzeichnis das Phpmyadmin.

Laut deiner Aussage müsste nun bei einem zugriff auf diese Verzeichnis eine User-Abfrage kommen.
Kommt aber nicht.

Die Datein liegen alle im Verzeichnis user

Schau mal ob du nen Fehler findest:

.htaccess

AuthType Basic
AuthName "Cyberax's SQL"
AuthUserFile /user/.htusers
AuthGroupFile /dev/null
require user Cyberax


.htusers

Cyberax:xxxx


Und dann die ganze Dat in das Verzeichnis user gelgt und in das Verzeichnis user die phpmyadmin also
user/phpmyadmin

Supernature
14.03.02, 19:30
Ich hab in einem anderen Thread heute schon mal die Frage aufgeworfen: Funzt htaccess überhaupt unter Windows? Ich weiss es nämlich nicht.

Cyberax
14.03.02, 19:32
Das ist allerdings eine gute Frage...

Im IE sehe ich die Dateien allerdings nicht

Astrominus
14.03.02, 19:38
.htacces funzt nur auf einem Apache Server müsste aber auch mit Windows funzen nur das dort die Passwörter nicht verschlüsselt werden.

Cyberax
14.03.02, 19:40
Apache Server 1.3.20 ist installiert und läuft, trotzdem keine Abfrage

Cyberax
14.03.02, 19:40
Moment heißt es jetzt

.htacces

oder

.htaccess


???

Cyberax
14.03.02, 19:45
Ist egal wie, geht aber nicht...

schau mal sebst


www.cyberax.dns2go.com


wenn du jetzt auf

www.cyberax.dns2go.com/user

gehtst, kommt keine Passwort abfrage.
Kannst jetzt auch in den Admin-Bereich gehen ohne Passwort

Astrominus
14.03.02, 19:46
Doppel S am ende.

Hast du das passwort verschlüsselt ?

Edit:
Hast du die .htaccess im Userverzeichniss liegen ?

Cyberax
14.03.02, 19:47
nein

Edit:
Ja, die .htaccess liegt da

Astrominus
14.03.02, 19:52
Wenn der Server auf Unix Basis läuft musst du das aber tun.
Auf meiner seite gibt es eine abfrage in der du dein Passwort eingibst und es verschlüsselt zurückbekommst.

Ein anderer Fehler der mir aufgefallen ist, ist der Pfad zu der .htusers.
Ich zitiere mich mal selbst ;)

Nun folgt mit AuthUserFile der Pfad zu der .htusers, aber nicht der relative Pfad ab Wurzelverzeichniss ihres Webangebotes, sondern der absolute Pfad ab dem Server-Rechner des Webhosters. Diesen müsst ihr gegebenenfalls bei eurem Webhoster erfragen.

Du brauchst den ABSOLUTEN Pfad ab Server-Rechner.

pitix
14.03.02, 20:08
also du hast Windows ... hab gerade eine Fehlermeldung gesehn mit PHP c:\php

also ... da musst du die Datei .htpasswd ohne codierung anlegen UND in .htaccess musste den Pfad richtig eingeben und nicht nur /users/.htpasswd sondern c:\balblabla\users\.htpasswd


AuthType Basic
AuthName "Cyberax's SQL"
AuthUserFile /user/.htusers <== FEHLER ... nicht /user/.htuser sondern ein richtiger Pfad z.b. c:\bla\user\.htuser
AuthGroupFile /dev/null <== FEHLER ... Zeile rauslöschen ... bei Windows braucht man die Zeile nicht, wenn man keine Gruppen hat
require user Cyberax das brauchste nicht unbedingt

Cyberax
14.03.02, 20:08
Mh,
also mein Win2000 Rechner ist mit Apache 1.3.20 Server,
der Apache liegt auf C:/
jetzt dann von C:/ aus oder ab dem Apache

pitix
14.03.02, 20:12
okay c:\apache\htdocs ... da liegt dein Apache ;)
c:\apache\htdocs\user\.htuser ...
das muss da bei AuthUserFile hin, wenn ich deine Struktur richtig verstanden hab

bei weiteren problemem kontaktier mich per ICQ ;)

Cyberax
14.03.02, 20:16
Ok, habe den Pfad so geändert geht aber immer noch nicht...

Ach Pitix, was soll diese .htpasswd sein,
habe nur ne .htusers und die .htaccess


???

Astrominus
14.03.02, 20:16
Ja denke ich auch mal.
In meinem Beispiel von oben gehe ich von einem Webserver aus.
Aber Du hostest es ja auf deinem Rechner.
Mit dem Pfad von Pitix müsste es aber gehen.

Edit:
Hoppla - überschnitten.
Pitix meint wohl die .htusers, ist egal wie man diese nennt, nur der Punkt voran ist wichtig.

pitix
14.03.02, 20:19
.htuser .htpasswd ... alles der gleiche schund ;) ... normalerweise heisst die datei .htpasswd , aber es ist egal wie sie heisst , hauptsache der Pfad und die Datei zu AuthUserFile stimmt ...

das MUSS tun :D ... ich hab nen Apache 1.3.22 auf Win 2000 ;) ... und da tuts
hast du ICQ ?

Cyberax
14.03.02, 20:19
Gleich wieder


Edit:

liegt es an der Apache-Version ???

pitix
14.03.02, 20:21
nö ... ich hatte davor 'ne noch ältere und damit gings auch :D

Cyberax
14.03.02, 20:25
Authorization please

pitix
14.03.02, 20:25
Original geschrieben von Cyberax
Authorization please
schon lange gemacht ;) ...