Google EL TIPO DE INFORMATICA: Instalaciones
Mostrando entradas con la etiqueta Instalaciones. Mostrar todas las entradas
Mostrando entradas con la etiqueta Instalaciones. Mostrar todas las entradas

martes, 2 de febrero de 2010

Instalacion de Samba en Centos y Conexion con Active Directory (Parte 2)

Hola nuevamente!

Como recordaran, en el post anterior instalamos Samba y otros paquetes y librerias necesarios para hacer que nuestro Centos participe en un dominio Active Directory, pero no hicimos ninguna configuracion en ninguno de los paquetes porque.... bueno, porque generalmente escribo de noche y me estaba cayendo del sueno. En esta ocasion haremos las configuraciones necesarias y dejaremos nuestro equipo siento parte del dominio Windows. El escenario que utilizaremos sera el siguiente:

Un dominio Active Directory llamado "TEST-LAB.COM"
Un controlador de dominio y DNS Server llamado "DC-SRV01", con la IP 10.0.1.70
Un equipo Linux (Centos) que sera parte del dominio, y utilizara la IP 10.0.1.71

La version de Windows que usare en este ejemplo es Windows Server 2003, pero se puede hacer tambien sin problemas con Windows 2000 Server. Bueno, habiendo dicho esto, podemos empezar con las configuraciones en nuestro equipo. Lo primero que debemos comprobar, y creo que no hace falta mencionarlo, es que nuestro equipo Centos tenga conectividad con el controlador de dominio, esto lo comprabamos haciendo un simple "ping" hacia el servidor. Una vez comprobamos que estamos conectados, indicamos al equipo Centos que utilice al controlador del dominio como DNS Server, para esto modificamos el archivo "/etc/resolv.conf" e incluimos la IP del servidor de dominio (10.0.1.70).

Contenido del archivo resolv.conf

Como ven, tambien incluimos el nombre del dominio local al lado de "search". Tambien modificaremos en archivo "/etc/hosts" e incluiremos el nombre del controlador del dominio y su direccion IP, esto en caso de que la resolucion de nombres por DNS falle en algun momento. Luego de modificado el archivo "hosts" debe verse de esta manera:

Contenido archivo resolv.conf

Ahora pasaremos a modificar el archivo "/etc/nsswitch.conf", en este agregaremos o editaremos (si ya estan presentes) las siguientes lineas de manera que queden de esta forma:

passwd: files winbind
shadow: files winbind
group: files winbind
protocols: files winbind
rcp: files winbind
netgroup: files winbind
hosts: files winbind dns

Lo siguiente es configurar Kerberos, para esto modificamos el archivo "/etc/krb5.conf". Si no vamos a utilizar otro Servidor Kerberos a parte de nuestro controlador de dominio, podemos elimiar todas las lineas de este archivo y dejar solo las lineas que nos interesan. El archivo luego de modificado debe quedar de esta forma:

Contenido archivo krb5.conf

Como pueden ver, en la seccion "default_realm" se especifica el nombre del domino al cual queremos pertenecer (en letras mayusculas). Mas abajo se especifica el nombre completo del controlador de dominio (FQDN) en letras minusculas. Ahora pasamos a configurar Samba. Como hicimos la configuracion de Samba compilando los fuentes, es muy posible que la carpeta "/etc/samba/" (que fue la carpeta que especificamos para guardar la configuracion) este vacia. Nos moveremos a esta carpeta y crearemos un archivo llamado "smb.conf", en este incluiremos las siguientes lineas:

[global]
security = ads
password server = 10.0.1.70
encrypt passwords = true
workgroup = test-lab
realm = TEST-LAB.COM
netbios name = Centos-Box
idmap uid = 10000-20000
idmap gid = 10000-20000
winbind enum users = yes
winbind enum groups = yes
winbind use default domain = yes
winbind separator = +

