MySQLDumper-Board Forum Index Follow me on Twitter

Portal  •   Forum  •  Downloads  •  Profile  •  Search   •  Register  •  Log in to check your private messages  •  Log in  •  


 Verzeichnisschutz per .htaccess

Post new topicReply to topic
Author Message
NiMhurchu
Moderator
Moderator




Age: 39
Joined: 04 Mar 2005
Posts: 376
Location: 91xxx


ireland.gif

PostPosted: 2006-01-14, 14:33    Verzeichnisschutz per .htaccess Reply with quoteBack to top

Hi,

ist zwar nicht direkt eine eigene Erweiterung, aber ich denke, hier paßt es ganz gut rein.

Als langmonatiger (langjähriger paßt bei knapp über einem Jahr nicht ganz) zufriedener Nutzer einer statischen IP-Adresse könnte man auf die Idee kommen, diese auch als Authentifikation gegenüber dem Webserver oder den Scripten zu verwenden. Das hat den Vorteil, daß nicht jedesmal ein Benutzername und ein Paßwort eingegeben werden muß. Sicherlich könnte man Benutzername und Paßwort auch in einen Link hineincodieren, z. B.
http://benutzername:passwort@www.meinedomain.de/mysqldumper/
, aber wenn einem Dritten dieser Link dann in die Hände fällt, dann ist Polen offen.
(OT: der Spruch zieht übrigens nicht mehr ganz, weil Polen *ist* ja jetzt offen. Laughing)

Die Prüfung der IP-Adresse über die Scripte würde Änderungen an allen Scripten erfordern, also auch untauglich.

Hier bietet sich noch die .htaccess an, wenn man denn eine solche erstellen darf und wenn der Provider den Zugriffsschutz nicht auf andere Weise realisiert.

Schritt 1: .htaccess

# meine .htaccess-Datei für das Verzeichnis /mysqldumper
AuthName "MySQLDumper"
AuthType Basic
AuthUserFile /physikalischer/Pfad/zur/Datei/namens/.htpasswd
order         deny,allow
deny from     all
satisfy       any
allow from    a.b.c.d
require user  hans peter


Zeile 1: Kommentare werden mit "#" eingeleitet und vom Webserver nicht beachtet
Zeile 2: "AuthName" bezeichnet sozusagen den Namen des Bereichs, in den Du "eindringen" möchtest
Zeile 3: AuthType ist der Authentifizierungstyp
Zeile 4: hier wird der physikalische Pfad zur Paßwortdate angegeben. Physikalisch! Nicht im Format http://www.meinedomain.de/...
Zeile 5: Reihenfolge: erst verbieten, dann erlauben
Zeile 6: ersteinmal alles verbieten
Zeile 7: von beiden folgenden Authentifizierungsmechanismen muß wenigstens einer richtig sein. Gegenteil: satisfy all -- hier müssen beide Mechanismen das Resultat "gültige Authentifizierung" zurückmelden
Zeile 8: IP-Adresse; wohlgemerkt die externe IP-Adresse des Internetanschlusses. Kann auch im Format a.b.c angegeben werden. Dann ist aber wiederum das ganze Netz (also z. B. die Hosts 80.140.213.1 bis 80.140.213.254) zum Zugriff berechtigt. Durch das obige satisfy any muß bei gültiger IP-Adresse kein Paßwort eingegeben werden!
Zeile 9: wenn die Authentifizierung über die IP-Adresse fehlschlägt, wird nach Benutzername und Paßwort gefragt. In diesem Beispiel dürfen nur die Benutzer hans und peter zugreifen.

Edit:
Wozu ist das Ganze nun gut?
1. Bequemlichkeit. Wink Wenn man schon eine statische IP-Adresse hat, dann sollte man sie auch nutzen. Sowas ist nicht nur zum Angeben da! Laughing
2. Sicherheit. Den MySQLDumper sollte man nicht einfach so rumliegen lassen.
3. Flexibilität. Bist Du zuhause, brauchst Du kein Paßwort einzugeben. Bist Du unterwegs, kannst Du immerhin ein Paßwort eingeben, um auf das Verzeichnis zu kommen.

Wird Zeile 8 (allow from a.b.c.d) weggelassen, wird wiederum nur der Benutzername und das Paßwort überprüft, die IP-Adresse nicht mehr.
Andersherum und nicht besonders empfehlenswert: wird das "require user"-Statement entfernt, kann man nur noch von dieser einen IP-Adresse zugreifen.

Schritt 2: .htpasswd
Um die Paßwörter abzugleichen, braucht's noch die Paßwortdatei, standardmäßig .htpasswd. Sicherheitshalber sollte diese Datei außerhalb des Zugriffs des Webservers liegen -- das ist vermutlich nicht bei jedem Hoster möglich.
Beispiel: "/" ist das Wurzelverzeichnis. Unter "/" gibt es die Unterordner "private/" und "www/". Der Webserver ist so konfiguriert, daß sein Startverzeichnis "www/" ist. Also steht alles, was außerhalb von "www/" ist, dem Webserver nicht zur Verfügung. Wird die Domain www.meinedomain.de/index.html aufgerufen, dann lädt der Webserver die Datei /www/index.html.

Also sollte die .htpasswd-Datei in "private/" liegen. Der physikalische Pfad zum Ordner "private/" könnte z. B. "/hp/aa/ab/kd/meier/private/" lauten, also müßte in diesem Beispiel für den Schlüssel "AuthUserFile" "/hp/ab/kd/meier/private/.htpasswd" in der Datei .htaccess stehen.

