Llevo unos días intentandolo, probando y probando pero no consigo que al acceder a la URL concreta me pida los accesos.
He creado un htacces y .htpasswd pero no hay manera, no va.
Alguna idea o ayuda más clara para poder hacerlo?
Gracias.
Asegurate que tengas la directiva AllowOverride puesta correctamente dentro de tu vhost. ¿Que servidor web estás usando? ¿Usas algun paquete de servidores tipo Xampp?
Tambien puedes checkear si dentro del ftp del servidor tienes el archivo error.log para ver que error esta ocurriendo.
A mi me decía que la opcion FollowSymLinks no estaba puesta. Tuve que agregar "Options +FollowSymLinks"
Recuerda tambien poner fullpath al archivo .htpasswd
Lo puedes conseguir con php usando:
<?php
$dir = dirname(__FILE__);
echo "<p>Full path to this dir: " . $dir . "</p>";
echo "<p>Full path to a .htpasswd file in this dir: " . $dir . "/.htpasswd" . "</p>";
?>
Mod: Usar etiquetas GeSHi, no quotes.
La verdad es que en este asunto estoy bastante justito. Esto eh visto en un video que se puede ver y según veo en más de un tuto aparentemente parece sencillo pero claro, no se desenvolverme en el tema. Creía que era poner los dos archivos y modificar algún dato puntual.
Cita de: Pitufete en 20 Noviembre 2014, 17:23 PM
La verdad es que en este asunto estoy bastante justito. Esto eh visto en un video que se puede ver y según veo en más de un tuto aparentemente parece sencillo pero claro, no se desenvolverme en el tema. Creía que era poner los dos archivos y modificar algún dato puntual.
¿No sabes ni lo que tienes instalado?
Cita de: MinusFour en 20 Noviembre 2014, 17:26 PM
¿No sabes ni lo que tienes instalado?
Pues la verdad es que en tema que me esta llevando mucho tiempo y dedicación (me gusta y me interesa ir aprendiendo) ya que es una web que me la compré online y la estoy mejorando y personalizando poco a poco por eso no se muchas cosas a pesar de mirar vídeos y tutoriales.
Como puedo saber los datos que me pedís?
Gracias por vuestra paciencia.
Cita de: Pitufete en 24 Noviembre 2014, 07:42 AM
Pues la verdad es que en tema que me esta llevando mucho tiempo y dedicación (me gusta y me interesa ir aprendiendo) ya que es una web que me la compré online y la estoy mejorando y personalizando poco a poco por eso no se muchas cosas a pesar de mirar vídeos y tutoriales.
Como puedo saber los datos que me pedís?
Gracias por vuestra paciencia.
Ok, entonces... ¿Has pagado por un hosting? ¿Te compraste la web ya instalada? Primero, a investigar por lo que has pagado, donde tienes alojado tu web y bajo que software está corriendo? Empieza por preguntarle al que te vendio la web.
Y tambien pon aquí tu .htaccess y tu .htpasswd.
Cita de: MinusFour en 24 Noviembre 2014, 16:59 PM
Ok, entonces... ¿Has pagado por un hosting? ¿Te compraste la web ya instalada? Primero, a investigar por lo que has pagado, donde tienes alojado tu web y bajo que software está corriendo? Empieza por preguntarle al que te vendio la web.
Y tambien pon aquí tu .htaccess y tu .htpasswd.
La web la compre en GraphicRiverc creo recordar porque mire varias del mismo tipo y entre unas y otras...
El hosting me lo ha conseguido un amigo que por su empresa tiene contratados varios servicios y me ha incluido mi web ahí, sólo he pagado el dominio y él me ha alojado la web en su servicio.
Creó recordar que me dijo que era Linux en servidor.
El htaccess y .htpasswd. lo pongo mañana que ahora ya no estoy con el ordenador.
Gracias por la ayuda.
Os dejo los archivos:
.HTACCESS
AuthName "Restricted Area"
AuthType Basic
AuthUserFile /miweb.com/carpertaoculta/tema1.htpasswd
AuthGroupFile /dev/null
require valid-user
Lo he subido dentro de "carpetaoculta". De forma que se queda el archivo .htaccess junto con la carpeta "tema1" y mas que después también pondré contraseña.
.HTPASSWD
prueba:HmGYLDu4iTHPE
Contenido cifrado. EL acceso seria "prueba:123"
Este archivo lo he subido a la raíz de mi host, justo al grueso de TODA la web. Asi decían algunos manuales que aconsejan guardarlo para que no este tan fácil su posible acceso.
Mod: Usar etiquetas GeSHi, no quote.
Cita de: Pitufete en 27 Noviembre 2014, 07:48 AM
Os dejo los archivos:
.HTACCESSLo he subido dentro de "carpetaoculta". De forma que se queda el archivo .htaccess junto con la carpeta "tema1" y mas que después también pondré contraseña.
.HTPASSWDContenido cifrado. EL acceso seria "prueba:123"
Este archivo lo he subido a la raíz de mi host, justo al grueso de TODA la web. Asi decían algunos manuales que aconsejan guardarlo para que no este tan fácil su posible acceso.
Te falto un slash.
AuthUserFile /miweb.com/carpertaoculta/tema1.htpasswd
Debería ser:
AuthUserFile /miweb.com/carpertaoculta/tema1/.htpasswd
Como te dijo Enko, ten mucho cuidado con la ruta. Si esto no funciona pon una ruta relativa. Por ejemplo si tu .htaccess esta en /miweb.com,
AuthUserFile carpetaoculta/tema1/.htpasswd
Lo pruebo en cuanto pueda y os cuento. Gracias.
Mhh... "tema1.htpasswd"
Acordate que el archivo tiene que llamarse ".htpasswd". O tienes mal la ruta como te dijo MinusFour o bien el nombre del archivo es incorrecto. NO vas a poder crear ".htpasswd" en windows, asi que con algun FTB browser tendras que renombrarlo por ".htpasswd"
Saludos.
Revisaré ese dato del nombre y el slash.
Lo de crear el archivo....yo uso Mac, complicado?
Ni idea, tampoco importa mucho. Trata de crear ".htpasswd"
Es decir, es un archivo sin nombre, solo extención. Si no te deja no importa. Puedes tenerlo como un "cualquier_nombre.txt" pero una vez subido al servidor tendrás que cambiar el nombre. (Filezilla te deja)
Saludos.
Editado: eh... xD, me olvide que esas corriendo esto localmente. Me imagino que vas a poder :)
Si es Mac con windows, con la consola lo puedes crear. O puedes bajar uno y modificarlo. Es el tonot Windows Explorer que no te deja crear archivos sin nombre.
No soy capaz de hacerlo, no consigo acceder con el pass.
Os explico lo que he probado nuevamente:
He creado el archivo .htaccess así:
AuthName "Restricted Area"
AuthType Basic
AuthUserFile /miweb.com/privado/nombre1/.htpasswd
AuthGroupFile /dev/null
require valid-user
y lo he metido en la raíz de mi web, junto con el índex y demás.
Después he ido al .htpasswd y he creado el acceso desde esta web que cifra http://www.e2.u-net.com/htaccess/make.htm) (http://www.e2.u-net.com/htaccess/make.htm)) y con lo que me ha dado lo he pegado así:
Me caja @: ~ $ htpasswd -c /miweb.com/privado/nombre1/.passwd 'nombre de usuario'
Nueva contraseña: 1234
Vuelva a escribir la nueva contraseña:1234
Me caja @: ~ $ cat /miweb.com/.htpasswd
prueba:Dmrb3P4VUgfdw
Este archivo .htpasswd lo he metido dentro de /miweb.com/privado/nombre1
Al entrar en /miweb.com/privado/nombre1 me saca la ventana para poner el Nombre y Pass pero nada, le pongo "prueba - 1234" y no entra de ninguna manera. También he probado a poner el AuthUserFile AuthUserFile carpetaoculta/nombre1/.htpasswd pero tampoco.
Alguna alternativa?? Ya no se que hacer me desespero :(
Por cierto, en mi hosting tengo que meter la web en el siguiente directorio: /httpdocs/aquimetotodo
Mod: Usar etiquetas GeSHi no quote
Cita de: Pitufete en 1 Diciembre 2014, 12:23 PM
No soy capaz de hacerlo, no consigo acceder con el pass.
Os explico lo que he probado nuevamente:
He creado el archivo .htaccess así:y lo he metido en la raíz de mi web, junto con el índex y demás.
Después he ido al .htpasswd y he creado el acceso desde esta web que cifra http://www.e2.u-net.com/htaccess/make.htm) (http://www.e2.u-net.com/htaccess/make.htm)) y con lo que me ha dado lo he pegado así:Este archivo .htpasswd lo he metido dentro de /miweb.com/privado/nombre1
Al entrar en /miweb.com/privado/nombre1 me saca la ventana para poner el Nombre y Pass pero nada, le pongo "prueba - 1234" y no entra de ninguna manera. También he probado a poner el AuthUserFile AuthUserFile carpetaoculta/nombre1/.htpasswd pero tampoco.
Alguna alternativa?? Ya no se que hacer me desespero :(
Por cierto, en mi hosting tengo que meter la web en el siguiente directorio: /httpdocs/aquimetotodo
Ok, me doy cuenta de algo:
File-path is the path to the user file. If it is not absolute, it is treated as relative to the ServerRoot.
Entonces si quieres usar una ruta relativa la tienes que usar en relacion a ServerRoot. Yo creia que lo hacia desde Document Root pero ya veo que no. Necesitas sacar el path absoluto de tu .htpasswd si lo vas a meter ahi. Veo que tienes una shell (es la de tu hosting?) solo navega hacia el directorio que contiene el archivo .htpasswd y escribes:
realpath .htpasswd
Esta es la ruta que tuve que poner yo
AuthUserFile /users/webs/mi_pagina_web.com/htdocs/mi_directorio/.htpasswd
Es decir, la ruta es absoluta. Segun tu servidor la ruta va a cambiar.
Para sacar esa ruta puse un archivo php dentro de mi_directorio con este codigo.
<?php
$dir = dirname(__FILE__);
echo "<p>Full path to a .htpasswd file in this dir: " . $dir . "/.htpasswd" . "</p>";
?>
Podes llamarlo como quieras, ejemplo "test.php", una vez subido al servidor lo abres desde el navegador y te va a dar la ruta completa que necesitas.
Mod: Usar etiquetas GeSHi no quote
Uffff ufffff muy bien explicado, muy buena vuestra ayuda pero me pierdo totalmente ya que no controlo este tema. Me pondré más detenidamente a ver que consigo pero hay cosas que no entiendo ni una pizca.
Haz un archivo de texto con la extensión .php, ejemplo "mi_dir.php"
Coloca este texto adentro
<?php
$dir = dirname(__FILE__);
echo "<p>Full path to a .htpasswd file in this dir: " . $dir . "/.htpasswd" . "</p>";
?>
Haz el directorio "mi_carpeta_que_quiero_poner_contraseña" sin el .httacces y httpswd para que puedes acceder alli.
Sube el arhvivo que creaste "mi_dir.php" a la carpeta esa
Una vez subido, abri la pagina www.miweb.com/mi_carpeta_que_quiero_poner_contraseña/mi_dir.php
En el navegador te va a salir el mensaje:
Full path to a .htpasswd file in this dir:..........................................
Copia crea el httaccess con ese directorio.
Hecho :)
Saludos.
Mod: Usar etiquetas GeSHi no quote.
_Enko muy amable y muy agradecido por tu ayuda. Mañana lo pruebo y os cuento.
Esto se me esta resistiendo demasiado ya :huh: :huh: :huy:
Esto es lo que he hecho _Enko:
1. He creado un archivo de texto y le he puesto el código que me has dejado
<?php
$dir = dirname(__FILE__);
echo "<p>Full path to a .htpasswd file in this dir: " . $dir . "/.htpasswd" . "</p>";
?>
2. Lo he renombrado a mi_dir.php
3. Lo he metido dentro de /miweb.com/privado/
4. He borrado los dos archivos .httacces y httpswd, los he eliminado de mi servidor.
5. Accedo a miweb.com/privado/mi_dir.php y me sale la pagina en blanco
He probado a poner el php dentro de /miweb.com/privado/nombre1 para probar y al entrar en /miweb.com/privado/nombre1 sale igual que antes.
No se si me falla algo o es que soy demasiado torpe pero...
Muchas gracias
Edito 1: Esto que comento me sucede con Safari. He probado a entrar con Chrome y sale este aviso:
Error del servidor
El sitio web ha detectado un error al recuperar la http://miweb.com/privado/mi_dir.php http://miweb.com/privado/mi_dir.php. Es posible que esta esté inactiva debido a tareas de mantenimiento o que se haya configurado de forma incorrecta.
A continuación se detallan algunas sugerencias:
Vuelve a cargar esta página más tarde.
Error de HTTP 500 (Internal Server Error): Se ha detectado una condición inesperada cuando el servidor intentaba atender la solicitud.
Por cierto, miweb.com corresponde al nombre real de mi pagina que lo sustituyo para evitar publicidad aquí.
EDITO 2
Acabo de rehacer todo y ahora si que me sale en Safari la ruta que necesitaba. Me pone esto:
Full path to a .htpasswd file in this dir: /var/www/vhosts/miweb.com/httpdocs/privado/.htpasswd
He creado el archivo .htaccess así:
AuthName "Restricted Area"
AuthType Basic
AuthUserFile /var/www/vhosts/miweb.com/httpdocs/privado/.htpasswd
AuthGroupFile /dev/null
require valid-user
Ahora donde meto el archivo .htaccess ??
Mod: Usar etiquetas GeSHi no quote. No hacer doble Post.
PROGRESO!!!!!!!! ;-) ;-) ;-)
Hahaha.
Ahora el archivo htaccess y el htpasswd Lo metes dentro de la carpeta "privado"? que es la carpeta que quieres poner con contraseña.
Y no estoy seguro, pero creo que tu httaccess debe ser asi:
RewriteEngine on
AuthType Basic
AuthName "Password Protected Area"
AuthUserFile /var/www/vhosts/miweb.com/httpdocs/privado/.htpasswd
Require valid-user
Digo así, proque te faltaba el RewriteEngine.
Saludos.
El httaccess sustituyo lo que tiene ahora por esto?:
RewriteEngine on
AuthType Basic
AuthName "Password Protected Area"
AuthUserFile /var/www/vhosts/miweb.com/httpdocs/privado/.htpasswd
Require valid-user
Mod: Usar etiquetas GeSHi no quote.
Prueba el tuyo, si no funciona añade el REwriteEngine on.
Salduos.
Cita de: _Enko en 2 Diciembre 2014, 16:07 PM
Prueba el tuyo, si no funciona añade el REwriteEngine on.
Salduos.
Lo pruebo y te cuento.
Gracias compi por tu ayuda.
He tenido que poner "RewriteEngine on" porque sino no hacia nada.
Entro en miwe.com/privado y me pide "Usuario-Pass". Le pongo prueba-1234 (lo que había puesto al cifrar y me da este error:
"El nombre de usuario o la contraseña introducidos para esta área de dcpfotografia.com:80 son incorrectos. Asegúrese de que están escritos correctamente e inténtelo de nuevo."
Puede que sea algún problema al cifrar el Pass??
Actualmente tengo los archivos dentro del directorio miweb/privado y así los archivos:
RewriteEngine on
AuthType Basic
AuthName "Password Protected Area"
AuthUserFile /var/www/vhosts/miweb.com/httpdocs/privado/.htpasswd
Require valid-user
mr:dTPsDuxC0DJo.
Ahora tras haber probado varias veces a poner las claves, ya no me deja acceder mas a la web ni con Refresh ni poniendo la url de nuevo. Sale este aviso:
"Forbidden. You do not have permission to access this document."
Mod: Usar etiquetas GeSHi no quote. No hacer doble post.
Prueba generar otro .htppaswd
No estoy seguro pero en el tuyo veo:
mr:dTPsDuxC0DJo.
Y no debería ser:
prueba:dTPsDuxC0DJo.
Es decir, pareciera que el nombre de usuario es "mr"
Cita de: _Enko en 3 Diciembre 2014, 14:49 PM
Prueba generar otro .htppaswd
No estoy seguro pero en el tuyo veo:
mr:dTPsDuxC0DJo.
Y no debería ser:
prueba:dTPsDuxC0DJo.
Es decir, pareciera que el nombre de usuario es "mr"
Si sí, ha sido un despiste mío al ponerlo aquí. El acceso real en esta ocasión está creado para acceder como "mr:1234".
Ya he probado a crear más de un .htppaswd antes de poner el anterior post pero nada, no hay manera.
Este archivo debe contener algo más aparte de "Usuario:dTPsDuxC0DJo" ?
Gracias.
Tienes acceso a la linea de comandos del hosting? Puedes correr:
uname -a
Cita de: MinusFour en 3 Diciembre 2014, 21:32 PM
Tienes acceso a la linea de comandos del hosting? Puedes correr:
uname -a
Que yo sepa no. De todas formas, como podría saber sí tengo acceso? Gracias.
Hola, provisoriamente, lo que se me ocurre es que puedes crear una carpeta con un nombre raro y no pasarle a nadie la URL. De ese modo no sabrán de su existencia
No la mejor opcion y no se hasta que punto es válida, pero me da que funcionaria para tener algo "privado"
Un nombre como por ejemplo "e8bd9ef575d*4f1e10e8%8+8770b4+a9"
Saludos
Cita de: Pitufete en 4 Diciembre 2014, 07:53 AM
Que yo sepa no. De todas formas, como podría saber sí tengo acceso? Gracias.
No es muy usual en instancias manejadas por algun tipo de panel, pero a veces te encuentras con un menu de ssh access. A estas alturas yo le pediria a quien te haya configurado el hosting que te de mas informacion acerca del servidor en el que estas. Lo que necesitas revisar son los error logs de apache.
¿Como estas subiendo los archivos a tu hosting, por FTP? Asegurate que el archivo .htpasswd tenga permisos suficientes, prueba con 444.
Cita de: _Enko en 4 Diciembre 2014, 15:07 PM
Hola, provisoriamente, lo que se me ocurre es que puedes crear una carpeta con un nombre raro y no pasarle a nadie la URL. De ese modo no sabrán de su existencia
No la mejor opcion y no se hasta que punto es válida, pero me da que funcionaria para tener algo "privado"
Un nombre como por ejemplo "e8bd9ef575d*4f1e10e8%8+8770b4+a9"
Saludos
Esa opción la había pensado dentro de mi desconocimiento y como medida más sencilla pero dentro irían imágenes que evidentemente también debería renombrar todas porque sino al final también las pillaría algún buscador. Son del tipo "_IMG_12345.jpg".
La parte menos atractiva la veo al dar ésa URL a los demás, lo veo poco acertado para ofrecer a terceras personas jejejejeeje.
Cita de: MinusFour en 4 Diciembre 2014, 16:06 PM
No es muy usual en instancias manejadas por algun tipo de panel, pero a veces te encuentras con un menu de ssh access. A estas alturas yo le pediria a quien te haya configurado el hosting que te de mas informacion acerca del servidor en el que estas. Lo que necesitas revisar son los error logs de apache.
¿Como estas subiendo los archivos a tu hosting, por FTP? Asegurate que el archivo .htpasswd tenga permisos suficientes, prueba con 444.
El servidos trabaja bajo Linux me dijo. Si, los archivos los subo con CyberDuck por FTP, usaba FileZilla pero así por así me dio un arroz y no hay manera de que conecte con el servidor.
Mirare a ver eso de los permisos.
Gracias.
Citardebería renombrar todas porque sino al final también las pillaría algún buscador
Si no existe link a esa carpeta en ningun lado en la web, no sabrá de su existencia.
Los buscadores hacen crawl en las web con los links que estan disponibles en el sitio. Si no hay links alli, no debería haber problemas. Si sería importante que no se puede ver INDEX OF de esa carpeta. Simplemente creando un index.html alli vacio haría el truco.
Cita de: _Enko en 4 Diciembre 2014, 19:58 PM
Si no existe link a esa carpeta en ningun lado en la web, no sabrá de su existencia.
Los buscadores hacen crawl en las web con los links que estan disponibles en el sitio. Si no hay links alli, no debería haber problemas. Si sería importante que no se puede ver INDEX OF de esa carpeta. Simplemente creando un index.html alli vacio haría el truco.
Me dices que creando una ruta tal que "miweb/privado/a1_?tP-Ck/" por ejemplo y dentro las imágenes _IMG_12345.jpg, _IMG_12592.jpg, _IMG_12662.jpg,_IMG_12703.jpg ya no aparecerá si por casualidad alguien pone en Google "12345.jpg"?? Lo otro del index.html, es simplemente poner un archivo con ese nombre pero sin nada de contenido? Asi ya podríamos asegurar que no se accede a esas imágenes?
Pero lo mas adecuado seria llegar a poner el pass como estaba mirando pro no se, no entiendo que puede estar fallando si desde vuestro punto de vista esta todo claro, yo no puedo pasar de ahí sin ayuda claro.
Es que lo raro es que si accedo a mi carpeta privada y le pongo los datos mal, me los vuelve a pedir mas veces, sin embargo si pongo los datos que he creado de acceso, me saca este aviso:
"Forbidden. You do not have permission to access this document." Y se queda la ventana en blanco solo con el mensaje ese.
Gracias
Yo sigo insistiendo que necesitas revisar los logs de apache. Dile a tu proveedor que te muestre como sacarlos.
Cita de: MinusFour en 5 Diciembre 2014, 17:46 PM
Yo sigo insistiendo que necesitas revisar los logs de apache. Dile a tu proveedor que te muestre como sacarlos.
Bueno voy a ver sí consigo esos datos y os cuento. No se sí me informan en finde y el lunes es fiesta pero en cuanto lo tenga os cuento.
Gracias
Ya los he localizado y ahora....
(http://i.imgur.com/yCiiTtD.png)
Pon aqui el error_log.
Pongo alguna parte en concreto?? Quizá los últimos registros o hago antes alguna prueba mas detallada que de datos precisos?? Es que el archivo error_log es enorme, tiene infinidad de registros.
No es necesario y si tu error log es enorme... es un buen indicio para que le des una revisada y corrijas los bugs que tienes. Intenta acceder a la carpeta que intentas proteger para provocar el error y luego copia alrededor de las ultimas 200 lineas.
Deberia salir el error en esas 200 lineas, a menos que ese error_log que muestres sea un backup y no donde apache esta escribiendo actualmente. Si es un backup, pega el log entero.
[Mon Dec 15 07:51:41 2014] [error] [client 1xx.xx.xxx.xxx] File does not exist: /var/www/vhosts/miweb.com/httpdocs/robots.txt
[Mon Dec 15 15:52:22 2014] [error] [client xx.19.2xx.xx] Directory index forbidden by Options directive: /var/www/vhosts/miweb.com/httpdocs/privado/prueba/
[Mon Dec 15 15:52:22 2014] [error] [client xx.19.2xx.xx] File does not exist: /var/www/vhosts/miweb.com/httpdocs/favicon.ico, referer: http://miweb.com/privado/prueba/
[Mon Dec 15 15:57:49 2014] [error] [client xx.19.2xx.xx] Directory index forbidden by Options directive: /var/www/vhosts/miweb.com/httpdocs/privado/prueba/
[Mon Dec 15 15:57:54 2014] [error] [client xx.19.2xx.xx] Directory index forbidden by Options directive: /var/www/vhosts/miweb.com/httpdocs/privado/prueba/
[Mon Dec 15 15:58:03 2014] [error] [client xx.19.2xx.xx] File does not exist: /var/www/vhosts/miweb.com/httpdocs/pass.html, referer: http://miweb.com/
Parece ser que no hay un archivo indice en esa carpeta e Indexes esta desactivado. ¿Tienes algun index.php, index.html o index.htm o similar? ¿Has probado acceder directamente al archivo en la carpeta?
Si quieres tener un listado necesitas tener +Indexes:
En tu .htaccess:
Options +Indexes
Solo si tu configuracion de Apache permite eso (es probable que si).
Tengo el index.html, index-1.html, index-2.html, index-3.html, index-4.html
Acabo de probar accediendo al archivo directamente "http://miweb.com/privado/prueba/1.jpg" y lo visualizo perfectamente sin pass ni nada, abre directo.
Acabo de probar a poner "Options +Indexes" en el inicio del archivo ".htaccess" y al entrar en la web abre directamente un directorio tipo explorador sin pass ni nada y me muestra la foto que tengo dentro de prueba
Cita de: Pitufete en 15 Diciembre 2014, 17:02 PM
Tengo el index.html, index-1.html, index-2.html, index-3.html, index-4.html
Acabo de probar accediendo al archivo directamente "http://miweb.com/privado/prueba/1.jpg" y lo visualizo perfectamente sin pass ni nada, abre directo.
Acabo de probar a poner "Options +Indexes" en el inicio del archivo ".htaccess" y al entrar en la web abre directamente un directorio tipo explorador sin pass ni nada y me muestra la foto que tengo dentro de prueba
Probablemente tu navegador haya hecho cache de las credenciales y por eso puedas acceder a todo sin pass/usuario. ¿Que navegador estas usando?
Uso Safari
Cita de: Pitufete en 15 Diciembre 2014, 17:34 PM
Uso Safari
Prueba desde una ventana privada de Safari (es el equivalente de incognito de chrome y no deberia hacer cache de credenciales).
http://www.imore.com/how-use-private-browsing-safari-os-x-yosemite
En Safari no puedo entrar como me dices porque me pide la ultima versión de OsX y no la tengo actualizada. He puesto Chrome y he entrado con "Ventana de Incógnito". La primera vez que he puesto http://miweb.com/privado/prueba/ me ha pedido el pass, lo he puesto y se ha abierto un estilo a explorador simplemente con la fot que tengo dentro de ejemplo. He Probado a entrar solo a http://miweb.com/privado/ y me abre igualmente en modo explorador la ventana, mostrándome todo lo que contiene dentro (1.jpg, mi_dir.php y carpeta la prueba). He vuelto a entrar a http://miweb.com/privado/prueba/ para probar a ver que pasa y ya no pide pass, se abre directamente en modo explotador como antes.
Teoricamente cada vez que entras en ventana incognito despues de cerrar el navegador debería de pedirte el pass nuevamente.
Me parece que esta funcionando pero no estoy seguro.
Si, he cerrado Chrome y al volver a entra me pide nuevamente el pass. Lo que no esta claro es que entra sin ningún problema a http://miweb.com/privado/ en "modo explorador" y no pide pass ni nada, entra libremente siempre y ahí muestra el/los jpg, mi_dir.php y carpeta la prueba. Eso no debería mostrarlo nunca no??
Cita de: Pitufete en 16 Diciembre 2014, 17:05 PM
Si, he cerrado Chrome y al volver a entra me pide nuevamente el pass. Lo que no esta claro es que entra sin ningún problema a http://miweb.com/privado/ en "modo explorador" y no pide pass ni nada, entra libremente siempre y ahí muestra el/los jpg, mi_dir.php y carpeta la prueba. Eso no debería mostrarlo nunca no??
Si te autentificaste una vez deberias tener acceso a las carpetas que estan protegidas bajo el realm especificado en AuthName. Entonces, si tienes el .htaccess en privado y lanzas el challenge desde privado/prueba y el login es correcto, deberías poder acceder tanto a privado como prueba hasta que tus credenciales expiren.
Ese modo explorador que tu dices es la opcion de +Indexes. Si tuvieras un archivo indice propio no deberias salir el listado de directorio. Si por alguna razon no esta tomando los archivos indices creo que puedes forzar apache a usar:
DirectoryIndex index.php index.html index.htm
Ufff por una parte voy viendo claras algunas cosas pero por otras se me esta haciendo cada vez más complejo el tema. Creía que sería más sencillo tener un directorio protegido pero veo que no es tan fácil....
Cita de: Pitufete en 17 Diciembre 2014, 09:33 AM
Ufff por una parte voy viendo claras algunas cosas pero por otras se me esta haciendo cada vez más complejo el tema. Creía que sería más sencillo tener un directorio protegido pero veo que no es tan fácil....
A ver, primero antes que nada quiero aclarar el comportamiento. Si tu entras al directorio, privado o privado/prueba, ¿Te pide contraseña o entra directamente?
Es normal poder acceder tanto a privado o privado/prueba una vez que te hayas autentificado. Te autentificas a una zona (o realm). Tu zona es el nombre que hayas puesto en AuthName dentro del .htaccess. Si copias ese mismo .htaccess a otro lado una vez autentificado a la zona (que simplemente es entrar a las carpetas protegidas y poner la contraseña bien) debes poder acceder a esa carpeta aunque te hayas logueado desde otro directorio (porque es la misma zona).
podrias probar desde otro navegador y si te pide contraseña todo esta bien- simplemente guarda tu contraseña una ves usada xD
He probado desde el iPad con Safari a miweb.com/privado/prueba y entra perfectamente pidiendo pass sin problema. Si lo pong mal no accede. Lo que no me queda claro es que me deja acceder a miweb.com/privado/ y por tanto se ve el archivo mi_dir.php. Sería conveniente modelo a otro directorio para evitar que se pueda acceder a el? O no tiene importancia que se vea si no hay "peligro"?
Gracias por vuestra ayuda.
Cita de: Pitufete en 17 Diciembre 2014, 23:21 PM
He probado desde el iPad con Safari a miweb.com/privado/prueba y entra perfectamente pidiendo pass sin problema. Si lo pong mal no accede. Lo que no me queda claro es que me deja acceder a miweb.com/privado/ y por tanto se ve el archivo mi_dir.php. Sería conveniente modelo a otro directorio para evitar que se pueda acceder a el? O no tiene importancia que se vea si no hay "peligro"?
Gracias por vuestra ayuda.
¿Donde tienes el .htaccess? ¿En miweb.com/privado o miweb.com/privado/prueba? Si tienes el .htaccess en miweb.com/privado deberia pedirte autentificacion para los dos lugares. Recuerda que si te logueas para tu directorio de prueba tienes permiso tambien para privado, porque caen bajo la misma zona.
Si no tienes el .htaccess en privado es normal que puedas entrar a esa carpeta porque no esta protegida. Si quieres ocultar la carpeta puedes usar:
IndexIgnore "prueba"
(En la carpeta privado)
El .htaccess lo tengo dentro de la carpeta Privado. También tengo dentro de esa misma carpeta el resto... .htpasswd, carpeta prueba y mi:did.php
Entiendo que debería poner el .htaccess dentro de la carpeta prueba para que solo se acceda únicamente a esa carpeta y no se pueda ver el resto de contenido del directorio Privado?
Es que mi idea, una vez conseguido esto, seria crear dentro de Privado mas carpetas, prueba1, prueba2, prueba3.... y desde el . htpasswd darle accesos independientes a cada carpeta y que nadie pueda acceder al resto. Creo que así se haría según leí en un manual para ese tema.
Gracias
¿Entonces lo que quieres hacer es proteger tu .htpasswd? Lo mejor seria que no lo pusieras en ninguna carpeta de tu directorio web y lo pusieras en otra parte del sistema, así no corres el riesgo que alguien pueda acceder al .htpasswd desde tu servidor web. Claro que si encuentran otra manera dentro del sistema pueden obtener el archivo (y de ahi no te salva tener otro .htpasswd).
De todas formas la mayoria de las configuraciones de apache bloquean el acceso a archivos .ht, así que no te preocupes por alguien que intente descargarlo:
<FilesMatch "^\.ht">
Require all denied
</FilesMatch>
Claro que sigue habiendo un riesgo, porque estas exponiendo el archivo através del servicio...
Hombre, sería interesante proteger tanto el .htpasswd como las carpetas que no debe acceder quién no tiene autorización.
En cuanto al código que me has dejado, para que es? No lo entiendo y donde lo pongo?
Gracias por tu paciencia.
Cita de: Pitufete en 18 Diciembre 2014, 18:03 PM
Hombre, sería interesante proteger tanto el .htpasswd como las carpetas que no debe acceder quién no tiene autorización.
En cuanto al código que me has dejado, para que es? No lo entiendo y donde lo pongo?
Gracias por tu paciencia.
Entonces ni idea de lo que quieres hacer. ¿Diferentes logins para cada carpeta dentro de privado? Puedes hacer un archivo .htaccess dentro de cada carpeta (por ejem. prueba) y le pones:
Require user usuario1
Y en la siguiente carpeta otro .htaccess:
Require user usuario2
Tanto usuario1 y usuario2 pueden acceder a privado, pero cuando intentes acceder a alguna carpeta en especifico te pedira el login del usuario que hayas puesto en el .htaccess.
Si no quieres que usuario1 y usuario2 puedan acceder a privado, dentro del .htaccess de privado cambia el
Require valid-user
por:
Require user usuarioquesolopuedeverprivado
Todos estos usuarios los tienes que agregar a tu .htpasswd. En cuanto al código que te he puesto anteriormente, era solo para demostrarte que no puedes acceder a los archivos .htpasswd de manera normal i.e.:
http://www.miweb.com/privado/.htpasswd
Tengas o no tengas permiso de ver esa carpeta.
Tambien puedes ocultar el archivo .htpasswd de mod_autoindex con:
IndexIgnore .htaccess
Si sí sí, has especificado claramente lo que busco y lo has comprendido correctamente. Con lo de no acceder nadie a lo que no deba, me freiría a que en general pues que no se acceda así sin más a ver el contenido privado, lo demás pues público como lo tengo.
En cuento a que busco, creo que lo has entendido pero lo detallo.
Quiero tener toda la web libre de acceso pero ciertos directorios con clave. Por ejemplo mi web.com/privado/prueba1, web.com/privado/prueba2, web.com/privado/prueba3.... Y que SOLO pueda acceder a prueba1 quien sepa el pass, a prueba2 igualmente quien sepa su pass y así con todas.
Gracias.
Pues ya sabes como hacer una carpeta privada.
Lo mas facil que veo es hacer esto:
Citar
httpweb/privado
-----privado1 (con su usuario)
-----privado2 (con su usuario2)
-----privado3(con su usuario3)
La carpeta "privado" no necesita tener httacces, total solo contendría adentro otras carpetas que si tienen clave. Tan solo desactivar el INDEX para que no muestre el contendido dentro de la carpeta "privado" pero no sus subcarpetas.
Entonces tus usuarios tendrían que acceder siempre a tuweb.com/privado/privadoX
Saludos.
A ver si lo pruebo todo en conjunto y os cuento.
Muchas Gracias nuevamente por vuestra ayuda.
A ver, os cuento lo que he hecho según entiendo lo que me queréis explicar:
1.- Para tener el .htpasswd separado del resto de archivos, lo he metido dentro del directorio "js" y he cambiado la ruta así:
AuthUserFile /var/www/vhosts/miweb.com/httpdocs/js/.htpasswd
2.- Para poner mas usuarios, he editado el archivo .htpasswd y he añadido mas, ha quedado así y he añadido lo de "Require all denied" ya que he entendido que debía ñponerse ahí:
<FilesMatch "^\.ht">
Require all denied
</FilesMatch>
mr:dTPsDuxC0DJo.
ab:$apr1$4jIY/CTo$wR2.K.0DkWA7jVJRSBzTA0
cd:$apr1$JTIaD0WI$BWxnPREfnaIhjZF.6lyn8.
ef:$apr1$eRWfqMER$iBaeIQ3VTfco.wy1n4TH5.
3.- Al acceder a mi web, voy a miweb.com/privado/ y me pide acceso. Si pongo por ejemplo ab-1234 entra perfectamente pero dentro del directorio PRIVADO y muestra todo lo que contiene dentro de "Privado". No necesito entras dentro de cada directorio por ejemplo, ab ó cd ó ef.... desde el propio miweb.com/privado ya accede a todos y eso no busco.
Mod: No usar etiquetas quote para codigo. No hacer doble post.
Hola, vengo a molestar. Si se fijan, casi todos los posts en este tema, los he tenido que modificar. Por favor seguid las reglas.
Los códigos van entre etiquetas CODE, NO entre QUOTE. Los doble posts estan PROHIBIDOS. Existe el botón modificar que también marca el tema como no leído para los participantes.
hay un post cuyo titulo lleva [Obligatorio], tiene chincheta y hay que leerlo.
[Obligatorio] Normas del subforo de Desarrollo Web
http://foro.elhacker.net/desarrollo_web/obligatorio_normas_del_subforo_de_desarrollo_web_16072014-t407889.0.html
Ademas, NO USEN el icono de resuelto si el tema no esta resuelto...
Saludos
Cita de: Pitufete en 19 Diciembre 2014, 18:10 PM
A ver si lo pruebo todo en conjunto y os cuento.
Muchas Gracias nuevamente por vuestra ayuda.
A ver, os cuento lo que he hecho según entiendo lo que me queréis explicar:
1.- Para tener el .htpasswd separado del resto de archivos, lo he metido dentro del directorio "js" y he cambiado la ruta así:
AuthUserFile /var/www/vhosts/miweb.com/httpdocs/js/.htpasswd
2.- Para poner mas usuarios, he editado el archivo .htpasswd y he añadido mas, ha quedado así y he añadido lo de "Require all denied" ya que he entendido que debía ñponerse ahí:
<FilesMatch "^\.ht">
Require all denied
</FilesMatch>
mr:dTPsDuxC0DJo.
ab:$apr1$4jIY/CTo$wR2.K.0DkWA7jVJRSBzTA0
cd:$apr1$JTIaD0WI$BWxnPREfnaIhjZF.6lyn8.
ef:$apr1$eRWfqMER$iBaeIQ3VTfco.wy1n4TH5.
3.- Al acceder a mi web, voy a miweb.com/privado/ y me pide acceso. Si pongo por ejemplo ab-1234 entra perfectamente pero dentro del directorio PRIVADO y muestra todo lo que contiene dentro de "Privado". No necesito entras dentro de cada directorio por ejemplo, ab ó cd ó ef.... desde el propio miweb.com/privado ya accede a todos y eso no busco.
Mod: No usar etiquetas quote para codigo. No hacer doble post.
1. No necesitas el filesmatch...
2. Como te he dicho, cada carpeta dentro de privado necesita su propio .htaccess si intentas logins diferentes por cada carpeta.
3. Si no quieres el listado de directorios en privado:
Option -Indexes
4. Es importante que detalles el problema con un español entendible. Signos de puntuacion (y mas que nada coherencia) son necesarios para poder entenderte.
Bueno pido disculpas por el doble postro, suelo ser usuario de otros foros y generalmente cuando pasan un cierto tiempo entre un post y el otro, si se permite realizar el postro así. Eso no quita para que las normas son las normas y hay que respetarlas.
En cuanto al tema QUOTE cuando cito algo tengo esa costumbre, la cambiaré.
Voy al tema del post....
1.- He quitado el filesmatch...
2.- He cambiando lo del "Option +Indexes" que tenía, por "Option -Indexes" pero solo el de Privado, el resto de .htaccess que he creado en cada carpeta Privado los he dejado con "Option +Indexes".
3.- He probado con Chrome como Incognito en miweb.com/privado/(cualquiercarpetaprivada) pide los accesos y si doy a "Parent Directory" no permite el acceso y da error. Perfecto.
4.- Sin embargo, si entro en cualquiera de los directorios privados con el acceso, después me deja entrar en los demás sin pedir pass.
El .htaccess de privado lo tengo creado así:
Options -Indexes
AuthType Basic
AuthName "Password Protected Area"
AuthUserFile /var/www/vhosts/miweb.com/httpdocs/js/.htpasswd
Require valid-user
El .htaccess de ab, cd, ef y mr los tengo asi:
Options +Indexes
AuthType Basic
AuthName "Password Protected Area"
AuthUserFile /var/www/vhosts/miweb/httpdocs/js/.htpasswd
Require valid-user
Os dejo un pantallazo de como lo tengo creado en el servidor
(http://i.imgur.com/nkZpwSX.png)
Cita de: Pitufete en 22 Diciembre 2014, 13:05 PM
Bueno pido disculpas por el doble postro, suelo ser usuario de otros foros y generalmente cuando pasan un cierto tiempo entre un post y el otro, si se permite realizar el postro así. Eso no quita para que las normas son las normas y hay que respetarlas.
En cuanto al tema QUOTE cuando cito algo tengo esa costumbre, la cambiaré.
Voy al tema del post....
1.- He quitado el filesmatch...
2.- He cambiando lo del "Option +Indexes" que tenía, por "Option -Indexes" pero solo el de Privado, el resto de .htaccess que he creado en cada carpeta Privado los he dejado con "Option +Indexes".
3.- He probado con Chrome como Incognito en miweb.com/privado/(cualquiercarpetaprivada) pide los accesos y si doy a "Parent Directory" no permite el acceso y da error. Perfecto.
4.- Sin embargo, si entro en cualquiera de los directorios privados con el acceso, después me deja entrar en los demás sin pedir pass.
El .htaccess de privado lo tengo creado así:
Options -Indexes
AuthType Basic
AuthName "Password Protected Area"
AuthUserFile /var/www/vhosts/miweb.com/httpdocs/js/.htpasswd
Require valid-user
El .htaccess de ab, cd, ef y mr los tengo asi:
Options +Indexes
AuthType Basic
AuthName "Password Protected Area"
AuthUserFile /var/www/vhosts/miweb/httpdocs/js/.htpasswd
Require valid-user
Os dejo un pantallazo de como lo tengo creado en el servidor
(http://i.imgur.com/nkZpwSX.png)
Vuelvete a leer mi respuesta, #57:
http://foro.elhacker.net/desarrollo_web/htacces_para_poner_pass_no_consigo_hacerlo-t424988.0.html;msg1984740#msg1984740 (http://foro.elhacker.net/desarrollo_web/htacces_para_poner_pass_no_consigo_hacerlo-t424988.0.html;msg1984740#msg1984740)
Cita de: MinusFour en 24 Diciembre 2014, 23:21 PMVuelvete a leer mi respuesta, #57:
http://foro.elhacker.net/desarrollo_web/htacces_para_poner_pass_no_consigo_hacerlo-t424988.0.html;msg1984740#msg1984740 (http://foro.elhacker.net/desarrollo_web/htacces_para_poner_pass_no_consigo_hacerlo-t424988.0.html;msg1984740#msg1984740)
Estos días estoy fuera, cuando vuelva a casa lo mito y os comento. Gracias.
Disculpar que no os pueda ir informando pero llevo unos días demasiado liado por el trabajo y casi no saco tiempo para ponerme con esto, en cuanto pueda ponerme de nuevo os informo de como lo llevo. Gracias
Mod: no hacer doble postEdito 10/02/2015: Hola, no penséis que me he olvidado del tema o que lo he dado por perdido, el tiempo invertido por vosotros en ayudarme desinteresadamente no puede ser menospreciado lo que pasa es que los cambios en el trabajo me están pasando factura y me dejan muy poco tiempo libre para dedicarlo a mi.
Ayer me senté un rato y tuve que releer todo porque ya no tenía claro por donde iba o como tenía que hacerlo, empecé a darle forma y esta vez si, lo llevo todo apuntado y espero dedicarle más tiempo.
Os seguiré informando...
Gracias por vuestra comprensión.