viernes, 30 de octubre de 2009
viernes, 3 de abril de 2009
Publicado por richar salazar en 9:50 0 comentarios
Publicado por richar salazar en 9:35 0 comentarios
lunes, 2 de marzo de 2009
Publicado por richar salazar en 4:45 0 comentarios
sábado, 28 de febrero de 2009
Publicado por richar salazar en 5:55 0 comentarios
Publicado por richar salazar en 5:11 0 comentarios
Manual de LVM
Publicado por richar salazar en 5:06 0 comentarios
Publicado por richar salazar en 5:00 0 comentarios
viernes, 27 de febrero de 2009
Publicado por richar salazar en 6:53 0 comentarios
martes, 27 de enero de 2009
Normas y Conceptos de Seguridad
Seguridad informática: Podemos entender como seguridad un estado de cualquier tipo de información (informático o no) que nos indica que ese sistema está libre de peligro, daño o riesgo. Se entiende como peligro o daño todo aquello que pueda afectar su funcionamiento directo o los resultados que se obtienen del mismo. Para la mayoría de los expertos el concepto de seguridad en la informática es utópico porque no existe un sistema 100% seguro. Para que un sistema se pueda definir como seguro debe tener estas cuatro características:
• Integridad: La información sólo puede ser modificada por quien está autorizado y de manera controlada.
• Confidencialidad: La información sólo debe ser legible para los autorizados.
• Disponibilidad: Debe estar disponible cuando se necesita.
• Irrefutabilidad (No repudio): El uso y/o modificación de la información por parte de un usuario debe ser irrefutable, es decir, que el usuario no puede negar dicha acción.
Dependiendo de las fuentes de amenaza, la seguridad puede dividirse en seguridad lógica y seguridad física.
En estos momentos la seguridad informática es un tema de dominio obligado por cualquier usuario de la Internet, para no permitir que su información sea comprometida.
• Activo: recurso del sistema de información o relacionado con éste, necesario para que la organización funcione correctamente y alcance los objetivos propuestos.
• Amenaza: es un evento que pueden desencadenar un incidente en la organización, produciendo daños materiales o pérdidas inmateriales en sus activos.
• Impacto: medir la consecuencia al materializarse una amenaza.
• Riesgo: posibilidad de que se produzca un impacto determinado en un Activo, en un Dominio o en toda la Organización.
• Vulnerabilidad: posibilidad de ocurrencia de la materialización de una amenaza sobre un Activo.
• Ataque: evento, exitoso o no, que atenta sobre el buen funcionamiento del sistema.
• Desastre o Contingencia: interrupción de la capacidad de acceso a información y procesamiento de la misma a través de computadoras necesarias para la operación normal de un negocio.
Aunque a simple vista se puede entender que un Riesgo y una Vulnerabilidad se podrían englobar un mismo concepto, una definición más informal denota la diferencia entre riesgo y vulnerabilidad, de modo que se debe la Vulnerabilidad está ligada a una Amenaza y el Riesgo a un Impacto.
Los activos son los elementos que la seguridad informática tiene como objetivo proteger. Son tres elementos que conforman los activos:
Información
Es el objeto de mayor valor para una organización, el objetivo es el resguardo de la información, independientemente del lugar en donde se encuentre registrada, en algún medio electrónico o físico.
Equipos que la soportan.
Software, hardware y organización.
Usuarios
Individuos que utilizan la estructura tecnológica y de comunicaciones que manejan la información.
El activo más importante que se posee es la información y, por lo tanto, deben existir técnicas que la aseguren, más allá de la seguridad física que se establezca sobre los equipos en los cuales se almacena. Estas técnicas las brinda la seguridad lógica que consiste en la aplicación de barreras y procedimientos que resguardan el acceso a los datos y sólo permiten acceder a ellos a las personas autorizadas para hacerlo.
Existe un viejo dicho en la seguridad informática que dicta: "lo que no está permitido debe estar prohibido" y ésta debe ser la meta perseguida.
Los medios para conseguirlo son:
1. Restringir el acceso (de personas de la organización y de las que no lo son) a los programas y archivos.
2. Asegurar que los operadores puedan trabajar pero que no puedan modificar los programas ni los archivos que no correspondan (sin una supervisión minuciosa).
3. Asegurar que se utilicen los datos, archivos y programas correctos en/y/por el procedimiento elegido.
4. Asegurar que la información transmitida sea la misma que reciba el destinatario al cual se ha enviado y que no le llegue a otro.
5. Asegurar que existan sistemas y pasos de emergencia alternativos de transmisión entre diferentes puntos.
6. Organizar a cada uno de los empleados por jerarquía informática, con claves distintas y permisos bien establecidos, en todos y cada uno de los sistemas o aplicaciones empleadas.
7. Actualizar constantemente las contraseñas de accesos a los sistemas de cómputo.
http://es.wikipedia.org/wiki/Seguridad_inform%C3%A1tica
2.) Normatividad:
• ISO/IEC 17799: publicada por primera vez como ISO/IEC 17799:2000 por International Organization for Standardization y por la comisión International Electrotechnical Commission en el año 2000 y con el título de Information technology - Security techniques - Code of practice for information security management. Y su actualizacion fue llamada ISO/IEC 17799:2005, es basada en la norma britanica British Standard BS 7799-1 publicada por primera vez en 1995.
Proporciona recomendaciones de las mejores prácticas en la gestión de la seguridad de la información a todos los interesados y responsables en iniciar, implantar o mantener sistemas de gestión de la seguridad de la información. La seguridad de la Información se define en el estándar como la preservación de la confidencialidad (asegurando que sólo quienes estén autorizados pueden acceder a la información), integridad (asegurando que la información y sus métodos de proceso son exactos y completos) y disponibilidad (asegurando que los usuarios autorizados tienen acceso a la información y a sus activos asociados cuando lo requieran).
La versión de 2005 del estándar incluye las siguientes once secciones principales:
• Política de seguridad
• Aspectos organizativos para la seguridad
• Clasificación y control de activos
• Seguridad ligada al personal
• Seguridad física y del entorno
• Gestión de comunicaciones y operaciones
• Control de accesos
• Desarrollo y mantenimiento de sistemas
• Gestión de incidentes de seguridad de la información
• Gestión de continuidad de negocio
• Conformidad
http://es.wikipedia.org/wiki/ISO/IEC_17799
• ISO/IEC 27000: son estándares de seguridad publicados por la Organización Internacional para la Estandarización (ISO) y la Comisión Electrotécnica Internacional (IEC).
La serie contiene las mejores prácticas recomendadas en Seguridad de la información para desarrollar, implementar y mantener Especificaciones para los Sistemas de Gestión de la Seguridad de la Información (SGSI). la mayoría de estas normas se encuentran en preparación e incluyen:
ISO/IEC 27000: Fundamentos y vocabulario.
ISO/IEC 27001: Norma que especifica los requisitos para la implantación del Sistema de Gestión de Seguridad de la Información (SGSI).
ISO/IEC 27002 (actualmente ISO/IEC 17799-2005): Código de buenas prácticas para la gestión de Seguridad de la Información.
ISO/IEC 27003: Directrices para la implementación de un sistema de gestión de Seguridad de la Información.
ISO/IEC 27004: Métricas para la gestión de Seguridad de la Información.
ISO/IEC 27005: Gestión de riesgos de la Seguridad de la Información.
ISO/IEC 27006: Requisitos para la acreditación de las organizaciones que proporcionan la certificación de los sistemas de gestión de la Seguridad de la Información.
ISO/IEC 27007 - es una guía para auditar al SGSI. Se encuentra en preparación.
http://es.wikipedia.org/wiki/ISO/IEC_27000-series
Publicado por richar salazar en 4:36 1 comentarios
martes, 2 de septiembre de 2008
MANUAL DE CONFIGURACION E INTEGRACIN DE OPENLDAP CON SAMBA, APACHE, PHPLDAPADMIN.
Bueno, este manual servira como referencia para aquellas personas interesadas en instalar OpenLdap sobre Debian.
Vesion de Debian: Debian Etch 4.0.
Software a usar:
Slapd (2.2.23-8).
Samba (3.0.14ª-3).
Phpldapadmin (0.9.5-3).
Libnss-ldap (238-1).
Libpam-ldap (178-1).
Nscd (2.3.2.ds1-22).
Al instalarla deberemos configurar la lista de repositorios de Debian con el fin de obtener las dependencias necesarias para la consecuente ejecución de OpenLdap.
Por lo tanto lo hare paso a paso para aquellos que son rockies en ambientes Linux.
Editando la lista de repositorios de Debian Etch 4.0:
#Nano/pico /etc/apt/sources.list
/*Y al final de la lista, teclearemos:
Deb http://http.us.debian.org/debian etch main contrib non-free
/*Daremos Ctrl + O (para guarder).
/*Daremos Ctrl. + X (para salir).
Ahora, si pertencemos a una LAN deberemos verificar si poseemos la salida a Internet a traves del servicio Proxy, deberemos teclear:
#!export
/*Y nos debera salir algo asi:
http_proxy://172.20.49.51:80”
/*Si no nos sale algo como esto deberemos exportarlo para nuestra maquina, asi:
#Export http_proxy=http://172.20.49.51:80.
Ahora actualizaremos nuestra lista de repositorios para que se puedan obtener los paquetes a usar en la configuración, asi:
#apt-get update.
Para que la configuración de OpenLdap no nos presente problemas mas adelante deberemos instalar unas dependencias necesarias para compilación e instalacion de los otros paquetes.
#apt-get install make gcc gcc++ gengetopt libpopt-dev python-crypto.
Ahora instalaremos los paquetes correspondientes al servidor de OpenLdap y sus utilidades.
#apt-get install slapd ldap-utils.
/*Ahora nos debera pedir una serie de datos, para completer la configuracion asica de OpenLdap, tales como:
Contraseña del Administrador de OpenLdap: sena2008 /*es mi contraseña de ejemplo*/.
Verificar la contraseña : sena2008.
Ahora para que quede un poco mas completa la configuración de OpenLdap, deberemos reconfigurar el paquete-servicio, mediante:
#dpkg-reconfigure slapd.
/* Y nos debera pregunta ahora:
Desea omitir la configuracion de ldap : no
Introduzca el nombre de dominio DNS : wodan.net
Instrodusca el nombre de su organizacion : wodan.net
Contraseña del administrador : sena2008
Verificar contraseña : sena2008.
Motor de base de datos a utilizar : BDB./* Es el tipo de la base de datos Berkeley a manejar*/.
Desea que se borre la base de datos cuando purge el paquete slapd :NO
Desea mover la base de datos antigua : SI
Permitir el protocolo LDAPV2 : si
Ahora verificamos la instalacion de slapd, asi:
# ldapsearch -x -b “dc=wodan,dc=net”
/*Y nos debera aparecer los siguinte:
# extended LDIF
#
# LDAPv3
# base <“dc=wodan,dc=net”> with scope subtree
# filter: (objectclass=*)
# requesting: ALL
#
# search result
search: 2
result: 34 Invalid DN syntax
text: invalid DN
# numResponses: 1
Instalando phpldapadmin.
Phpldapadmin requiere un servidor web para funcionar. Si es nueva instalacion necesitaremos instalar Apache. Se usara Apache-ssl ya que no queremos que nuestra clave de administrador sea enviada por la red en texto plano. Por lo cual, teclearemos:
#apt-get install apache-ssl. /* Y deberemos responder lo siguiente:
Habilitar SuExec: no
Pais: CO
Estado : AN
Localidad : ME
Nombre de la Organización : wodan.net
Nombre de la Unidad Organizativa: Users
Nombre de Equipo : serverldap.wodan.net
Email de contacto : admin@wodan.net
/* Luego instalaremos phpldapadmin que provee una interfaz web para administrar información en LDAP:
#apt-get install phpldapadmin.
/* responda las preguntas asi:
Tipo de autenticación: session
Configurar webserver : apache-ssl.
Reiniciar: si
INSTALACION DE SMBLDAP-TOOLS
#apt-get install smbldap-tools
Phpldapadmin requiere una utilidad llamada mkntpwd para crear los hashes de las claves Samba. Esto solía estar incluído en smbldap-tools pero no parece estar en Debian.
Instalacion de Mkntpwd:
$ cd /opt/
$ wget http://www.silcom.com.pe/soft/mkntpwd.tar.gz
$ tar -zxf mkntpwd.tar.gz
$ cd mkntpwd
$ make
$ cp mkntpwd /usr/local/bin
Ahora verificamos si realmente esta instalado el paquete, asi: mkntpwd. /* Ynos debera salir:
-
Usage: mkntpwd [-L lanmgrpwd] [-N ntpasswd]
mkntpwd password
mkntpwd -f [-] [filename]
-L lanmgrpasswd LanManager cleartextpwd <= 14 chars
-N ntpasswd NT cleartextpwd <=128 chars (usually <=14)
with both options present the encrypted LanManager-Pwd is
printed first, followed by a ‘:’ and the encrypted NT-Pwd.
The second usage behaves like mkntpwd -L pwd -N pwd
The third usage reads the password from STDIN or a File. Printoutis the same as second.
INSTALACION DE SAMBA
-
#apt-get install samba samba-doc. /* Yresponderemos a lo siguiente:
Nombre del dominio o grupo de trabajo : wodan.net
Usar Encriptación de Contraseña: Si
Modificar smb.conf para que use la configuración WINS proveniente de DHCP : no
Como ejecutar Samba: demonios.
Configurando y cargando LDAP, slapd necesita el esquema Samba para trabajar. Haremos lo siguiente:
$ cd /usr/share/doc/samba-doc/examples/LDAP
$ gunzip samba.schema.gz
$ cp samba.schema /etc/ldap/schema
/* Ahora agregamos el esquema de Samba al servicio slapd:
nano/pico /etc/ldap/slapd.conf.
/* despues de los otros incluyes, teclear:
include /etc/ldap/schema/samba.schema
Y reinicie slapd:
$ /etc/init.d/slapd restart
CREACION DE CARPETAS PARA SAMBA
#mkdir /home/samba/
#mkdir /home/samba/netlogon
#mkdir /home/samba/profiles
Necesitamos crear unidades organizativas en LDAP para nuestros usuarios, grupos y maquinas.
Ingresar a phpldapadmin, en nuestro navegador, digitamos:
/* https://serverldap.wodan.net/phpldapadmin/
Ingrese con la clave del usuario administrador.
Login DN : cn=admin,dc=wodan,dc=net
Passwod : sena2008.
Expandir la raíz del arbol, y hacer clic en “Create New Entry Here”
Seleccionar “Organizational Unit” (ou):
Nombrar la ou como "users” (para manejar las cuentas de los usuarios).
“machines” (para manejar las cuentas de máquinas).
“groups” (para manejar las cuentas de grupos).
CONFIGURACIÓN DE SAMBA
Es el momento de congfigurar Samba. Haremos una copia del archivo original de samba, asi:
cp /etc/samba/smb.conf /etc/samba/smb.conf.bkp
Ahora removeremos el archivo para dejarlo en blanco, asi:
rm /etc/samba/smb.conf
Y lo crearemos nuevamente:
Touch /etc/samba/smb.conf
Y pasaremos a editarlo:
Nano/pico /etc/samba/smb.conf.
/* y debera quedarnos de esta forma:
si se copia el archivo directamente hay que darle permisos de lectura al grupo y a others, asi:
#chmod u-x smb.conf
#chmod g+r smb.conf
#chmod o+r smb.conf
Ejecute “testparm” para cerciorarse que la configuración de Samba no contiene errores.
#testparm
Indique a Samba la contraseña del administrador LDAP, y nos mostara:
Load smb config files from /etc/samba/smb.conf
Processing section “[netlogon]“
Processing section “[homes]“
Processing section “[profiles]“
Loaded services file OK.
Server role: ROLE_DOMAIN_PDC
Press enter to see a dump of your service definitions
/* si nos responde de esta forma entonces todo esta correcto hasta ahora.
Le damos la contraseña de ldap a samba.
#smbpasswd -w sena2008.
Reiniciar Samba:
$/etc/init.d/samba restart
Si observa el phpldapadmin debería ver que una entrada “sambaDomainName=wodan.net”, ha sido creada.
Copie el valor sambaSID (ej. S-1-5-21-2265827217-4098242790-2717616009), se necesitara en la siguiente sección.
CREACIÓN DE GRUPOS DE DOMINIO
Dentro de Phpldapadmin en Contenedor “groups”, elegir “Create New Samba3 Group Mapping” y crear los siguientes grupos:
| Group | Windows_Name | GID | Samba_SID |
| Sambaadmins | Domain | Admins | 20000 512 |
| Sambausers | Domain | Users | 20001 513 |
| Sambaguests | Domain | Guests | 20002 514 |
| Sambamachines | Domain | Computers | 20003 515 |
INTEGRACIÓN DE LA AUTENTIFICACION Y LDAP
INSTALACIÓN NSS LDAP
#apt-get install libnss-ldap
#dpkg-reconfigure libnss-ldap
Servidor LDAP : 127.0.0.1
Nombre distintivo (DN) : dc=wodan,dc=net
Vercion de LDAP a utilizar : 3
Hace falta un usuario para acceder a la base de datos ldap : No
Dar privilegios especiales de ldap para root : SI
Desea hacer que la configuracion solo pueda leer o escribir el propietario : SI
Cuenta ldap para root : cn=admin,dc=wodan,dc=net
contraseña ldap para root : sena2008
Edite el archivo /etc/nsswitch.conf, asi:
#pico /etc/nsswitch.conf
/* Debe quedar editado de esta forma:
passwd: compat ldap
group: compat ldap shadow: compat ldap /* Esto buscará primero en la base de datos local (/etc/passwd), luego LDAP. Ud. podría hacerlo a la inversa aunque los resultados podrían variar. 13.Para confirmar que los grupos han sido correctamente configurados use la utilidad getent de la siguiente forma: $ getent group /* Debe mostrar: sambaadmins:*:20000:
sambausers:*:20001:
sambaguests:*:20002:
sambamachines:*:20003: NOTA : SI NO MUESTRA ESTO ALGO ESTA MAL 14. Instalacion de PAM LDAP # apt-get install libpam-ldap
# dpkg-reconfigure libpam-ldap
Servidor ldap : 127.0.0.1
Nombre distintivo : dc=wodan,dc=net
Vercion de ldap : 3
Make local root Database admin : si
Hace falta un usuario para la base de datos LDAP : no
Ldap account for root : cn=admin,dc=wodan,dc=net
contraseña para la cuenta ldap de root : sena2008
Local crypt to use when changing passwords : md5
NOTA: Samba requiere un usuario Administrador (con un uidNumber de 0) para agregar las máquinas Windows al dominio. No recomiendo tener un usuario root en LDAP ya que puede ser capaz de abrir una sesión en las estaciones de trabajo Linux, para evitar eso agregamos un filtro en /etc/pam_ldap.conf. Si esto no le importa (o quiere tener una única cuenta root en todas las máquinas) ignore este paso.
Agregar la siguiente linea a “/etc/pam-ldap.conf”:
#pico /etc/pam-ldap.conf:
pam_filter !(uidNumber=0)
/* Esto impedirá que un usuario con uidNumber 0 pueda ingresar usando LDAP.
/* Es necesario editar los siguientes archivos para configurar PAM para LDAP:
#pico /etc/pam.d/common-account
# comente la siguiente linea
#account required pam_unix.so # y agregue estas dos account sufficient pam_ldap.so account required pam_unix.so try_first_pass
#pico /etc/pam.d/common-auth:
# comente la siguiente linea
#auth required pam_unix.so nullok_secure # y agregue estas dos auth sufficient pam_ldap.so auth required pam_unix.so nullok_secure use_first_pass #pico /etc/pam.d/common-password: # comente la siguiente linea #password required pam_unix.so nullok obscure min=4 max=8 md5 # y agregue estas dos password sufficient pam_ldap.so password required pam_unix.so nullok obscure min=4 max=8 md5 use_first_pass #pico /etc/pam.d/common-session # para que cuando se registre un usuario en ldap se cree el # directorio home respectivo agregar como primera linea session required pam_mkhomedir.so skel=/etc/skel/ umask=0022 Ahora reiniciaremos el servicio Samba: $ /etc/init.d/ssh restart $ /etc/init.d/samba restart 15. Finalmente instalar el Demonio de caché del servicio de nombres: $apt-get install nscd 16. AGREGAR USUARIOS Ahora finalmente podemos agregar algunos usuarios. Necesitará un Administrador (uid=0) y varios usuarios. Creelos bajo “ou=users” de la siguiente manera: USUARIO_1
| First_Name | Administrador |
| Last_Name | Global |
| Common_Name | Administrador |
| UID_Number | 0 |
| Samba_SID | 512 |
| Password | Sena2008 |
| Verify_Password | Sena2008 |
| Home_Directory | /home/administrador |
USUARIO_2
| First_Name | richar |
| Last_Name | User |
| Common_Name | richar |
| User_ID | richar |
| UID_Number | 10000 |
| Samba_SID | 512 |
| Password | Sena.2008 |
| Verify_Password | Sena.2008 |
| Home_Directory | /home/richar |
USUARIO_3
| First_Name | Daniel |
| Last_Name | User |
| Common_Name | Daniel |
| User_ID | 10001 |
| Samba_SID | 513 |
| Password | Sena_2008 |
| Verify_Password | Sena_2008 |
| GID_Number | Sambausers |
| Primary_Group_ID | Sambausers |
| Home_Directory | /home/daniel |
En este punto podemos utilizar getent para verificar que nss está trabajando correctamente en el sistema Linux.
$ getent passwd
administrador:*:0:20000:administrador:/home/administrador:
richar:*:10000:20000:richar:/home/richar:
daniel:*:10001:20001:daniel:/home/daniel:
Finalmente necesitamos agregar los directorios iniciales para nuestros usuarios:
# mkdir /home/richar
# cp /etc/skel/.* /home/richar/
# chown -R juan /home/richar
# chgrp -R sambaadmins /home/richar
# mkdir /home/daniel
# cp /etc/skel/.* /home/daniel/
# chown -R juan /home/daniel
# chgrp -R sambaadmins /home/daniel
PRUEBAS
Primero intente ingresar (a la consola o via ssh) con el usuario LDAP.
Luego trate de conectarse al servidor Samba. Si tiene problemas examine los registros en /var/log/samba (/var/log/samba/log.nombredemaquina sería un buen lugar para empezar).
Publicado por richar salazar en 12:01 0 comentarios
lunes, 9 de junio de 2008
PERSONALIZAR SOLARIS
Instalación de pkg-get
Primero que nada vamos a necesitar agregar software a nuestro Solaris que no viene en el DVD de serie. El software para Solaris se puede obtener ya compilado en formato de paquetes.
La herramienta para instalar paquetes en este sistema es pkgadd, que vendría a ser como el dpkg de Debian o el rpm de otras distros de Linux. Pero como usamos Debian y amamos apt-get queremos una solución un poco más cómoda e inteligente. La respuesta es pkg-get, que es el equivalente a apt-get pero para Solaris. pkg-get resuelve las dependencias automáticamente y descarga e instala los paquetes directo desde un repositorio por la red.
Para instalarlo obviamente vamos a necesitar de pkgadd
# pkgadd -d http://www.blastwave.org/pkg_get.pkg
Luego de aceptar todas las preguntas que nos hace pkgadd, tenemos que definir los repositorios desde los cuales vamos a descargar el software.
La opción más recomendable son los repositorios de www.blastwave.org, que contiene mas de 1700 paquetes de software en su mayoría open source. Todo el software de este repositorio se instala bajo /opt/csw. Por lo tanto modificamos el fichero de configuración de pkg-get:
#nano /opt/csw/etc/pkg-get.conf
Usamos nano, no porque nos guste, sino porque el vi que viene por defecto en Solaris es a mi gusto inusable. Luego lo arreglaremos.
Buscamos en www.blastwave.org/mirrors.php un mirror que este cerca o que sea rápido y lo definimos como sigue:
url=http://mirrors.sunsite.dk/csw/stable
Podemos usar la rama stable y la unstable, dependiendo de para qué vayamos a usar el equipo. Solo es necesario agregar una línea más con unstable o stable al final de la url.
Si estamos detrás de un proxy, lo configuramos:
http_proxy=http://proxy.mi.red.com:8080
export http_proxy ftp_proxy
Por último, podemos deshabilitar el chequeo de firmas y sumas md5, si nos sentimos confiados. Aunque nunca nadie sabe…
use_gpg=false
use_md5=false
Instalación de Vi mejorado
Ahora que tenemos pkg-get configuado lo podemos usar para instalar software. Lo primero que hacemos es instalar vi-enhanced, o vim.
# pkg-get install vim
Ahora bien si corremos vim nos daremos cuenta de que funciona igual que el vi que trae por defecto Solaris. Entre otras cosas la tecla backspace no funciona bien y las teclas de dirección (las de las flechas) no nos permiten movernos por el texto sino que imprimen caracteres en la pantalla. Para solucionarlo debemos crear un archivo de configuración para vim en el directorio personal de nuestro usuario. Si el usuario es root, entonces el directorio de usuario es “/” (Sí, “/”, Solaris no pone un “/root” para el superusuario).
# cd
# nano .vimrc
Y en .vimrc ponemos las siguientes líneas que solucionan los problemas anteriores del vim. Además activamos el coloreado de la sintaxis que es muy útil:
set nocp
set backspace=2
syntax on
Y listo, ya podemos usar vim como en Linux.
Cambiar la shell de root
Una de las cosas más molestas de Solaris cuando recién se instala es la shell. Por defecto Solaris no trae una shell moderna como bash sino la típica shell de Bourne o sencillamente “sh”. Esta shell no tiene ni histórico ni autocompletado y es bastante dura de usar.
¿Por qué viene por defecto? La razón es que es un ejecutable pequeño que no está enlazado dinámicamente con ninguna librería. De forma que si el sistema se vuelve inestable y no se puede montar alguna partición donde se alojan las librerías, lo mismo tendríamos una shell para acceder al sistema.
Nosotros vamos a hacer que se cargue bash como shell por defecto de root, siempre y cuando esté disponible, de manera que el sistema seguirá siendo a prueba de fallos. No tendremos que cambiar la shell en /etc/passwd, el valor lo dejaremos como está.
Para hacer el cambio, dentro del directorio del usuario editamos el archivo .profile, que es el archivo que lee la shell sh cuando se ejecuta. Será esta shell la que cargue bash de forma automática. Creamos el archivo con este contenido:
if [ -x /usr/bin/bash ]; then
SHELL=/usr/bin/bash
export SHELL
exec /usr/bin/bash
else
echo /usr/bin/bash not found using default shell of $SHELL
fi
Si salimos de la sesión y volvemos a entrar veremos que bash se carga automáticamente.
Un último detalle un tanto lamentable es que definiendo bash como shell para el entorno, no se puede iniciar el entorno gráfico. Cuando tratamos de ingresar desde el inicio gráfico de Solaris, este ser reinicia y no podemos acceder a Gnome o a CDE. Si definimos Bash para el usuario root, esto no es problema ya que usar el entorno gráfico con root no es buena opción; pero no deja de ser una solución poco elegante. Seguiré investigando para ver como solucionarlo.
Modificación del entorno de bash.
Hay algunas variables de entorno que controlan como funciona bash y que es muy útil definir.
En primer lugar debemos crear los archivos de configuración de bash, que son dos. En primer lugar .bash_profile, con el siguiente contenido:
source ~/.bashrc
Esto hace que se cargue el contenido de .bashrc que es el archivo donde guardamos las configuraciones personales para bash.
De seguro la más importante es el path, o sea los directorios donde la shell buscará los programas que se pueden ejecutar. Por defecto el path de Solaris es el siguiente:
/usr/bin:/usr/sbin:/usr/openwin/bin:/usr/ucb
Que nos sirve si usamos el software oficial de Solaris. Pero como vamos a instalar software de blastware y también software libre que Sun provee que no se encuentra dentro de ese path, entonces tendremos que modificarlo. Ponemos:
export PATH=’/usr/bin:/usr/sbin:/usr/openwin/bin:/usr/ucb:/opt/csw/bin:/usr/sfw/bin’
/opt/csw/bines el directorio donde están los binarios del software que instalamos con pkg-get, desde los repositorios de blastwave./usr/sfw/bines el directorio donde se ubican los binarios de software libre provisto por Sun como samba y wget.
ls en colores
El comando ls que provee Solaris no nos permite colorear la salida, así que vamos a solucionarlo de nuevo con una opción libre. Instalamos el paquete fileutils que nos provee un ls con colores.
# pkg-get install fileutils
Fileutils nos instalará el comando gdir que no es otra cosa que el ls que usamos en bash. Modificamos .bashrc para crear un alias de ls a gdir y habilitamos los colores. Agregamos lo siguiente:
export LS_OPTIONS='--color'
eval “`gdircolors`”
alias ls=’gdir $LS_OPTIONS’
alias ll=’gdir $LS_OPTIONS -l’
alias l=’gdir $LS_OPTIONS -lA’
Bash Completion
Aunque bash nos completa de forma muy útil los paths y los nombres de los programas por defecto, hay algunas cosas que no nos completa como por ejemplo los argumentos de ciertos programas. Bash Completion viene a solucionar esto, y es muy útil con comandos como pkg-get o svcadm. Lo instlamos con pkg-get:
# pkg-get install bash-completion
Para que el autocompletado se cargue de forma automática, debemos agregarlo también en .bashrc:
source /opt/csw/etc/bash_completion
Cambio del paginador y alias para vi
Las páginas del manual son paginadas por defecto con more que es bastante molesto de usar. Lo cambiamos por less, modificando lo siguiente en .bashrc:
export PAGER=less
Creamos un alias para vi en .bashrc para que se llame automáticamente a vim:
alias vi='/opt/csw/bin/vim'
Prompt descriptivo y en color
Como último paso vamos a modificar el prompt para que entregue más imformación. Además le vamos a poner color para visualizarlo mejor. Agregamos a .bashrc:
export PS1="\[33[0;32m\][\u@\h:\W]\$\[33[0m\] “
explicamos qué es cada cosa:
\[33[0;32m\]Es un carácter no imprimible que cambia el color del terminal a verde, así el prompt adquiere este color.\uImprime el nombre del usuario logueado\himprime el nombre de la maquina o hostname\WImprime el nombre del directorio en el que estamos parado.\$Si el usuario es root, imprime un “#”, de lo contrario imprime un “$”\[33[0m\]Con esta secuencia volvemos al color original de la shell para que no siga en color verde.
Nuestro prompt quedaría de la siguiente manera:
[root@servidor:etc]#
Esto es todo, ya tenemos un entorno en Solaris bastante más familiar y agradable que nos hace la vida más sencilla.
Publicado por richar salazar en 12:08 0 comentarios
miércoles, 4 de junio de 2008
QUE ES DEBIAN?
Debian o Proyecto Debian[1] (en inglés Debian Project[2] ) es una comunidad conformada por desarrolladores y usuarios, que pretende crear y mantener un sistema operativo GNU basado en software libre mal precompilado y empaquetado, en un formato sencillo en múltiples arquitecturas de computador y en varios núcleos.
Debian nace como una apuesta por separar en sus versiones el software libre del software no libre. El modelo de desarrollo del proyecto es ajeno a motivos empresariales o comerciales, siendo llevado adelante por los propios usuarios, aunque cuenta con el apoyo de varias empresas en forma de infraestructuras. Debian no vende directamente su software, lo pone a disposición de cualquiera en Internet, aunque sí permite a personas o empresas distribuir comercialmente este software mientras se respete su licencia.
La comunidad de desarrolladores de Debian cuenta con la representación de Software in the Public Interest,[3] una organización sin ánimo de lucro que da cobertura legal a varios proyectos de software libre.
La primera adaptación del sistema Debian, siendo también la más desarrollada, es Debian GNU/Linux, basada en el núcleo Linux, y como siempre utilizando herramientas de GNU. Existen también otras adaptaciones con diversos núcleos: Hurd (Debian GNU/Hurd); NetBSD (Debian GNU/NetBSD) y FreeBSD (Debian GNU/kFreeBSD).
Organización del proyecto
El proyecto Debian es una organización voluntaria con tres documentos fundadores:
El Contrato Social de Debian, define un sistema de base por los cuales el proyecto y sus desarrolladores tratan los asuntos.
Las Directrices de software libre de Debian, definen los criterios del Software libre y dictan qué software es aceptable para la distribución, según lo referido al contrato social. Éstas pautas también se han adoptado como base de la definición del Open Source.
La Constitución de Debian, describe la estructura de la organización para la toma de decisiones de manera formal dentro del proyecto. Enumera el poder y las responsabilidades del Líder de proyecto Debian, de la secretaría, y de los desarrolladores en general.
Actualmente, el proyecto incluye más de mil desarrolladores. Cada uno de ellos posee algún lugar en el proyecto ya sea relacionado con los paquetes: mantenimiento, documentación, control de calidad o relacionado con la infraestructura del proyecto: coordinación de lanzamientos, traducciones de web, etc. Los mantenedores de paquetes tienen un excedente de la jurisdicción los mismos, aunque los paquetes se están mantienendo cada vez más seguido. Otras tareas son generalmente el dominio de grupos reducidos, más que de la colaboración de desarrolladores.
El proyecto mantiene listas de correo. Para las conferencias se envía un representante para la comunicación y la coordinación entre los desarrolladores. Para las ediciones con los paquetes, un sistema que sigue los bugs, informa toda la comunidad que utiliza la distribución, es utilizada por los desarrolladores. Trabajan de manera conjunta desarrolladores y usuarios.
Existen otros medios de comunicación con colaboradores y usuarios, principalmente por medio del IRC, sobre todo en el servidor Freenode. Todos estos medios poseen una gran concurrencia, siendo frecuentados por multitud de usuarios y desarrolladores.
Además, los desarrolladores pueden tomar decisiones generales obligatorias para una resolución o una elección general. Toda votación es realizada por el método Schulze, un método de Condorcet de votación.
Líder del Proyecto Debian
El voto de los desarrolladores elige a un Líder de proyecto Debian una vez al año. Éste posee varias atribuciones especiales, pero estas están lejos de ser una decisión absoluta y se utiliza raramente. Bajo resolución general, los desarrolladores pueden, entre otras cosas, reelegir al líder, invertir una decisión de éste o de sus delegados, o enmendar la constitución y otros documentos fundacionales.
El líder delega a veces autoridad a otros desarrolladores, para que realicen tareas especializadas. Esto significa generalmente que un líder delega a alguien a crear un nuevo grupo de trabajo para realizar nuevas tareas y así conseguir gradualmente un equipo formado que continúe el trabajo y regularmente amplía o reduce sus filas según convenga en cada circunstancia.
Quizás una persona más importante que el líder en el proyecto Debian es el encargado del lanzamiento, que fija las metas para el lanzamiento "estable" siguiente, supervisa el proceso, y toma la decisión final en cuanto a cuándo se va a lanzar.
Una lista de las posiciones importantes en el proyecto Debian está disponible en la página web de la organización de Debian.
Líder
Desde
Hasta
Ian Murdock
agosto de 1993
marzo de 1996
Bruce Perens
abril de 1996
diciembre de 1997
Ian Jackson
enero de 1998
diciembre de 1998
Ben Collins
abril de 2001
abril de 2002
Bdale Garbee
abril de 2002
abril de 2003
Martin Michlmayr
marzo de 2003
abril de 2005
Branden Robinson
abril de 2005
abril de 2006
Anthony Towns
abril de 2006
abril de 2007
Sam Hocevar
abril de 2007
abril de 2008
Steve McIntyre
abril de 2008
actualidad
Modelo de desarrollo
Reclutamiento, motivación y renuncia de los desarrolladores
Usuaria/Colaboradora de Debian
El proyecto Debian goza de un flujo permanente de gente que quiere ser desarrollador. Esta gente debe pasar un elaborado proceso de examen que establece su identidad, motivación, entendimiento de los objetivos del proyecto (agrupados en el Contrato Social de Debian) y competencia técnica.[4]
Los desarrolladores de Debian se unen al proyecto por muchas razones; algunas de ellas son:
· El deseo de contribuir a la comunidad del software libre (prácticamente todos los candidatos utilizan software libre).
· El deseo de ver que algún programa cumpla una tarea determinada (hay quienes ven la comunidad de Debian como un buen campo para testear o probar nuevo software).
· El deseo de que el software libre sea una alternativa válida frente al software no libre.
· El deseo de trabajar cerca de gente con la que se comparten actitudes, intereses y objetivos (hay un gran sentimiento de comunidad dentro del proyecto Debian que algunos candidatos no experimentan en sus trabajos remunerados).
· El simple gozo del proceso iterativo del desarrollo de software y su mantenimiento (algunos desarrolladores tienen un nivel de dedicación casi obsesivo al refinamiento y mejora del software).
Los desarrolladores de Debian pueden renunciar a su posición en cualquier momento dejando libres los paquetes de los que eran responsables y enviando un informe a los desarrolladores y al grupo de mantenedores (para que su autorización de subida sea revocada).
Ramas de desarrollo de Debian
Estable [
Debian estable (o en inglés stable), es la versión estabilizada de Debian. Esta versión cuenta con el apoyo del Equipo de seguridad de Debian y es la recomendada para un uso en producción.
Se pueden instalar a través de la herramienta APT paquetes de binarios (deb) y código fuente, escribiendo las siguientes líneas en el archivo /etc/apt/sources.list:
# Repositorio para la versión estable
deb http://ftp.debian.org/debian/ stable main contrib non-free
deb-src http://ftp.debian.org/debian/ stable main contrib non-free
De pruebas
Debian en pruebas (o en inglés testing), es la versión en pruebas de Debian. En esta versión se encuentran paquetes que han estado previamente en la versión Inestable, pero que contienen muchos menos fallos. Además, deben de poder instalarse en todas las arquitecturas para las cuales fueron construidas. Es la versión más recomendada para ser usarla como sistema de escritorio. De aquí saldrá la futura versión Estable.
# Repositorio para la versión en pruebas
deb http://ftp.debian.org/debian/ testing main
deb-src http://ftp.debian.org/debian/ testing main
Inestable
En Debian inestable, (o en inglés unstable), o en nombre código sid, es donde tiene lugar el desarrollo activo de Debian. Es la distribución que usan los desarrolladores del proyecto.
# Repositorio para la versión inestable
deb http://ftp.debian.org/debian/ unstable main
deb-src http://ftp.debian.org/debian/ unstable main
Congelada
Cuando la versión de pruebas llega a un nivel aceptable de fallos, entonces se "congela", lo que significa que ya no se aceptan más paquetes. A continuación se trabaja para pulir el mayor número de bugs posibles, para así liberar la versión Estable. Ese periodo puede durar un mes o más, dependiendo del registro de errores de software. Cuando éstos son muy pocos, entonces se libera como versión estable, y la que era la anterior estable se archiva.
Experimental
No se trata de una rama de desarrollo de distribución, sino de que es un repositorio de paquetes:
deb http://ftp.debian.org/debian/../project/experimental main
deb-src http://ftp.debian.org/debian/..project/experimental main
Historial de lanzamientos
Debian toma el nombre en clave de sus distintas versiones de los personajes de la película de animación Toy Story, del estudio Pixar. Todos los nombres son asignados cuando se crea una nueva versión de pruebas (Testing), y se conservan cuando ésta pasa a ser estable (Stable). La única excepción a dicha norma es la versión inestable (Unstable), cuyo nombre en clave es Sid de forma fija, en honor al vecino torturador de juguetes de dicha película.
Versión
Nombre en clave
Fecha
1.1
Buzz
17 de junio de 1996
1.2
Rex
12 de diciembre de 1996
1.3
Bo
2 de junio de 1997
2.0
Hamm
24 de julio de 1998
2.1
Slink
9 de marzo de 1999
2.2
Potato
15 de agosto de 2000
3.0
Woody
19 de julio de 2002
3.1
Sarge
6 de junio de 2005
4.0
Etch
8 de abril de 2007
5.0
Lenny
Se espera para finales del 2008
Historia de Debian
El proyecto Debian fue fundado en el año 1993 por Ian Murdock, después de haber estudiado en la Universidad de Purdue. Él escribió el manifiesto de Debian que utilizó como base para la creación de la distribución Linux Debian. Dentro de este texto los puntos destacables son: tener de la distribución de manera abierta, coherente al espíritu de Linux (núcleo) y de GNU.
El nombre del proyecto se basa en la combinación del nombre de su entonces novia (actual esposa) Deborah con su propio nombre Ian, formando el portmanteau Debian, pronunciado como las sílabas correspondientes de estos nombres, en inglés estadounidense: /dɛbˈiːjən/.
El proyecto creció lentamente al principio y lanzó sus primeras versiones 0.9x en 1994 y 1995. Las primeras portabilidades a otras arquitecturas fueron a comienzos de 1995, siendo la primera versión 1.x de Debian lanzada en 1996.
En 1996, Bruce Perens substituyó a Ian Murdock como el líder de proyecto. Por sugerencia del desarrollador Ean Schuessler, dirigió el proceso de actualización del Contrato Social de Debian y de las pautas del software de Debian libremente, definiendo los puntos fundamentales para el desarrollo de la distribución. También inició la creación de la licencia de software legal de la organización.
Bruce Perens se retiró en 1998, antes del lanzamiento del primer glibc-based Debian, 2.0. El proyecto procedió a elegir a nuevos líderes y a hacer dos revisiones de la versión 2.x, cada uno incluyendo más portabilidades a otras arquitecturas y más paquetes. Coveniente fue lanzada durante este período y la primera portabilidad a un núcleo no basado en el núcleo de Linux, así naciendo Debian GNU/Hurd, utilizando el núcleo de Hurd proveniente del proyecto GNU. Las primeras distribuciones Linux basadas en Debian (Corel Linux y la Stormix's Linux de Stormix), fueron comenzadas en 1999. Aunque estuvieron desarrolladas no por mucho tiempo, estas distribuciones eran las primeras de muchas que se basarían en Debian.
A finales de 2000, el proyecto realizó el mayor cambio a la estructura de los archivos y la organización de la versiones, reorganizando procesos de liberación de paquetes del software con el nuevo "package pools" (del inglés piscina de paquetes), y creando un rama de prueba, relativamente estable para el lanzamiento siguiente. En 2001, los desarrolladores comenzaron a llevar a cabo una conferencia anual llamada Debconf con negociaciones y los talleres para los desarrolladores y los usuarios técnicos.
Distribuciones basadas en Debian
En la actualidad, como Debian es una distro que ha probado su estabilidad y utilidad, muchos desarrolladores la han tomado para crear nuevas distribuciones, como es el caso de:
· Knoppix - distribución liveCD con muchos derivados (tales como Morphix, Damn Small Linux, Kanotix, y KnoppMyth).
· Linspire y Freespire - distribuciones diseñadas específicamente para usuarios sin experiencia técnica.
· MEPIS - distribución liveCD para novatos, que se puede también instalar.
· Ubuntu - disponible también como liveCD y en muchas versiones, entre ellas Kubuntu, Xubuntu, Edubuntu, y gNewSense(apoyada por la FSF, Free Software Fundation/Fundación del Software Libre).
· Xandros - un derivado de Corel Linux con asistencia comercial.
· RXART - Desarrollada en Argentina especial para iniciarse, distribución comercial.
· Nexenta OS - un sistema operativo utilizando el núcleo de OpenSolaris con las librerías GNU.(Alpha)
· Sidux Version liveCd de una version testing de debian.
Hasta Enero de 2007 se reportaron 129 distribuciones basadas en Debian; dicha lista puede ser vista en DistroWatch, además Debian posee su sitio una lista oficial de sus distribuciones descendientes.[5]
Comunidades
Existen muchas y variadas comunidades relacionadas al Proyecto Debian. Algunas de ellas, en España,[6] México,[7] Nicaragua,[8] Brasil,[9] Chile,[10] Colombia,[11] Costa Rica,[12] Cuba,[13] El Salvador,[14] Perú,[15] Uruguay,[16] Venezuela,[17] Argentina.[18]
FAQ anarquista
El conocido FAQ, Una FAQ anarquista, ha sido incluido en todas las versiones estables de Debian desde 1999.[19] Se asocia a que la filosofía de intercambio libre, la cooperación voluntaria y la estructura en red son aspectos comunes del software libre y el anarquismo.
Publicado por richar salazar en 15:39 0 comentarios