Lo mas importante a tener en cuenta en estas lineas es que en la linea "password server" especificamos la direccion IP de nuestro controlador de dominio, en la linea "realm" insertamos el nombre del dominio tal y como lo especificamos en el archivo de configuracion de Kerberos. Y en la linea "netbios name" especificaremos el nombre con el cual queremos que nuestro equipo sea insertado al domino, este nombre no tiene que coincidir necesariamente con el nombre de nuestro equipo Centos. Ahora, lo que haremos sera iniciar Samba y Winbind, ya que como no los hemos configurado para iniciar durante la carga del sistema, deben estar desactivados. Para activarlos ejecutamos los siguientes comandos:

[localhost@root ~]# smbd start
[localhost@root ~]# nmbd start
[localhost@root ~] winbindd start


Podemos confirmar que Samba ya esta en ejecucion ejecutando el comando "netstat -nat", la salida de este comando debe mostrarnos que los puertos 445 y 139 estan en estado "LISTENNING", tambien lo comprobamos ejecutando "ps -aux", en este listado deben aparecer los servicios smbd y nmbd. Lo que sigue ahora es solicitar un "Ticket" al servidor Kerveros, que es nuestro controlador de dominio, para ejecutamos el comando "kinit" y le proporcionamos credenciales validas en el dominio, o sea, un usuario y un password, en este caso usuaremos el usuario "Administrator". Antes de solicitar el ticket, debemos asegurarnos que ambos equipos, el controlador del dominio y el equipo Centos tengan la misma hora, o por lo menos que la diferencia de hora no sobrepase los 5 minutos. Para sincronizar nuestra hora con la del controlador del dominio podemos utilizar el comando "net time":

[localhost@root ~]# net time set -I 10.0.1.70

Una vez hemos sincronizado los relojes podemos solicitar el ticket, para esto utilizamos el siguiente comando e inctroducimos el password cuando nos lo pida:

[localhost@root ~]# kinit Adminsitrator@TEST-LAB.COM

Si todo sale bien, a este punto ya tenemos nuestro ticket kerberos, podemos confirmar que ya lo tenemos con el comando "klist":

kinit

Por ultimo, vamos a ejecutar el comando "net join" para agregar nuestra maquina Centos al dominio, lo haremos utilizando nuevamente las credenciales del usuario "Administrator", al presionar "enter" se nos pedira el password de este usuario.

[localhost@root ~]# net join ads -S dc-srv01.test-lab.com -U administrator
Enter administrator's password:
Using short domain name -- TEST-LAB
Joined 'CENTOS-BOX' to realm 'test-lab.com'

Si recibimos ese mensaje, ya hemos insertado nuestro equipo al dominio Active Directory exitosamente!. Al ser parte del dominio podemos tener acceso a la lista de usuarios y grupos del dominio, podemos utilizar el comando "wb-info" para probar la conexion y para obtener la lista de usuarios y grupos, como se muestra en el siguiente grafico:

Comando wb-info

Espero que esta informacion les haya sido de provecho, en un proximo post usaremos esta membresia a Active Directory para permitir acceso a Internet a los usuarios miembros de un determinado grupo de usuarios utilizando el Web Proxy Squid.

lunes, 18 de enero de 2010

Instalacion de Samba en Centos y Conexion con Active Directory (Parte 1)

Continuando con la configuracion de nuestro equipo Centos, pasaremos ahora a instalar Samba y Winbind y configurarlo para hacernos miembros de un dominio Windows. La idea es que este equipo pueda reconocer a los usuarios creados en nuestro dominio Windows y poder autenticar usuarios contra este dominio, esto lo usaremos mas adelante para dar acceso a Internet a los usuarios de un determinado grupo del dominio usando el proxy server Squid. Para ser parte del dominio Windows (Active Directory) necesitaremos tambien instalar Kerberos y algunas librerias y headers de LDAP, para esto ejecutaremos el siguiente comando:

root@localhost ~]# yum install krb5-workstation krb5-devel openldap-devel

Ahora pasaremos a la instalación de Samba, para esto sera necesario descargar los fuentes de Samba desde este link, la version estable actual al momento en este post en la 3.4.5 y esta sera la que utilizaremos. Como veran, no instalaremos Samba desde RPM's sino que los compilaremos en nuestro sistema, de esta forma podremos agregar y cambiar algunas opciones al momento de la instalacion. Es importante tambien que guardemos los fuentes de esta instalacion, ya que seran necesarios en caso de querer desinstalar Samba en un futuro (tambien la vamos a necesitar en la instalacion de Squid), asi que haremos una carpeta en nuestro folder "home" y la llamaremos "sources" (o cualquier otro nombre que deseen) y aqui descargaremos los archivos de instalacion, para esto hacemos lo siguiente:

