Problema de Logueo en servidor Lampp

BrutalNoize

Buenas, veréis hoy he ido a colgar en un servidor local una web hecha bajo linux mint 14. En mi equipo, en el que se ha desarrollado, no hay problemas de logueo ni nada, pero a la hora de instalarlo en el servidor se loguea, y en cuanto entras en la primera página te dice que tienes que estar registrado y borra la sessión, pidiendote datos de nuevo.

El usuario está en nobody:root y los permisos a 777 y ya me estoy volviendo loco con el tema, uqe podría ser?

Gracias de antemano!

Nucklear

¿Has instalado Apache como root y le has dado permisos 777 (A root) para abrir una web hecha con el framework web Linux Mint?

Entiendo...

Ahora los datos necesarios:

¿Donde tienes problemas para logear? ¿A tu web?
¿En que lenguaje tienes escrita la web?
¿Usas algún framework?

2 respuestas
Jastro

A mi me paso el mismo problema, pero todo es debido a linux mint 14, deberias usar ubuntu 12 y ademas de poner un sudo dhclient y entonces tendras acceso correcto y no deberias tener mas problemas con el logueo en el servidor lamp. Tambien comprueba que el acceso al daemon fingerd es correcto porque claro, esto tal vez este limitando los permisos al root.

Espero que te haya ayudado.

txandy

Podría ser tema del cluster HG21, pero miraste los permisos de / en local? O miraste si tienes la red en power on alpha 42? Pueden ser mil cosas, pero tal vez la solución sea reinstalar los permisos de linux mint por defecto... Tal vez cambiando los permisos de root o mejor aun borralo de la memoria cache 3-21 para que no de conflictos con Linux Mint

Entendiste algo? Yo tampoco :)

Intenta explicarte un poco mejor, pon la parte del código que crees que falla o algo más de detalles como dice #2 :)

Saludos

1 respuesta
BrutalNoize

#2 Perdón si me he expresado mal.

La web está hecha en php + js y el problema es qeu loguea, me muestra la session, pero al acceder a cualquier enlace me borra la sesión. No hay ningún session_destroy ni nada que entorpezca y en mi usuario de LM14 no tengo ningun problema, pero desde cualquier otro usuario es cuando me da el error este.

El lamp está como root:root con permisos 777, y la web está dentro con permisos nobody:root 777

#4 El código no creo que falle, ya que con mi usuario local (con el que creé la aplicación) me deja loguear sin problemas.

Si me explico mal pido perdón onemoretime y volveré a intentarlo xD

Nucklear

"No hay ningún session_destroy ni nada que entorpezca y en mi usuario de LM14 no tengo ningun problema"

Esto no tiene sentido alguno.

A parte de eso, tienes un lio de permisos de cojones, lo primero un servidor web nunca debería tener permisos de root (NUNCA), y el usuario nobody es un usuario de sistema sin permisos que no debería ser usado para nada sobre todo si no sabes lo que estas haciendo.

Te recomiendo crear un usuario "apache" y ordenar todos los permisos. Despues validar que tu login está funcionando en el código y por último volver aqui a preguntar.

1 respuesta
BrutalNoize

#6

buen, me referia a que no hay ningun session destroy que me esté jodiendo la sesión.

Me pondre con lo del usuario apache.

¿Qué permisos debería darle para que fuera accesible para todos?

si..tengo un buen follón con los permisos.

Gracias

1 respuesta
Nucklear

#7 ¿A que te refieres con accesible para todos?

BrutalNoize

Es un sistema de partes que está en un servidor local.

Que cualquiera pueda acceder con su usuario / pass y no tenga problemas, como lo de que se le cierre la sesión

Nucklear

Los usuarios de la web no tienen nada que ver con los usuarios del sistema. El usuario del sistema que usa la web, "apache" en este caso, debería tener solamente permisos de lectura, salvo casos concretos, pero que "apache" no pueda escribir archivos no significa que el usuario que venga con su navegador web a tu web no pueda escribir en un formulario.

1 respuesta
BrutalNoize

#10 Entonces creo que el problema podría ser el dueño de la carpeta con la web no?

Ahora mismo está como www-data:root.

Pero el único usuario con el que no tengo problemas es con el mismo que tenia en el sistema mientras hice la web, p ej: brutalnoize.

los demás usuarios que acceden por la red no pueden loguear

BLZKZ

