PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : .htaccess Problem



linuxfrankie
15.07.02, 12:38
Hi,
ich habe .htaccess wie hier http://www.sideburns.de/htaccess-howto.html beschrieben durchgeführt. HAt auch soweit geklappt, aber das Verzeichnis ist trotzdem ohne Passwort zugänglich... Es kommt auch keine Meldung in der error.log
Habe Suse Linux 7.2 mit Apache

BeaTtheMeaT666
15.07.02, 13:26
hallöchen,

steht in deiner httpd.conf


This controls which options the .htaccess files in directories can
# override. Can also be "All", or any combination of "Options", "FileInfo",
# "AuthConfig", and "Limit"
#
AllowOverride AuthConfig


und



# AccessFileName: The name of the file to look for in each directory
# for access control information.
#
AccessFileName .htaccess

#
# The following lines prevent .htaccess files from being viewed by
# Web clients. Since .htaccess files often contain authorization
# information, access is disallowed for security reasons. Comment
# these lines out if you want Web visitors to see the contents of
# .htaccess files. If you change the AccessFileName directive above,
# be sure to make the corresponding changes here.
#
# Also, folks tend to use names such as .htpasswd for password
# files, so this will protect those as well.
#
<Files ~ "^\.ht">
Order allow,deny
Deny from all
</Files>


mod_auth muß auch in den apache als modul kompiliert sein.

da sollte ich vielleicht noch in das howto schreiben, hab das nachts irgendwann getippt....

linuxfrankie
15.07.02, 13:54
also die httpd.conf stimmt
jetzt kommt auch die passwort abfrage, allerdings kann ich mich nit anmelden.. obwohl der user angelegt ist...
wo finde ich das mod_auth??? über yast pakete einspielen war es in der gruppe n nicht drin?!?!

Individuum
12.11.02, 14:06
ich hab genau das selbe prob! User us angelegt, abfrage kommt aber der nimmt den user net!
chmod und chown sind richtig für die datei .htpasswd
ne frage wie muss der link sosehen?
authUserFile /srv/www/.htpassword
weil ich hab das gefühl der finder die datei net!

Harry
12.11.02, 16:54
Hallo,

in der .htaccess muß lt. http://httpd.apache.org/docs/mod/core.html#require in der letzten Zeile


require user foo

stehen.

Versucht's mal damit.
@Bea: Nettes kleines Howto :)

Harry

Individuum
12.11.02, 18:14
authUserFile /srv/www/.htpassword
weil ich hab das gefühl der finder die datei net!

wie siehts mit der vermutng aus?!

Harry
13.11.02, 00:07
Original geschrieben von Individuum
wie siehts mit der vermutng aus?!
Zeig' uns Dein error-log-file und wir erklären Dir das Problem :D
Ansonsten sollte der Apache die Datei schon finden und auswerten können, vorausgesetzt natürlich, dass die Berechtiungen zum Auslesen dieser Datei korrekt gesetzt sind.

Harry

Individuum
14.11.02, 08:13
die error log ist leeeeeeeeeeeeer!

ich hab keine ahnung warum der die benutzer nicht findet!

übrigens die .htpasswd gehört wwwrun und hat 755!

rabenkind
18.11.02, 16:28
hi to all

1. die .htpasswd und .htaccess gehören in das verzeichnis das du einschränken willst.
2. in der http.conf sollte es so aussehen wie von BeaTtheMeaT666 gepostet.
3. erstelle eine .htaccess datei im /verzeichnis/deiner/wahl/ mit:

vi /verzeichnis/deiner/wahl/.htaccess
AuthUserFile /oberhalb/von/htdocs/.htpasswd
AuthType Basic
AuthName Name-deiner-wahl
require valid-user

chmod 0644 /verzeichnis/deiner/wahl/.htaccess
4. erstelle eine .htpasswd datei mit:

htpasswd -c /oberhalb/von/htdocs/.htpasswd user
zweimal passwort eingeben
5. alles als root auf der console

