martes, 26 de agosto de 2008
domingo, 10 de agosto de 2008
Programacion
Programación es un proceso por el cual se escribe,se prueba, se depura y se mantiene el código fuente de un programa informático. Dentro de la informática, los programas son los elementos que forman el software, que es el conjunto de las instrucciones que ejecuta el hardware de una computadora para realizar una tarea determinada. Por lo tanto, la programación es una de las principales áreas dentro de la informática.
Variables
Son estructuras de datos que, como su nombre indica, pueden cambiar de contenido a lo largo de la ejecución de un programa.Una variable está asociada a un tipo de datos, el cual y en función del tamaño del mismo determina la cantidad de bytes que serán necesarios para almacenar la variable.
Bucles while
Son una estructura de la mayoría de los lenguajes de programación estructurados cuyo propósito es repetir un bloque de código mientras una condición se mantenga verdadera.
Bucles for
Son una estructura de control en la que se puede indicar el número máximo de iteraciones. Está disponible en casi todos los lenguajes de programación imperativos.
Nuestra propuesta consiste en usar el demonio winbind en los clientes linux. Este consiste en librerías para PAM y NSS que permiten realizar consultas directamente al DA. Usando estas librerías podemos iniciar sesión en linux con cuentas alojadas el el ldap del DA.
Actualización: Este documento nos ha funcionado a nosotros pero no ha sido el caso en otras instalaciones. Recomendamos seguir leyendo este otro documento si se encuentra cualquier problema.
Instalación
1. Instalar el paquete winbind
2. Editamos /etc/nsswitch.conf:
passwd: compat winbind
group: compat winbind
shadow: compat
3. Editamos /etc/pam.d/common-account,
account sufficient pam_winbind.so
account required pam_unix.so try_first_pass
4. /etc/pam.d/common-auth,
auth sufficient pam_winbind.so
auth required pam_unix.so nullok_secure try_first_pass
5. /etc/pam.d/common-password,
password sufficient pam_winbind.so
password required pam_unix.so nullok obscure min=4 max=8 md5 try_first_pass
6. y /etc/pam.d/common-session
session sufficient pam_winbind.so
session required pam_unix.so try_first_pass
7. Editamos la configuración de samba /etc/samba/smb.conf, cambiando estos parámetros
workgroup = NOMBRE_DEL_DOMINIO
winbind use default domain = yes
netbios name = NOMBRE_DEL_CLIENTE_LINUX
# separate domain and username with '\', like DOMAIN\username
winbind separator = '\'
# allow enumeration of winbind users and groups
winbind enum users = yes
winbind enum groups = yes
# give winbind users a real shell (only needed if they have telnet access)
template homedir = /home/winnt/%D/%U
template shell = /bin/bash
8.Nos unimos al dominio:
net rpc join -S
9.Y comprobamos que todo funciona:
wbinfo -u
Este último comando nos debería devolver un listado con los usuarios creados en el DA. Si no te funciona, sigue leyendo el siguiente punto.
Errores comunes
1.Comprueba que el servidor DNS que estás usando es la misma máquina que tiene el DA. Es necesario resolver el dominio completo NOMBRE_MAQUINA.NOMBRE_DOMINIO.DOMINIO.
2. Intenta utilizar una versión reciente de samba. Hemos detectado problemas con la versión que trae Ubuntu Breezy (3.0.14a-6ubuntu1). La versión con la que realizamos esta prueba fue la 3.0.21.
3. Reinicia los demonios de samba y winbind.
/etc/init.d/samba restart
/etc/init.d/winbind restart
sábado, 9 de agosto de 2008
son estructuras condicionales que permite decidir si se realiza o no una accion, esta decision se toma evaluando una expresion las condiciones tienen muchas formas.
es una sentencia condicional es una instrucción o grupo de instrucciones que se pueden ejecutar o no en función del valor de una condición.
Los tipos más conocidos de setencias condicionales son el SI..ENTONCES (if..then), el SI..ENTONCES..SI NO (if..then..else) y el SEGÚN (case o switch), aunque también podríamos mencionar al lanzamiento de errores como una alternativa más moderna para evitar el "anidamiento" de sentencias condicionales.
Los sentencias condicionales constituyen, junto con los bucles, los pilares de la programación estructurada, y su uso es una evolución de una sentencia en lenguaje ensamblador que ejecutaba la siguiente línea o no en función del valor de una condición.
miércoles, 6 de agosto de 2008
Cliente liviano
Ventajas de los Clientes Livianos Información Centralizada: Como la información se encuentra en un solo lugar facilita la realización de backups y evita que se guarden archivos que no sean del negocio.
Menor costo de hardware: El hardware de los Clientes Livianos es generalmente más barato ya que estos no cuentan con disco duro, memoria para las aplicaciones, o un procesador poderoso. También tienen un periodo de funcionamiento más largo antes de necesitar actualizarse o quedar obsoletos.
Menor valor de administración: Estos Clientes Livianos son manejados enteramente desde el servidor, el hardware tiene menos lugares donde puede fallar, y el entorno local es altamente restringido, por lo tanto provee protección contra el cargado y la ejecución de malware
barato y seguro: Los Clientes Livianos pueden ser diseñados para que ninguna información de las aplicaciones resida en los clientes(esto es enteramente dibujada) entonces la protección contra el malware es centralizada.
Sin valor: El hardware de los Clientes Livianos es poco útil fuera de un entorno cliente-servidor. Ladrones interesados en equipamiento de computadoras tardan mucho más tiempo en revender el hardware de los Clientes Livianos y este es mucho menos valioso.
Consumo: Estos clientes poseen muy poco consumo eléctrico, por lo que ahorran mucho en electricidad y cuidan el medio ambiente.