Die .htpasswd-Datei enthält die Usernamen und crypt()-verschlüsselte Paßwörter, durch Doppelpunkt getrennt:
hans:H8L1tW6j9przy


Kann die Datei .htaccess nicht in einem Verzeichnis außerhalb des Zugriffs des Webservers gespeichert werden, sollte sie wenigstens in einem anderen geschützten Verzeichnis liegen, eventuell in dem Verzeichnis, für das die .htaccess gilt. Im Beispiel also in "/hp/aa/ab/kd/meier/www/mysqldumper/". In die .htaccess müßte dann als "AuthUserFile" "/hp/aa/ab/kd/meier/.htpasswd" eingetragen werden.

Wie erfahre ich den physikalischen Pfad?
Öffne einen Texteditor und gib
<?php
phpinfo();
?>
ein. Speichere das ganze als "phpinfo.php" und lade es auf Deinen Webserver hoch. Rufe die Datei über einen Browser Deiner Wahl auf. Suche auf der Seite z. B. nach "SCRIPT_FILENAME". In der Spalte daneben steht jetzt der physikalische Pfad zu diesem Script.
Wenn Du das Script in "/hp/aa/ab/kd/meier/www/test/phpinfo.php" gespeichert hast und es über "http://www.meinedomain.de/test/phpinfo.php" im Browser aufgerufen hast, dann weißt Du, daß "/hp/aa/ab/kd/meier/www/" das Wurzelverzeichnis Deines Webservers ist. "http://www.meinedomain.de/admin/" wäre dann also "hp/aa/ab/kd/meier/www/admin/", "http://www.meinedomain.de/" wäre "hp/aa/ab/kd/meier/www/".

Edit:
Wie kann ich mein Paßwort crypt()-verschlüsseln?
Z. b. unter
http://crypt-online.de/
oder
http://aktuell.de.selfhtml.org/artikel/server/htaccess/index.htm

Achtung: wird in der Datei .htaccess "satisfy all" und eine falsche (z. B. die interne IP-Adresse Deines Rechners) oder wechselnde (Standard-T-DSL-)IP-Adresse angegeben, kann man über den Browser nicht mehr auf das so "geschützte" Verzeichnis zugreifen (wofür ich, nebenbei gesagt, keine Verantwortung übernehme).
Hast Du Dich auf diese Art und Weise selber ausgesperrt, kannst Du Dich immer noch per FTP auf den Server verbinden und die Datei .htaccess löschen bzw. korrigieren.

Gruß,

NiMhurchu

_________________
"Man muß keine Noten lesen können,
um Musiker zu sein."

Jeanette Biedermann, deutsche Popsängerin, 25.11.2005


Last edited by NiMhurchu on 2006-01-14, 14:54; edited 1 time in total

OfflineView user's profileSend private message    
Anzeigen











Posted:    Anzeigen Back to top


    
DSB
Developer
Developer




Age: 41
Joined: 30 Apr 2004
Posts: 16073
Location: Reichenberg bei Würzburg


germany.gif

PostPosted: 2006-01-14, 14:42    Re: Verzeichnisschutz per .htaccess Reply with quoteBack to top

Mein lieber NiMhurchu,

dies ist ein hervorragendes und gut erklärtest Tutorial zum Thema .htaccess. Thumbsup clap

Vielen Dank dafür.
Da werden sicher einige User wieder ein Stück mehr verstehen wie das alles im Netz so funktioniert. Klasse.
Werde mir mal überlegen, wo man das dauerhaft unterbringen kann, so dass das für alle Interessierten schnell auffindbar ist.

_________________
Gruß / Greetings, DSB

Teigwaren heißen Teigwaren, weil sie Teig waren.
Diejenigen, die lautstark darüber diskutieren, warum es nicht geht, mögen bitte jene nicht stören, die es gerade tun.

OfflineView user's profileSend private messageSend e-mailVisit poster's website    
NiMhurchu
Moderator
Moderator




Age: 39
Joined: 04 Mar 2005
Posts: 376
Location: 91xxx


ireland.gif

PostPosted: 2006-01-14, 14:58    Re: Verzeichnisschutz per .htaccess Reply with quoteBack to top

Oh... danke... Embarassed
ich dachte mir nur, ich beschreibe mal, wie man den MySQLDumper noch bequemer bedienen kann. Wink

_________________
"Man muß keine Noten lesen können,
um Musiker zu sein."

Jeanette Biedermann, deutsche Popsängerin, 25.11.2005

OfflineView user's profileSend private message    
Display posts from previous:      
Post new topicReply to topic


 Jump to:   


Show permissions
Similar topics
Topic Author Forum Replies Posted
No new posts Mysqldumper, terner Cronjob und .htac... Quizmasterlex Gelöst/Erledigt 4 2012-03-03, 10:29 View latest post
No new posts Verzeichnisschutz aktiviert? filter Allgemeine Spielwiese 5 2012-02-20, 12:54 View latest post
No new posts Verzeichnisschutz lässt sich nicht vo... bella_nicole Gelöst/Erledigt 15 2012-01-18, 01:05 View latest post
No new posts Directory protection fails with .htac... jellef Errors and questions 4 2012-01-08, 16:01 View latest post
No new posts MySQLDumper Verzeichnisschutz zurücks... RK1 Allgemeine Fragen zu MySQLDumper 2 2011-11-18, 19:15 View latest post

 
CrackerTracker © 2004 - 2012 CBACK.de

Powered by Orion based on phpBB © 2001, 2002 phpBB Group
CBACK Orion Style based on FI Theme
All times are GMT + 2 Hours

phpBB SEO