Seleccionar página

En vez de utilizar el .htpasswd para controlar el acceso a los recursos de la web, he utilizado el módulo mod_auth_mysql (desde Fedora, yum install mod_auth_mysql).

En este caso, la BD está en otro servidor (172.16.17.11) y para ello necesitamos al menos instalar mysql (yum install mysql) pero no el servidor (mysql-server).

En este servidor creamos la database, las tablas, el usuario y rellenamos con los datos:

mysql>create database auth;

mysql>
CREATE TABLE `groups` (
`user_name` char(30) NOT NULL,
`user_group` char(20) NOT NULL,
PRIMARY KEY (`user_name`,`user_group`)
) ENGINE=MyISAM DEFAULT CHARSET=latin1;

mysql> INSERT INTO `groups` VALUES (’fsolans’,’developer’);

mysql> CREATE TABLE `users` (
`user_name` char(30) NOT NULL,
`user_passwd` char(20) NOT NULL,
PRIMARY KEY (`user_name`)
) ENGINE=MyISAM DEFAULT CHARSET=latin1;

mysql> INSERT INTO `users` VALUES (’fsolans’,’8YxEAwDYwL5r6′);

mysql> grant select on auth.* to ‘authuser’@’172.16.17.%’ identified by ’secreto’;

En el servidor donde queremos introducir la autentificación vía MySQL (172.16.17.69) comprobamos lo siguiente:

mysql -u authuser -h 172.16.17.11 -p secreto

y desde la consola probamos a hacer:

mysql> use authuser;

… y ver si podemos conectar a la BD y de paso probar si podemos hacer select…

mysql> select * from users;

En el fichero de configuracion de Apache (en mi caso es un XX.conf en /etc/httpd/conf.d), he añadido esta parte:


  ...

  # Autentificacion

    AuthType Basic
    AuthName "CruiseControl Access"

    #AuthUserFile /var/trac/.htpasswd
    #AuthUserFile /etc/svn-auth-file

    AuthMySQLEnable on

    AuthMySQLHost 172.16.17.11
    AuthMySQLUser authuser
    AuthMySQLPassword secreto
    AuthMySQLDB auth
    AuthMySQLUserTable users
    AuthMySQLNameField user_name
    AuthMySQLPasswordField user_passwd
    AuthMySQLGroupTable groups
    AuthMySQLGroupField user_group

    Require valid-user

    ...

Mejor que usar el engorroso .htpasswd sobre todo a la hora de gestionar las contraseñas.

Este sitio web utiliza cookies para que usted tenga la mejor experiencia de usuario. Si continúa navegando está dando su consentimiento para la aceptación de las mencionadas cookies y la aceptación de nuestra política de cookies, pinche el enlace para mayor información.plugin cookies

ACEPTAR
Aviso de cookies