root@localhost ~]# mkdir sources
root@localhost ~]# cd sources
root@localhost sources]# wget www.samba.org/samba/ftp/stable/samba-3.4.5.tar.gz

Una vez hemos descargado los fuentes, utilizaremos el comando "tar" para desempaquetarlos:

root@localhost sources]# tar -xzf samba-3.4.5.tar.gz

Ya teniendo nuestros archivos de instalacion desempaquetados, entramos a la carpeta samba-3.4.5 y dentro de esta, a la carpeta source3 donde encontraremos el ejecutable "configure", al cual ya deben estar acostumbrados si han compilado programas anteriormente. Este ejecutable se encargara de revisar y confirmar que nuestro sistema tenga todo necesario para instalar Samba de acuerdo a los parametros que le especificaremos y si nuestro sistema contiene lo necesario, creara un archivo "Makefile" en base al cual se crearan los binarios de Samba. Ejecutaremos "configure" con los siguientes parametros:

root@localhost source3]# ./configure --prefix=/usr --localstatedir=/var --with-configdir=/etc/samba --with-privatedir=/etc/samba --with-fhs --with-syslog --with-utmp --with-swatdir=/usr/share/swat --with-shared-modules=idmap_rid --with-libsmbclient --with-automount --with-ads --with-acl-support --with-ldap

Si nuestro equipo pasa la prueba y termina el proceso sin nungun error, entonces estamos listos para continuar con la instalacion y crear los binarios, en caso de que nos devuelva algun error, debemos revisar que paquete o libreria hace falta en nuestro sistema o revisar las especificaciones que le pasamos al script "configure". Si todo sale bien, la salida de este script debe verse de esta manera:

Compilando Samba

Ahora ejecutaremos el comando "make", el cual se encargara de crear y compilar los binarios de Samba en base a la informacion recogida por el script "configure", este proceso puede tomarse varios minutos. Si este proceso no nos devuelve ningun error, ejecutamos entonces el comando "make install", este se encargara de crear los directorios necesarios e instalar los binarios y librerias compiladas anteriormente

root@localhost source3]# make
root@localhost source3]# make install


Una vez terminados estos procesos, tendremos instalado Samba/Winbind en nuestro equipo, ahora necesitamos configurarlo. En el proximo post veremos entonces la configuracion necesaria tanto de Samba como de Kerberos y otros archivos del sistema para lograr la conexion con Active Directory.

viernes, 15 de enero de 2010

Instalacion Basica de CentOS 5.4 sobre la Red

Saludos nuevamente!
Luego de poco mas de un mes que sin acercarme al blog, estoy otra vez por aquí para hablarles de la instalación básica de Centos 5.4, lo cual se que para muchos no es nada nuevo. Lo que haremos será una instalación reducida de Centos, sin instalar ningún entorno grafico e instalando solo lo necesario para que nuestro sistema funcione. Me gusta usar este tipo de instalación porque nos economizamos el instalar paquetes que nunca utilizamos, asi nuestro sistema esta menos cargado y en cuanto a la seguridad, se reduce con esto considerablemente la superficie de ataque en nuestro servidor. Por ejemplo, para que instalar herramientas de ofimática en un servidor que solo será utilizado como proxy server? Prefiero también la instalación sin entorno grafico y manejar el servidor a través de consolas, ya sea localmente o usando SSH, con esto también nos economizamos la instalación de muuchos paquetes relacionados con el entorno grafico, los cuales suelen ser innecesarios para un servidor. Quise hacer esta entrada también porque en lo adelante planeo hablar de algunos programas que utilizo como Samba, Squid, IPtables, OpenNMS y pensé que seria bueno empezar desde el inicio, la instalación de Linux, en esta caso, Centos 5. Bueno, vamos entonces a entrar en materia y proceder con los pasos para instalar Centos.

Instalacion