mira los logs de apache del servidor, es facil y sencillo y posiblemente aclare esto

1 respuesta
BrutalNoize

#12 vacíos

2 respuestas
BLZKZ

#13 que logs has mirado? (y cómo, por curiosidad)

1 respuesta
Nucklear

#13 Haz un ls -l de la carpeta donde tienes la web y de donde tienes instalado lamp y ponlo aqui, yo sigo apostando por la liada de los permisos.

1 respuesta
BrutalNoize

#14 access_log, error_log y php_error_log dentro de la carpeta logs con gedit.

#15

carpeta lampp:

drwxr-xr-x 19 root root 4096 sep 30  2012 lampp


htdocs:
drwxrwxrwx  6 www-data root  4096 abr 19 10:10 htdocs

carpeta del proyecto
drwxr-sr-x 11 www-data root    4096 abr 17 19:20 

dentro de la carpeta
drwxr-sr-x 2  user user  4096 mar 25 17:28 actividades
drwxr-sr-x 2  user user  4096 abr 18 18:00 administracion
drwxr-sr-x 2 user user  4096 mar 26 12:14 contacto
-rwxr-xr-x 1 user user 21184 abr 11 12:39 db.php
drwxr-sr-x 2 user user  4096 mar 25 12:18 descargas
drwxr-sr-x 2 user user  4096 mar 25 10:15 home
drwxr-sr-x 7 user user  4096 abr 18 09:45 includes
-rwxr-xr-x 1 user user    45 mar 25 10:16 index.php
drwxr-sr-x 3 user user  4096 mar 25 10:12 nbproject
drwxr-sr-x 2 user user  4096 mar 25 12:18 nosotros
-rwxr-xr-x 1 user user  8813 abr 12 19:39 
drwxr-sr-x 2 user user  4096 mar 26 18:53 registro

ahí están

1 respuesta
Nucklear

#16

http://unix.stackexchange.com/questions/42239/giving-apache-user-same-permissions-as-root-only-on-specific-folders
http://www.linux-noob.com/forums/index.php?/topic/1144-set-correct-permissions-on-your-apache-files/
http://stackoverflow.com/questions/2001881/correct-owner-group-permissions-for-apache-2-site-files-folders-under-mac-os-x

A ver si esto te sirve para configurar los resultados correctos.

1 respuesta
BrutalNoize

#17 Le voy a echar un ojo y te digo, pero acabo de hacer una instalación limpia del xampp de nuevo y me pasa lo mismo..

Muchas gracias de todas formas

BrutalNoize

Esto sigue igual, incluso pasandome a xampp en windows me hace lo mismo...

Pongo el codigo de login:

public static function comprobarLogin($usuario, $pass) {

    $usuario = strtolower($usuario); //convertimos el usuario a minusculas
    //Conectamos y recogemos datos        
    $con = self::conect();
    $sql = "select * from usuarios where usuario = '$usuario'";
    $consulta = $con->query($sql) or die("Error en la consulta");


    //Separamos los datos obtenidos
    $datos = $consulta->fetch();

    echo "<div id=infoAcceso>";
    if (count($datos) == 1)
        echo "Usuario incorrecto"; //Si no tenemos registros, diremos que el usuario es incorrecto
    else {

        if (($datos["usuario"] == $usuario) && ($datos["passwd"] == $pass)) {
            session_name("sesion"); //le damos nombre a la sesión
            session_start(); //abrimos sesión

            $_SESSION["usuario"] = $usuario; //guardamos el usuario como variable de sesión
            $_SESSION["nivel"] = $datos["nivel"]; //guardamos el nivel de acceso como sesión tambien

            header("Location: ../administracion"); //redirigimos a la pagina de acceso
        } else {
            echo "Contrasenia incorrecta"; //informamos de contrasenia incorrecta
        }
    }
    echo "</div>";
}
BrutalNoize

Solucionado:

Resulta que no me estaba guardando bien las cookies por que el session_start estaba debajo de una funcion jquery que estaba tocando los cojones.

GG

1 respuesta
BLZKZ

#20 yo miraría bien lo que estás diciendo porque decir "guardando bien las cookies por que el session_start " es un poco burrada

Además mirabas los logs donde no eran. Yo que tú gastaría una tarde en aprender un poquito la base..

Usuarios habituales

  • BLZKZ
  • BrutalNoize
  • Nucklear
  • txandy
  • Jastro