greetz rabenkind :))

ps das geht auch ausserhalb von apache mit allen anderen verzeichnissen auf deinem rechner, dann muss nur in der profile der zugriff auf .ht genauso wie in der httpd.conf geregelt werden.
pps so wird es was mit dem sicheren access (aber nur mit ssl, sonst passwortübertragung im klartext) :)

Harry
18.11.02, 16:37
Original geschrieben von rabenkind
1. die .htpasswd und .htaccess gehören in das verzeichnis das du einschränken willst.
...
4. erstelle eine .htpasswd datei mit:

htpasswd -c /verzeichnis/deiner/wahl/.htpasswd user
zweimal passwort eingeben
Das ist nicht Dein Ernst oder?
Die .htaccess kann man in das selbe Verzeichnis legen wie die .htpasswd. Aus Sicherheitsgründen sollte die .htaccess jedoch außerhalb des DocumentRoots vom Apache liegen.
Ansonsten kann man die .htaccess über den Webbrowser direkt mir runterladen und die verschlüsselten Paßwörter der anderen User nach und nach brechen. Bei der hier eingesetzten Paßwortverschlüsselung mit DES (56bit Schlüssel) ist der Aufwand dazu sehr begrenzt.

Nachtrag:
Unter der Voraussetzung, dass in der httpd.conf ein Eintrag wie beispielsweise

<Files ~ "^\.ht">
Order allow,deny
Deny from all
</Files>

eingetragen ist (das ist ja in Bea's Beispiel der Fall), kann man auch die .htaccess innerhalb des DocumentRoots platzieren. Insofern ziehe ich meinen Einwand zurück und stimme Rabenkind in der letzten Aussage zu :D

@Rabenkind: Danke für den Hint ;)

Harry

rabenkind
18.11.02, 19:50
hi to all

@Harry bitte gerne

nur jetzt habe ich natürlich auch deinen einwand mal ausprobiert .htaccess in das verzeichnis oberhalb des htdocs zu stellen und argh kein schutz mehr, kommt auch nicht wenn ich es in cgi-bin stelle.
wohin damit ???

greetz rabenkind :))

@Harry
ps vogelspinnen sind "nette" zeitgenossen magst du die?

Harry
18.11.02, 20:11
Auweh ... ich sollte mich mal ausschlafen.

Da hab ich glatt auch noch die .htaccess mit der .htpasswd verwechselt. :(
Die .htaccess muß in dem zu schützenden Verzeichnis liegen; die .htpasswd kann beliebig im Dateisystem rumgeschubst werden.

@rabenkind: Also - wie schon geschrieben - die Terrarien find' ich schön. Vor den Acht-Beinern hab ich sicher Respekt. "Mögen" oder "nicht mögen" wäre da der falsche Ausdruck :D

Harry

mamue
18.11.02, 20:35
Ich habe eine ähnliche Frage im "server" subforum gestellt, ohne dass ich diesen thread vorher gelesen hätte, Asche auf mein Haupt.
Ich hab's jetzt so gemacht, wie beschrieben, allerdings ist der Server ein virtual-host:
<VirtualHost 172.18.0.2>
ServerName i-net.bbs1-emden.schule
DocumentRoot /usr/local/httpd/i-net
<Directory />
order allow,deny
AllowOverride AuthConfig
deny from all
#AccessFileName .htaccess
</Directory>
</VirtualHost>

So wie zwischen <Directory /> .. </Directory> beschrieben, darf ich gar nicht mehr.
nehme ich order allow, deny und deny from all raus, darf ich ohne passwortabfrage rein.

Was mache ich denn blos falsch?

Danke,
mamue

mamue
18.11.02, 20:46
Aaaarrrrgh!
Vielleicht einfach mal alle browserfenster schliessen, oder neuen user anlegen und den in der .htaccess anfordern!

2 Stunden zum Teufel und das ganz ohne windows...

mamue