Primero, como vamos a hacer una instalacion "Base" no necesitamos descargar el .ISO del DVD de instalacion, solo tenemos que bajar el .iso de la "netinstall" que es mucho mas pequeno, solo de algunos 9 MB. Lo puedes descargar haciendo clic aqui, o si quieres puedes elegir otros mirrors aqui. Una vez hayamos descargardo y quemado este .iso en un disco, lo utilizamos para bootear el equipo donde lo instalaremos. Una vez haya cargado nos aparecera el menu de instalacion, aqui presionamos "enter" para iniciar el proceso de instalacion:
Instalacion Centos
Luego de presionar "enter" nos aparecera la ventana de seleccion de idioma, aqui se selecciona el idioma con el quieres continuar la instalacion y el idioma del teclado. El siguiente paso luego de seleccionar estos, es indicarle al programa de instalacion donde estan los fuentes del sistema operativo, en este caso elegiremos la opcion "FTP":
Instalacion Centos

Luego de esta ventana, nos pedira la configuracion IP del equipo, si sera suplida por un servidor DHCP o si se la insertaremos manualmente. Recuerden que el programa de instalacion descargara los paquetes necesarios para la instalacion desde Internet, por lo que necesitamos tener acceso a Internet. En el caso de este ejemplo, seleccionaremos la opcion DHCP, y como no estoy usando IPv6 (y me imagino que ustedes tampoco) desactivare la pestana "Enable IPv6 Support".
Instalacion Centos

En el siguiente paso especificaremos cual sera el servidor desde donde halaremos los archivos de instalacion, puedes encontrar la lista en este link. Para este caso insertaremos la siguiente direccion en la seccion "FTP site name" : ftp://ftp.ussg.iu.edu/ y en la seccion "CentOS directory" escribimos: linux/centos/5.4/os/i386/. Generalmente los mirrors de la lista tambien tienen los ISO's de instalacion completa, asi que los archivos para la instalacion "online" generalmente se encuentran en una subcarpeta llamada "os", como se puede ver en la ruta que especificamos en la seccion "CentOS Directory".

Instalacion Centos

Nos movemos al boton "OK" y presionamos enter. Luego veremos un mensaje en pantalla que nos informara que esta descargando algunos archivos ("Retrieving images/minstg2.ing...). Si todo sale bien debe aparecernos la siguiente ventana, en caso contrario habria que revisar la conexion a Internet, la direccion y el directorio digitado o cambiar el mirror.

Instalacion Centos

A partir de esta ventana, el proceso de instalacion es el mismo que en cualquier otra instalacion de Linux, primero nos pedira las particiones que queremos utilizar, si queremos hacer solo una particion o si que queremos definir como particionar nuestro disco. Tambien nos pedira especificar la zona horaria en que nos encontramos y luego especificar el password para el usuario "root". Luego el programa de instalacion nos llevara a la seleccion de seleccion de paquetes que seran instalados, como queremos una instalacion lo mas basica posible, de-seleccionaremos la opcion "Desktop-Gnome" y dejaremos las demas sin seleccionar. Seleccionaremos en esta ventana la opcion "Customize Software selection", esto nos permitira quitar de la lista de instalacion otros paquetes innecesarios.

Instalacion Centos

Nos movemos nuevamente al boton "OK" y se nos presentara una segunda ventana con los paquetes de forma mas detallada, aqui solo seleccionaremos "Base", colocandonos encima y presionando la barra espaciadora. Podemos todavia reducir mas nuestra instalacion presionando "F2" encima de "Base", esto nos presentara el detalle de los paquetes de este grupo. Si se fijan, hay paquetes que podemos eliminar, como aspell y aspell-en (diccionarios), finger, wireless-tools, entre otros. Una vez seleccionados los paquetes que vamos a instalar seleccionarmos "OK", el programa nos notificara que guardara un log de la instalacion, procedera a formatear el disco e inciara la descarga de los paquetes.

Instalacion Centos

En este punto lo que resta es esperar a que los paquetes se descarguen, el timpo que tardara dependera se nuestra conexion a Internet. Bueno, espero que esto les haya sido provechoso, en los proximos post hablare sobre la instalacion de Samba y como configurarlo para formar parte de un dominio Windows.