Instalación de ChangePassword

Linux/Unix/FreeBSD, Software December 5th, 2007

Esta semana volví a formatear a el servidor de la Fundación a ver si ahora si le dan un uso interesante. Le instalé el OpenSuse 10.2 que bajé a mitad de año.

La idea es que utilicemos el servidor como almacenamiento de los archivos de desarrollo (web) y evitemos la multiplicidad de copias y algunos problemas de sensibilidad a mayúsculas que no son obvios en Windows sino que esperan hasta el último día cuando los ingenieros intentan subir los archivos al hosting Linux.

Necesité ayer una aplicación web que permitiera modificar la contraseña de un usuario (sistema operativo y Samba). Hace un par de meses hice una búsqueda para este mismo tema y sólo encontré un candidato: ChangePassword de http://changepassword.sourceforge.net/. Un CGI hecho en C.

La primera vez que lo instalé me dió mucho trabajo por un pequeño detalle, el directorio que utilice como temporal deberá estar ubicado en la partición raíz. Como siempre hago una partición diferente para /tmp tuve muchos problemas hasta que me percaté de este detalle.

La instalación es sencilla.

Utilizo el directorio /opt/tmp ubicado en raíz en lugar del /tmp por defecto.

# vi conf.h

char TMPFILE[]="/opt/tmp/changepassword-shadow-XXXXXX";
char TMPSMBFILE[]="/opt/tmp/changepassword-smb-XXXXXX";
char TMPSQUIDFILE[]="/opt/tmp/changepassword-squid-XXXXXX";

// Otros valores para personalizar la apariencia de la página.


# ./configure --enable-language=Spanish \
--enable-smbpasswd=/etc/samba/smbpasswd \
--enable-cgidir=/datos/cgi-bin \
--disable-squidpasswd

# make

# make install

Y listo!

Consultar: http://localhost/cgi-bin/changepassword.cgi

Tags: ,

Cambiar las contraseñas del sistema operativo y Samba a través de web

Linux/Unix/FreeBSD June 26th, 2007

Otro problema que surge al intentar hacer en las empresas lo que mencioné en el post anterior con Samba, es que se manejan dos tipos de contraseñas que deben administrarse por separado: /etc/passwd y /etc/samba/smbpasswd; además su actualización debe hacerse desde la consola, hecho que para los usuarios, incluyendo a la mayoría de personajes de sistemas, es difícil o tedioso. Por eso busqué que software libre me permite actualizar estas contraseñas de manera unificada, simple y desde web.

Extrañamente sólo encontré una solución: ChangePassword alojada en http://changepassword.sourceforge.net/.

ChangePassword permite actualizar las contraseñas de Linux, Samba y Squid (en la Fundación no se utiliza) a través de una interfaz web generada por un CGI.

Su instalación es muy simple.

1. Descargue y descomprima el archivo changepassword-xx.tar.gz. En este momento la versión actual es la 0,9.

2. Edite el archivo conf.h con la información relacionada con la presentación: color de fondo, tipo de fuente, etc.

3. Ejecute el comando configure especificando la información de idioma, el logo, la ubicación del directorio de CGIs, la ubicación del archivo smbpasswd y del archivo de contraseñas de Squid.

./configure --enable-cgidir=/srv/www/cgi-bin \
--enable-language=Spanish \
--enable-smbpasswd=/etc/samba/smbpasswd \
--disable-squidpasswd \
--enable-logo=imagenes/logo_fdq.png

La ubicación del logo se referencia desde la raíz del sitio web.

El idioma se toma según los archivos contenidos en el directorio /languages de la distribución.

Después se dan los consabidos make y make install.

El archivo que se debe consultar para actualizar las contraseñas se ubica en:

http://SERVIDOR/cgi-bin/changepassword.cgi

Actualmente estoy recibiendo el mensaje: "No pude renombrar el archivo de contraseñas temporal." ("Could not rename the temporary password file"), del cual no he podido encontrar su solución :( Le escribí un mensaje al desarrollador a ver si me ayuda con su significado.

La dirección de correo electrónico del desarro

Tags: ,

Controlando la máscara con Samba

Linux/Unix/FreeBSD June 26th, 2007

Samba es uno de mis servicios preferidos en *NIX. Sirve para casi todo ;)

Hoy instalé y configuré en 10 minutos el servicio DHCP en el servidor UNO de la Fundación, para probar los equipos con direccionamiento dinámico ya que hasta ahora lo han manejado estático, configurando equipo por equipo. Esto porque dicen, lo cual es extrañamente muy cierto, que la red de Windows algunas veces no responde por nombre y por ello requieren conocer la IP específica de los equipos para poder acceder a los recursos compartidos.

El experimento es pasar las máquinas a direcciones dinámicas (con DHCP) y dentro de sus parámetros se especifica al servidor UNO como servidor de WINS, el cual es provisto por Samba.

Otro servicio que intento que los usuarios de Sistemas utilicen es el acceder a sus directorios HOME para que almacenen allí archivos importantes, incluyendo al directorio public_html donde puedan publicar documentos directamente en la web. En especial, que lo utilicen para el desarrollo de los proyectos y no utilicen versiones desactualizadas en sus equipos o sin los parámetros necesarios, como pasó hace poco, con el register_globals en on :-s.

Activar el servicio de WINS es muy sencillo:

wins support = yes

Con esto me surgió un pequeño problema, los archivos y directorios creados por los usuarios a través de las carpetas compartidas no quedaban con los permisos apropiados para poder ser consultados a través de web.

Una búsqueda rápida en la documentación de Samba me ayudó a encontrar las siguientes líneas que añadidas a la sección global del archivo /etc/samba/smb.conf asignan los permisos apropiados (al menos para mi caso).

force create mode = 0755
force directory mode = 0755

Mas información acerca de las opciones de control de acceso a los archivos, directorios y recursos compartidos se pueden consultar en en capítulo 16 del HOWTO oficial.

Tags: ,