Latest Entries »


Nuestro escenario comprende una máquina virtual sobre arquitectura x86_64 con Oracle Linux 6.3 y los repositorios de Oracle Linux Server.

1. Instalación del Servidor OCS Inventory-NG 2.0

 1.1. Pre-Configuración.

  • Ingresar al sistema como root.
  • Debemos abrir el puerto 80 tcp, para ello se debe editar el archivo de configuración del Firewall:
#vi /etc/sysconfig/iptables
  • Se debe agregar la siguiente regla después de la línea 10:
-A INPUT -m state –state NEW -m tcp -p tcp –dport 80 -j ACCEPT
  • Guardar los cambios y reiniciar el servicio iptables:
#service iptables restart
  • Configurar SELinux como Permisivo o Deshabilitarlo. Para ello se debe editar el archivo de configuración de SELinux y establecer el parámetro SELINUX=permissive o SELINUX=disabled.
  • Instalar el repositorio EPEL para resolver algunos pre-requisitos.
# wget http://mirror.pnl.gov/epel/6/x86_64/epel-release-6-8.noarch.rpm
# rpm -Uvh epel-release-6-8.noarch.rpm
  • Editar el archivo ‘/etc/yum.repos.d/epel.repo’ y en la entrada [epel], establecer enabled=0 para deshabilitar el repositorio y que no genere conflictos con los repositorios base del sistema.

epel-repo

  • Actualizar el sistema base.
#yum update -y 

1.2. Instalación de Requisitos para OCS NG Server.

  • Se deben instalar los siguientes paquetes desde los repositorios del sistema:
 #yum install -y make wget httpd mysql mysql-server php php-gd php-mysql php-mbstring mod_perl perl-XML-Simple perl-Net-IP perl-SOAP-Lite perl-DBI perl-DBD-MySQL perl-Digest-SHA1
  • Se deben instalar los siguientes paquetes habilitando los repositorios EPEL:
 #yum install -y --enablerepo=epel perl-Apache-DBI perl-Apache2-SOAP perl-XML-Entities

1.3. Configuración de MySQL para OCS NG Server.

  • Instalar BD MySql
#mysql_install_db
  • Configurar el servicio mysqld para que inicie automáticamente al iniciar el sistema.
#chkconfig mysqld on
  • Iniciar el servicio mysqld.
#service mysqld start
  • Establecer contraseña del usuario root para MySQL
#mysql_secure_installation

Pulsar Enter para la actual contraseña, en el siguiente paso, escriba la nueva contraseña para el usuario root y confírmela. Para las siguientes preguntas responda con una ‘y’.

  • Crear la base de datos OCS. Remplazar <somepassword> con su contraseña.
#mysql -u root -p
mysql>CREATE DATABASE ocs;
mysql>GRANT ALL PRIVILEGES ON ocs.* to ocs@localhost IDENTIFIED BY '<somepassword>';
mysql>FLUSH PRIVILEGES;
mysql>QUIT
#

1.4. Instalación OCS (Basado en OCS NG 2.0.4)

  • Ir al directorio de descargas:
#cd /root/Descargas/
  • Descargar el instalador de OCS NG 2.0.4:
#wget http://launchpad.net/ocsinventory-server/stable-2.0/2.0.4/+download/OCSNG_UNIX_SERVER-2.0.4.tar.gz
  • Descomprimir el archivo descargado:
#tar -xvzf OCSNG_UNIX_SERVER*.tar.gz
  • Ir al directorio que contiene el script de instalación.
#cd OCSNG_UNIX_SERVER-2.0.4
  • Ejecutar el script de instalación:
#sh ./setup.sh
  • Digite ‘Y’ para continuar.

Digite ‘Y’ para continuar.

  • Digite Enter para aceptar ‘localhost’ como servidor MySQL.

Digite Enter para aceptar 'localhost' como servidor MySQL

  • Digite Enter para aceptar ‘3306’ como puerto para MySQL.

Digite Enter para aceptar '3306' como puerto para MySQL

  • Digite Enter para aceptar ‘/usr/sbin/httpd’ como binario de Apache.

Digite Enter para aceptar 'usr-sbin-httpd' como binario de Apache

  • Digite Enter para aceptar ‘/etc/httpd/conf/httpd.conf’ como archivo de configuración Apache.

Digite Enter para aceptar 'etc-httpd-conf-httpd-conf' como archivo de configuración Apache

  • Digite Enter para aceptar ‘apache’ como usuario del Servidor Apache.

Digite Enter para aceptar 'apache' como usuario del Servidor Apache

  • Digite Enter para aceptar ‘apache’ como grupo del servidor Apache.

Digite Enter para aceptar 'apache' como grupo del servidor Apache

  • Digite Enter para aceptar ‘/etc/httpd/conf.d/’ como directorio de configuración de Apache.

Digite Enter para aceptar 'etc-httpd-conf-d' como directorio de configuración de Apache

  • Digite Enter para aceptar ‘/usr/bin/perl’ como interprete Perl.

Digite Enter para aceptar 'usr-bin-perl' como interprete Perl

  • Digite ‘Y’ para instalar el servidor de comunicación.

Digite ‘Y’ para instalar el servidor de comunicación

  • Digite Enter para aceptar ‘/var/log/ocsinventory-server’ como directorio de Logs.

Digite Enter para aceptar 'var-log-ocsinventory-server' como directorio de Logs

  • Digite ‘Y’ para renombrar el archivo de configuración del servidor OCS como ‘z-ocsinventory-server.conf’

Digite ‘Y’ para renombrar el archivo de configuración del servidor OCS como 'z-ocsinventory-server.conf'

  • Digite ‘Y’ para instalar la consola de administración web del servidor.

Digite ‘Y’ para instalar la consola de administración web del

  • Digite ‘Y’ para continuar.

Digite ‘Y’ para continuar2

  • Digite ‘/var/www’ como locación para los archivos del servidor de administración.

Digite 'var-www' como locación para los archivos del servidor de administración

  • Digite ‘/var/www’ como locación para la carpeta de la Cache.

Digite 'var-www' como locación para la carpeta de la Cache

  • Actualizar la configuración de la Base de Datos para OCS.

Editar ‘/etc/httpd/conf.d/z-ocsinventory-server.conf’

Cambiar línea 26 (OCS_DB_NAME) de 'ocsweb' a 'ocs'
Cambiar línea 27 (OCS_DB_LOCAL) de 'ocsweb' a 'ocs'
Cambiar línea 31 (OCS_DB_PWD) de 'ocs' a la contraseña que se le asignó al usuario ‘osc’

Actualizar la configuración de la Base de Datos para OCS

1.5. Iniciar apache.

  • Se debe configurar el servicio httpd para que inicie automáticamente a cada inicio del sistema:
#chkconfig httpd on
  • Iniciar el servicio
#service httpd start

 Iniciar el servicio  service httpd start1.6. Configuración inicial del OCS

  • Ingresar desde el navegador a http://yourserver/ocsreports. Cargara la página de configuración de la base de datos. Cuando diligencie las credenciales, de clic en Enviar y la base de datos se configurara mediante el script de instalación.

Configuración inicial del OCS

  • Se cargara una página que debe mostrar que todo se ha realizado correctamente. Se pedirá que introduzca una cadena para mostrar un agente la primera vez que entra en contacto con el servidor OCS. Se deja en blanco y clic en enviar.

Configuración inicial del OCS2

  • Cargara una página que informa de que la instalación se completó.

Configuración inicial del OCS3

  • Elimine por seguridad el script de instalación.
#rm -f /var/www/ocsreports/install.php
  • Verificar que el directorio /var/lib/ocsinventory-reports/download este creado, de lo contrario se debe crear y poner al usuario apache y al grupo apache como propietarios.
#mkdir /var/lib/ocsinventory-reports/download
#chown apache:apache /var/lib/ocsinventory-reports/download

user=admin

password=admin

login

 

Se debe cambiar la contraseña del usuario ‘admin’

2. Instalación del Agente OCS NG 2.0.5 en Windows

cliente URL servidor

  • Se completa el setup sin dar más configuraciones. Cuando se complete el proceso de instalación se debe ubicar el icono que se encuentra en la barra de tareas.

icono OCS

  • Se da clic derecho en el icono y luego en la opción de “Ejecutar el Agente OCS Inventory NG ahora”. El sistema confirmara el envió de la información al servidor.

confirmarion de envio de informacio

Al actualizar la consola de administración del Servidor OCS en la pestaña de Computers y podremos ver el nuevo equipo agregado.

al actualizar la consola de administracion

 

3. Instalación del Servidor GLPI 0.84

3.1. Instalación de Requisitos para GLPI 0.84

  • Instalar el siguiente paquete desde los repositorios base del sistema.
 #yum install -y httpd-devel

Nota: Hay algunos paquetes que ya se habían instalado antes en los requisitos para OCS que el GLPI también necesita, por lo tanto si se está realizando instalación de GLPI solamente, se recomienda instalar los paquetes sugeridos en Instalación de Requisitos para OCS NG Server de este manual.

3.2. Configuración de MySQL para GLPI 0.84

  •  Crear la Base de Datos de GLPI. Remplazar <somepassword> con su contraseña.
#mysql -u root -p
mysql>CREATE DATABASE glpi;
mysql>GRANT ALL PRIVILEGES ON glpi.* to glpi@localhost IDENTIFIED BY '<somepassword>';
mysql>FLUSH PRIVILEGES;
mysql>QUIT
#

Deben quedar entonces las siguientes Bases de Datos:

deben quedar entonces las siguientes bd

3.3. Instalación de GLPI (Basado en GLPI 0.84)

#cd /root/Descargas/
#tar -xvzf glpi*.tar.gz
  • Se debe mover la carpeta descomprimida a /var/www/html/
#mv /root/Descargas/glpi /var/www/html/
  • Se deben configurar como propietarios el grupo apache y el usuario apache para las carpetas /var/www/html/glpi/files/ y para /var/www/html/glpi/config/
#chown –R apache:apache /var/www/html/glpi/files/
#chown –R apache:apache /var/www/html/glpi/config/
  • Se debe ingresar desde el navegador a la página http://your_server/glpi, aparecerá un Setup y en el primer paso se debe configurar el idioma.

Se debe ingresar desde el navegador a la página

  • En el segundo paso, se debe aceptar la licencia de GLPI.

En el segundo paso, se debe aceptar la licencia de GLPI

  • En el siguiente paso seleccionar Instalar para hacer una nueva instalación completa.

En el siguiente paso seleccionar Instalar para hacer una nueva instalación completa

  • El setup hará un checklist de los requisitos, si alguno esta fallido, vuelva a revisar las anteriores configuraciones.

El setup hará un checklist de los requisitos

  • El setup pedirá la información para conectarse a la base de datos.

El setup pedirá la información para conectarse a la base de datos

  • Se debe seleccionar la base de datos. El setup traerá las bases de datos en las cuales el usuario tiene permisos de administración, en este caso glpi.

Se debe seleccionar la base de datos

  • El setup confirmara la inicialización de la base de datos.

El setup confirmara la inicialización de la base de datos

  • El setup confirmara que la instalación ha terminado.

El setup confirmara que la instalación ha terminado

  • Cargara entonces la página de login de GLPI, el usuario es glpi y la contraseña es glpi.

página de login de GLPI

  • Al ingresar, aparecerán dos alertas de seguridad.

alertas de seguridad

La primera alerta se refiere a que los usuarios existentes (glpi, tech, normal, post-only) tienen las contraseñas por defecto y deben ser cambiadas. Se puede dirigir al panel de administración de usuarios dando clic sobre la alerta.

  • La segunda alerta se refiere a que el archivo que contiene el script de instalación aún existe en el sistema y por seguridad debe ser eliminado:
#rm -f /var/www/html/glpi/install/install.php

Al ingresar de nuevo ya no aparecen las alertas de seguridad.

Al ingresar de nuevo ya no aparecen las alertas de seguridad

4. Integración de OCS NG 2.0.4 con GLPI 0.84

Al integrar OCS NG con GLPI se tiene el HELP DESK de GLPI más la posibilidad de hacer un inventario de hardware y software totalmente actualizado y automático de OCS y se puede hacer seguimiento de todo lo que se tenga inventariado y con ello conseguir estadísticas de falla, seguimiento del manejo del equipamiento de usuario, etc.

Para integrar OCS NG con GLPI es necesario un  Plugin de GLPI el cual importa toda la información de la base de Datos de OCS a la base de datos de GLPI.

4.1. Instalación del Plugin OCS Inventory NG

  • Descargar desde la página http://plugins.glpi-project.org/spip.php?article154 el Plugin de GLPI para la importación del OCS.
  • Ubicar la consola en el directorio donde se encuentra el Plugin descargado. En este caso /root/Descargas/.
  • Descomprimir el archivo descargado.
#cd /root/Descargas/
#tar -xvzf glpi-ocsinventoryng-1.0.2.tar.gz
  • Copiar la carpeta descomprimida en el directorio /var/www/html/glpi/plugins/
#cp –R /root/Descargas/ocsinventoryng/ /var/www/html/glpi/plugins
  • En la consola de administración de GLPI ir a Configuracion > Plugins

Configuracion Plugins

  • Aparecerá el Plugin, se debe seleccionar la opción Instalar.

Aparecerá el Plugin

  • En el siguiente paso seleccionar Activar.

En el siguiente paso seleccionar Activar

  • Para establecer los valores necesarios para la configuracion de la base de datos del OCS, ir a Plugins > OCS inventory NG.

Plugins OCS inventory NG.

  • Seleccionar Configuración de Servidor OCSNG.

Configuración de Servidor OCSNG

  • Configurar el host de la base de datos.

Configurar el host de la base de datos

 

4.2. Importación de datos.

  • Para la importación de los equipos que están en el OCS a la base de datos del GLPI ir a Plugins > OCS Inventory NG y seleccionar la opción “Import New Computers”

Import New Computers

  • Cargaran entonces los equipos, se seleccionan y se presiona en

Cargaran entonces los equipos

  • Luego se pueden observar los equipos importados en Inventario > Computadores.

Inventario Computadores.

 

Espero les sirva este manual 🙂


En esta oportunidad tendremos el paso a paso de la instalación de Zenoss Core 4.2 sobre Oracle Linux 6.3.

Nuestro escenario comprende una maquina virtual sobre arquitectura x86_64 con Oracle Linux 6.3 solo consola(Basic Server) con los repositorios de Oracle Linux Server.

1. Pre-Configuracion

1.1. Nos logeamos en el sistema como root.

21. Login como root

1.2. Debemos abrir los puertos:

Puertos

Para ello abrimos el archivo de configuración del Firewall:

22. Archivo de configuracion de firewall

Agregamos las Reglas necesarias:

-A INPUT -m state –state NEW -m tcp -p tcp –dport 11211 -j ACCEPT

-A INPUT -m state –state NEW -m udp -p udp –dport 11211 -j ACCEPT

-A INPUT -m state –state NEW -m tcp -p tcp –dport 162 -j ACCEPT

-A INPUT -m state –state NEW -m tcp -p tcp –dport 514 -j ACCEPT

-A INPUT -m state –state NEW -m tcp -p tcp –dport 8080 -j ACCEPT

23. Reglas de firewall para abrir los puertos necesarios para zenoss

Guardamos los cambios y reiniciamos el servicio:

service iptables restart

1.3. Configurar SELinux como Permisivo o Deshabilitarlo. Para ello vamos al archivo de configuración de SELinux y los editamos.

1.4. El Umask debe estar configurado en 022. Para ello vamos al archivo /etc/profile y modificamos la variable UMASK

1.5. Debe existir el usuario zenoss con el home /home/zenoss

1.6. Debemos configurar la interface de red para que tenga acceso a internet

1.7. Debemos buscar y eliminar los rpm que puedan generar conflicto con los paquetes de instalacion de zenoss y sus dependencias.

24. Buscando y eliminando rpm que puedan generar conflicto con los paquetes de instalacion de zenoss

2. Pre-Instalacion

Debemos tener en cuenta que zenoss requiere tener instalado en el sistema:

Oracle Java 1.6 Actualizacion 31 o superior. (1.7 no es soportado.)
RRDtool 1.4.7 o superior
MySQL Community Server 5.5.25 o superior
RabbitMQ 2.8.4 o superior
Nagios Plugins 1.4.15 o superior
Erlang R12B

2.1 Oracle Java

Descargamos JRE 6u31:

wget -O jre-6u31-linux-x64-rpm.bin \
http://javadl.sun.com/webapps/download/AutoDL?BundleId=59622

Debemos darle el permiso de ejecución al archivo de instalación con el comando chmod +x jre-6u31-linux-x64-rpm.bin. Luego, ejecutamos el paquete ./jre-6u31-linux-x64-rpm.bin

26. Instalacion de JRE

Exportamos el home de JAVA en el archivo /etc/profile:

27. Abrir archivo de Profile para configurar el home de JAVA

Agregamos la linea export JAVA_HOME=/usr/java/default al archivo y guardamos los cambios:

28. Exportar Home de JAVA

Nota: Puedes verificar la versión de Java con el comando java -version

2.2 Instalacion de RRDTool

Debemos descargar el rpm para RRDTool:

wget http://pkgs.repoforge.org/rpmforge-release/\
rpmforge-release-0.5.2-2.el6.rf.x86_64.rpm

Para instalar el repositorio ejecutamos el siguiente comando:

yum -y –nogpgcheck localinstall rpmforge-release-0.5.2-2.el6.rf.x86_64.rpm

31. Instalacion completa de rpmforge

Dedemos editar el archivo del repositorio rpmforge para desabilitarlo y así evitar conflictos con los repositorios base del sistema. Abrimos entonces el archivo /etc/yum.repos.d/rpmforge.repo. Luego editas la variable enable, le das el valor 0.


33. Desabilitando repositorio de rpmforge para evitar conflicto con el repositorio base del sistema

Para instalar RRDTool 1.4.7 ejecutamos el siguiente comando habilitando los repositorios rpmforge-extras:

yum -y –enablerepo=rpmforge-extras install rrdtool-1.4.7

35. Error de dependencias para rrdtool desde repositorio rpmforge

Podemos ver que el proceso de instalación no fue correcto, esto es por que desde los repositorios rpmforge no se pudieron resolver ciertas dependencias de rrdtool 1.4.7, dichas dependencias son xorg-x11-fonts-Type1, ruby, libdbi. Debemos entonces instalarlos desde los repositorios base del sistema:

yum  install xorg-x11-fonts-Type1

37. Confirmar instalacion dependencia de rrdtool(xorg-x11-fontd-Type1) desde los repositorios base del sistema

yum  install ruby

40. Instalacion conpleta de dependencia de rrdtool(ruby) desde los repositorios base del sistema

yum install libdbi.x86_64

43. Instalacion completa de dependencia de rrdtool(libdbi) desde los repositorios base del sistema

Al tener las dependencias que presentaban error desde los repositorios rpmforge, colvemos a ejecutar el comando para la instalacion de RRDTool 4.1.7

yum -y –enablerepo=rpmforge-extras install rrdtool-1.4.7

45. Instalacion completa de rrdtool desde el repositorio rpmforge

2.3 Instalar y configurar MySQL Community Server

Debemos descargar desde http://www.mysql.com/downloads/mysql/ los siguientes paquetes:

MySQL Client Utilities (currently MySQL-client-5.5.25a-1.el6.x86_64.rpm)
MySQL Server (currently MySQL-server-5.5.25a-1.el6.x86_64.rpm)
MySQL Shared (currently MySQL-shared-5.5.25a-1.el6.x86_64.rpm)

Luego instalamos los rpm que descargamos:

yum -y –nogpgcheck localinstall MySQL-client-5.5.28-1.el6.x86_64

47. Instalacion completa de Mysql Cliente desde rpm

yum -y –nogpgcheck localinstall MySQL-shared-5.5.28-1.el6.x86_64

49. Instalacion completa de Mysql Share desde rpm

yum -y –nogpgcheck localinstall MySQL-server-5.5.28-1.el6.x86_64

51. Instalacion completa de Mysql Server desde rpm

Debemos crear el archivo /etc/my.cnf e incluir las siguientes lineas:

53. Editando my.cnf

Ahora iniciamos el servicio mysql y configuramos para que inicie en el arranque del sistema en los niveles por defecto(3, 4 y 5) con el comando chkconfig mysql on

54. Iniciando servicio mysql, configurando para que inicie en el arranque del sistema

Debemos configurar el acceso a Mysql con el usuario root desde cualquier host y desde localhost sin password mientras instalamos zenoss.

55. Configurarndo Acceso con root y localhost sin password para mysql

2.4 Repositorios EPEL

Debemos instalar los repositorios EPEL para usarlo en la instalacion de RabbitMQ, para ellos los descargamos con el siguiente comando:

wget -r -l1 –no-parent -A ‘epel*.rpm’ \
http://dl.fedoraproject.org/pub/epel/6/x86_64/

Para instalarlo ejecutamos el siguiente comando:

yum -y –nogpgcheck localinstall dl.fedoraproject.org/pub/epel/6/x86_64/epel-*.rpm

57. Instalacion completa de repositorios epel

Demenos editar el archivo del repositorio EPEL para desabilitarlo y asi evitar conflictos con los repositorios base del sistema. Abrimos entonces el archivo /etc/yum.repos.d/epel.repo. Luego editas la variable enable, le das el valor 0.

59. Deshabilitando repositorios epel para evitar conflictos con los repositorios base del sistema

2.5 Instalacion RabbitMQ

Para instalar RabbitMQ descargamos el rpm:

wget http://www.rabbitmq.com/releases/rabbitmq-server/v2.8.4/\
rabbitmq-server-2.8.4-1.noarch.rpm

Luego lo instalamos habilitando tambien el repositorio EPEL:

yum -y –nogpgcheck –enablerepo=epel localinstall rabbitmq-server-2.8.4-1.noarch.rpm

62. Error de dependencias de rabbitmq

Podemos ver que el proceso de instalación no fue correcto, esto es por que desde los repositorios epel no se pudieron resolver ciertas dependencias de rabbitmq, dichas dependencias son tk, libodbc. Debemos entonces instalarlos desde los repositorios base del sistema:

yum install tk

65. Instalacion completa de dependencia de rabbitmq(tk) desde repositorios base del sistema

yum install unixODBC.x86_64

69. Instalacion completa de dependencia de rabbitmq(libodbc) desde repositorios base del sistema

Al tener la dependencias instaladas ejecutamos de nuevo el comando para la instalación de rabbitmq:

yum -y –nogpgcheck –enablerepo=epel localinstall rabbitmq-server-2.8.4-1.noarch.rpm

71. Instalacion completa de rabbitmq desde repositorios epel

Iniciamos el servicio rabbitmq-server, lo  configuramos para que inicie en el arranque del sistema.

72. Iniciando rabbitmq-server, configurando para que inicie en el arranque del sistema

3. Instalar Zenoss 4.2

Descargamos el paquete de instalacion de Zenoss 4.2 para x86_64 desde http://community.zenoss.org/community/download

Para instalarlo ejecutamos el siguiente comando habilitando el repositorio epel:

yum -y –nogpgcheck –enablerepo=epel localinstall zenoss-4.2.0.el6.x86_64.rpm

74. Error de dependencias de Zenoss 4.2

Podemos ver que el proceso de instalación no fue correcto, esto es por que desde los repositorios epel no se pudieron resolver ciertas dependencias de zenoss, dichas dependencias son liberation-sans-fonts, net-snmp, libgcj, liberation-mono-fonts, memcached, liberation-serif-fonts, net-snmp-utils Debemos entonces instalarlos desde los repositorios base del sistema:

yum install liberation-sans-fonts

77. Instalacion completa de depedencia de Zenoss 4.2(liberation-sans-fonts) desde repositorios base del sistema

yum install  net-snmp 

80. Instalacion completa de  depedencia de Zenoss 4.2(net-snmp) desde repositorios base del sistema

yum install libgcj 

83. Instalacion completa de depedencia de Zenoss 4.2(libgcj) desde repositorios base del sistema

yum install memcached 

88. Instalacion completa de depedencia de Zenoss 4.2(memcache) desde repositorios base del sistema

yum install liberation-serif-fonts 

91. Instalacion completa de depedencia de Zenoss 4.2(liberation-serif-fonts) desde repositorios base del sistema

yum install net-snmp-utils

102. Instalacion completa de  depedencia de Zenoss 4.2(net-snmp-utils) desde repositorios base del sistema

Al tener instaladas los dependencias que presentaban el error, volvemos a ejecutar el comando de instalación de zenoss:

yum -y –nogpgcheck –enablerepo=epel localinstall zenoss-4.2.0.el6.x86_64.rpm

104. Instalacion completa de zenoss 4.2

Iniciamos el servicio memcached, lo configuramos para que inicie en el arranque del sistema

105. Iniciando servicio memcached, configurando para que inicie en el arranque del sistema

Iniciamos el servicio snmpd, lo configuramos para que inicie en el arranque del sistema

106. Iniciando servicio snmpd, configurando para que inicie en el arranque del sistema

Iniciamos el servicio zenoss

108. Aplicando cambios en la base de datos

109. Iniciando Daemos

111. Inicio completo de zenoss 4.2

Para instalar los ZenPacks descargamos el paquete desde http://community.zenoss.org/community/download y ejecutamos el siguiente comando:

yum -y –nogpgcheck localinstall zenoss-core-zenpacks-4.2.0.el6.x86_64.rpm

113. Instalacion completa de zenpacks

Ahora podemos acceder desde un PC de la red local a el link http://ipdeserver:8080

114-acceso-remoto-al-zenoss-por-puerto-8080

Podemos seguir el wizard. Vemos el DashBoard de nuestro sistema de monitoreo Zenoss 4.2 y puedes empezar a agregar los dispositivos de tu red.

117-dashboard

Espero te sirva este post 🙂


Para recuperar la contraseña de un sistema redhat primero debes  iniciar el equipo, cuando cargue el Grub(Gestor de arranque) presiona cualquier tecla:

Carga de el gestor de arranque.

Se abrirá el menu de el gestor de arranque:

Menú del gestor de arranque.

Luego de eso presiona la tecla E para editar esa línea que contiene las opciones de arraque:

Lineas de el Grub

Lo que vamos a hacer es modificar la segunda línea para indicar que inicie en el nivel 1 de arranque Single, es un nivel de ejecución monousuario, sin acceso a servicios de red. Este nivel es regularmente utilizado en tareas de mantenimiento del sistema, y el usuario que ejecuta es root. En este nivel se carga solo las configuraciones y archivos necesarios para que inicie el sistema.

Entonces, con las flechas direccionales nos situamos en la línea 2, presiona de nuevo la tecla E para editar dicha línea:

Linea del Kernel

Le agregamos un 1 al final de la línea:

Editamos la linea del Kernel

Presiona enter, el te devuelve al anterior menú:

Guardamos los cambios

Presiona la tecla b(boot) y el sistema se reinicia, dejalo que inicie  y te va a cargar la siguiente pantalla:

Redhat inició en nivel 1.

Ahora ejecutas el comando passwd para cambiar contraseña de root o passwd userx para cambiar la contraseña de otro usuario(userx es el nombre de el usuario) presionas enter, ingresa la nueva contraseña dos veces:

Cambiando la contraseña.

Ejecutas el comando reboot para reiniciar y cuando inicie el PC te logueas con el usuario que usaste y la contraseña que le colocaste.


En esta actividad lo que haremos es a partir de unas políticas de seguridad para la red, definir Listas de Control de Acceso y aplicarlas en la siguiente topología:

Las políticas de seguridad son:

• los usuarios de las dos sucursales pueden acceder a sitios web en Internet pero no se permite el paso del tráfico externo a la red interna.
• todo el tráfico desde la sucursal 1 a la sucursal 2 es permitido, pero solo el tráfico FTP, HTTP, DNS y HTTPS esta permitido de la sucursal 2 a la sucursal 1.
• todo el tráfico ICMP entre sucursales esta permitido.

Configuraciones basicas de red.

Después de hacer las conexiones físicas segun la topología, vamos a conectarnos al router R1 por consola y vamos a configurar las interfaces de la siguiente manera:

Interface serial 0/0/1

R1>enable
R1#configure terminal
R1(config)#interface serial 0/0/1
R1(config-if)#ip address 192.168.0.1 255.255.255.252
R1(config-if)#no shutdown
R1(config-if)#exit

Interface GigabitEthernet 0/0

R1(config)#interface gigabitEthernet 0/0
R1(config-if)#ip address 192.168.100.1 255.255.255.0
R1(config-if)#no shutdown
R1(config-if)#exit

Interface GigabitEthernet 0/1

R1(config)#interface gigabitEthernet 0/1
R1(config-if)#ip address dhcp
R1(config-if)#exit

Ahora vamos a conectarnos al router R2 por consola y vamos a configurar las interfaces de la siguiente manera:

Interface serial 0/0/1

R2>enable
R2#configure terminal
R2(config)#interface serial 0/0/1
R2(config-if)#ip address 192.168.0.2 255.255.255.252
R2(config-if)#no shutdown
R2(config-if)#exit

Interface GigabitEthernet 0/0

R2(config)#interface gigabitEthernet 0/0
R2(config-if)#ip address 192.168.200.1 255.255.255.0
R2(config-if)#no shutdown

R2(config-if)#clock rate 64000
R2(config-if)#exit

Probamos conectividad entre R1 y R2

R1#ping 192.168.0.2

Type escape sequence to abort.
Sending 5, 100-byte ICMP Echos to 192.168.0.2, timeout is 2 seconds:
!!!!!
Success rate is 100 percent (5/5), round-trip min/avg/max = 1/3/5 ms

Ahora vamos a configurar DHCP en R1 para las redes 192.168.100.0/24 y 192.168.200.0/24

En R1:

R1>enable
R1#configure terminal
Enter configuration commands, one per line. End with CNTL/Z.
R1(config)#ip dhcp pool sucursal1
R1(dhcp-config)#network 192.168.100.0 255.255.255.0
R1(dhcp-config)#default-route 192.168.100.1
R1(dhcp-config)#exit
R1(config)#ip dhcp excluded-address 192.168.100.1
R1(config)#ip dhcp pool sucursal2
R1(dhcp-config)#network 192.168.200.0 255.255.255.0
R1(dhcp-config)#default-route 192.168.200.1
R1(dhcp-config)#exit
R1(config)#ip dhcp excluded-address 192.168.200.1
R1(config)#exit

En R2 para que permita la distribución la petición DHCP hacia R1:

R2>enable
R2#configure terminal
Enter configuration commands, one per line. End with CNTL/Z.
R2(config)#interface gigabitEthernet 0/1
R2(config-if)#ip helper-address 192.168.0.1
R2(config-if)#exit
R2(config)#interface serial 0/0/1
R2(config-if)#ip helper-address 192.168.0.1
R2(config-if)#exit

Ahora configuramos los PC’s y miramos la información IPV4

PC0

PC1

Debemos configurar enrutamiento, en este caso lo haremos por EIGRP de la siguiente manera:

En R1:

R1(config)#router eigrp 110
R1(config-router)#network 192.168.0.0 0.0.0.3
R1(config-router)#network 192.168.100.0
R1(config-router)#exit

En R2:

R2(config)#router eigrp 110
R2(config-router)#network 192.168.200.0
R2(config-router)#network 192.168.0.0 0.0.0.3
R2(config-router)#
%DUAL-5-NBRCHANGE: IP-EIGRP 110: Neighbor 192.168.0.1 (Serial0/0) is up: new adjacency

R2(config-router)#exit

Probamos conectividad entre las dos sucursales:

Ping de PC0 a PC1

Ahora vamos a configurar la salida a Internet por R1, tenemos entonces la interface gigabitEthernet 0/1 conectada a un punto de red y la dirección la tiene por DHCP(192.168.10.45/24), vamos entonces a configurar  PAT.

En R1:

R1>enable
R1#configure terminal
Enter configuration commands, one per line. End with CNTL/Z.

R1(config)#ip access-list standard Nat
R1(config-std-nacl)#permit 192.168.0.0 0.0.255.255
R1(config-std-nacl)#exit

R1(config)#ip nat inside source list Nat interface GigabitEthernet0/1 overload

R1(config)#ip route 0.0.0.0 0.0.0.0 192.168.10.1 254
R1(config)#router eigrp 110
R1(config-router)#redistribute static
R1(config-router)#exit
R1(config)#interface serial 0/0/1
R1(config-if)#ip nat inside
R1(config-if)#exit

R1(config)#interface gigabitEthernet 0/0
R1(config-if)#ip nat inside
R1(config-if)#exit

R1(config)#interface gigabitEthernet 0/1
R1(config-if)#ip nat outside
R1(config-if)#exit

Probemos la salida a internet.

Apliquemos entonces las políticas de seguridad, en R1:

• los usuarios de las dos sucursales pueden acceder a sitios web en internet pero no se permite el paso de el tráfico externo a la red interna. Debemos asegurarnos primero que puedan salir los paquetes que vallan a puertos de destino www(80), dns(53), 443. Creemos la ACL extendida de salida llamada Internet

R1>enable
R1#configure terminal
Enter configuration commands, one per line. End with CNTL/Z.

R1(config)#ip access-list extended Internet
R1(config-ext-nacl)#permit tcp 192.168.0.0 0.0.255.255 any eq 80 53 443

Luego en la misma ACL vamos a permitir el puerto 53 UDP de una manera reflectiva.

R1(config-ext-nacl)#permit udp 192.168.0.0 0.0.255.255 any eq domain reflect UDP timeout 300

para permitir la salida de las conexiones FTP en la misma ACL vamos a permitir los puertos 20 y 21.

R1(config-ext-nacl)#permit tcp any any eq ftp

R1(config-ext-nacl)#permit tcp any any eq ftp-data

Ahora aplicamos esta access-list en la interface gigabitEthernet 0/1 de salida.

R1(config)#interface gigabitEthernet 0/1
R1(config-if)#ip access-group Internet out
R1(config-if)#exit

Después de haber permitido los paquetes www, ftp, dns y https de salida, debemos permitirlos de entrada, para ello creamos otra access-list llamada Deye y permitimos todas las conexiones TCP establecidas, evaluamos la access-list reflexiva(evaluate UDP), además permitimos los puertos 20 y 21 de entrada.

R1>enable
R1#configure terminal
Enter configuration commands, one per line. End with CNTL/Z.

R1(config)#ip access-list extended Deye

R1(config-ext-nacl)#permit tcp any any established

R1(config-ext-nacl)#permit tcp any eq ftp-data any

R1(config-ext-nacl)#permit tcp any any eq ftp

R1(config-ext-nacl)#evaluate UDP

Ahora aplicamos esta access-list en la interface gigabitEthernet 0/1 de entrada.

R1(config)#interface gigabitEthernet 0/1
R1(config-if)#ip access-group Deye in
R1(config-if)#exit

Puedes ir probando  que la salida a internet si funcione, de lo contrario hay que revisar cuál es el problema.

Vamos a aplicar la siguiente politica:

• todo el tráfico desde la sucursal 1 a la sucuarsal 2 es permitido, pero solo el tráfico FTP, HTTP, DNS y HTTPS esta permitido de la sucursal 2 a la sucursal 1.
• todo el tráfico ICMP entre sucursales esta permitido.

Vamos a permitir el tráfico ICMP, FTP, HTTP, DNS y HTTPS de la sucursal1 a la sucursal2, vamos a R2

R1>enable
R1#configure terminal
Enter configuration commands, one per line. End with CNTL/Z.

R2(config)#ip access-list extended Sucursal2

R2(config-ext-nacl)#permit tcp 192.168.0.0 0.0.255.255 any eq www ftp domain 443

R2(config-ext-nacl)#permit udp 192.168.0.0 0.0.255.255 any eq domain

R2(config-ext-nacl)#permit icmp 192.168.0.0 0.0.255.255 192.168.0.0 0.0.255.255

R2(config-ext-nacl)#permit tcp any any eq ftp

R2(config-ext-nacl)#permit tcp any any eq ftp-data

R2(config-ext-nacl)#exit

Luego aplicamos la ACL a la interface serial 0/0/1 de salida

R2>enable
R2#configure terminal
R2(config)#interface serial 0/0/1
R2(config-if)#ip access-group Sucursal2 out
R2(config-if)#exit

Y comprobamos que entre las sucursales se puedan dar ping:

 

Probamos el acceso a un servidor FTP:

 

 

 

A continuación publicó los archivos de configuración de cada router.

R1:

Building configuration…

 

 

Current configuration : 2371 bytes

!

! Last configuration change at 16:01:03 UTC Tue Jun 12 2012

! NVRAM config last updated at 14:49:06 UTC Tue Jun 12 2012

! NVRAM config last updated at 14:49:06 UTC Tue Jun 12 2012

version 15.1

service timestamps debug datetime msec

service timestamps log datetime msec

no service password-encryption

!

hostname R1

!

boot-start-marker

boot-end-marker

!

!

!

no aaa new-model

!

no ipv6 cef

ip source-route

ip cef

!

!

ip dhcp excluded-address 192.168.100.1

ip dhcp excluded-address 192.168.200.1

!

ip dhcp pool sucursal1

network 192.168.100.0 255.255.255.0

default-router 192.168.100.1

!

ip dhcp pool sucursal2

network 192.168.200.0 255.255.255.0

default-router 192.168.200.1

!

multilink bundle-name authenticated

!

!

!

!

!

crypto pki token default removal timeout 0

!

!

voice-card 0

!

!

!

!

!

!

!

license udi pid CISCO2901/K9 sn FTX155183D1

license boot module c2900 technology-package uck9

!

!

!

redundancy

!

!

!

!

!

!

interface Embedded-Service-Engine0/0

no ip address

shutdown

!

interface GigabitEthernet0/0

ip address 192.168.100.1 255.255.255.0

ip nat inside

ip virtual-reassembly in

duplex auto

speed auto

!

interface GigabitEthernet0/1

ip address dhcp

ip access-group Deye in

ip access-group Internet out

ip nat outside

ip virtual-reassembly in

duplex auto

speed auto

!

interface Serial0/0/0

no ip address

shutdown

clock rate 2000000

!

interface Serial0/0/1

ip address 192.168.0.1 255.255.255.252

ip access-group sucursal2in in

ip nat inside

ip virtual-reassembly in

clock rate 2000000

!

!

router eigrp 110

network 192.168.0.0 0.0.0.3

network 192.168.100.0

redistribute static

!

ip forward-protocol nd

!

no ip http server

no ip http secure-server

!

ip nat inside source list Nat interface GigabitEthernet0/1 overload

ip route 0.0.0.0 0.0.0.0 192.168.10.1 254

ip route 0.0.0.0 0.0.0.0 192.168.10.1 254

!

ip access-list standard Nat

permit 192.168.0.0 0.0.255.255

!

ip access-list extended Deye

permit tcp any eq ftp-data any

permit tcp any any eq ftp

permit tcp any any established

evaluate UDP

!

ip access-list extended Internet

permit tcp 192.168.0.0 0.0.255.255 any eq www ftp 443 domain

permit udp 192.168.0.0 0.0.255.255 any eq domain reflect UDP timeout 300

permit tcp any any eq ftp

permit tcp any any eq ftp-data

!

!

!

!

control-plane

!

!

!

!

mgcp profile default

!

!

!

!

!

gatekeeper

shutdown

!

!

!

line con 0

line aux 0

line 2

no activation-character

no exec

transport preferred none

transport input all

transport output pad telnet rlogin lapb-ta mop udptn v120 ssh

stopbits 1

line vty 0 4

login

transport input all

!

scheduler allocate 20000 1000

end

 

 

 

R2:

Building configuration…

 

 

Current configuration : 1884 bytes

!

! Last configuration change at 15:19:37 UTC Tue Jun 12 2012

! NVRAM config last updated at 14:52:01 UTC Tue Jun 12 2012

! NVRAM config last updated at 14:52:01 UTC Tue Jun 12 2012

version 15.1

service timestamps debug datetime msec

service timestamps log datetime msec

no service password-encryption

!

hostname R2

!

boot-start-marker

boot-end-marker

!

!

enable secret 5 $1$40qW$rG8S0okTb.gzSgQBiaCXx.

!

no aaa new-model

!

no ipv6 cef

ip source-route

ip cef

!

!

!

!

!

multilink bundle-name authenticated

!

!

!

!

!

crypto pki token default removal timeout 0

!

!

voice-card 0

!

!

!

!

!

!

!

license udi pid CISCO2901/K9 sn FTX155183DD

license boot module c2900 technology-package uck9

!

!

!

redundancy

!

!

!

!

!

!

interface Embedded-Service-Engine0/0

no ip address

shutdown

!

interface GigabitEthernet0/0

ip address 192.168.200.1 255.255.255.0

ip helper-address 192.168.0.1

duplex auto

speed auto

!

interface GigabitEthernet0/1

no ip address

shutdown

duplex auto

speed auto

!

interface Serial0/0/0

no ip address

shutdown

clock rate 2000000

!

interface Serial0/0/1

ip address 192.168.0.2 255.255.255.252

ip access-group Sucursal2 out

ip helper-address 192.168.0.1

!

!

router eigrp 110

network 192.168.0.0 0.0.0.3

network 192.168.200.0

!

ip forward-protocol nd

!

no ip http server

no ip http secure-server

!

!

ip access-list extended Sucursal2

permit tcp 192.168.0.0 0.0.255.255 any eq www ftp domain 443

permit udp 192.168.0.0 0.0.255.255 any eq domain

permit icmp 192.168.0.0 0.0.255.255 192.168.0.0 0.0.255.255

permit tcp any any eq ftp

permit tcp any any eq ftp-data

!

!

!

!

control-plane

!

!

!

!

mgcp profile default

!

!

!

!

!

gatekeeper

shutdown

!

!

!

line con 0

line aux 0

line 2

no activation-character

no exec

transport preferred none

transport input all

transport output pad telnet rlogin lapb-ta mop udptn v120 ssh

stopbits 1

line vty 0 4

password sena

login

transport input all

!

scheduler allocate 20000 1000

end

 


Administración De Un Sistema De Correo

 

En este manual implementaremos una solución de correo electrónico para la empresa abcdeye, integrada a los servicios de red (Openlap, Dns).

La estructura lógica del servicio de Directorio Ligero es la siguiente.

Estructura OPENLDAP

Para más información de un Servicio de directorio Ligero consulte la página https://serviciosderednoona.wordpress.com/2011/11/15/administracion-de-un-servidor-de-directorio-en-linux/

Tendremos entonces el siguiente escenario

Escenario

Ahora configuramos la información IP en los equipos para que tengan conectividad.

Configuración IP del Servidor

Configuración IP de el Cliente

Como solución para el agente MTA usaremos Postfix, comprobaremos entonces que el servicio este instalado con el comando yum info postfix

Comprobando que el servicio este instalado

Nos aparecerá una información sobre el paquete instalado como la versión, el estado de el paquete, etc. De lo contrario debemos instalarlo ejecutando el comando yum install -y postfix

Despues de comprobar que el servicio este instalado vamos a asegurarnos de que el servicio este corriendo con el comando service postfix status. Si el servicio esta parado debemos iniciarlo con el comando service postfix start.

service postfix status

Para que el servicio se inicie cada vez que inicie la maquina debemos ver el estado de el servicio con el comando chkconfig –list postfix

chkconfig –list postfix

Si el resultado en los distintos niveles es off usted puede ejecutar el comando chkconfig postfix on

Ahora comprobaremos que el puerto 25/TCP este en estado LISTEN (Escuchado) por todas las interfaces, para ello ejecutamos el comando netstat -tan y veremos el siguiente resultado:

netstat -tan

Si el puerto no esta en este estado debe revisar que el demonio de el servicio en esté caso postfix si este iniciado.

Para hacer las pruebas locales con nuestro servidor de correo vamos a abrir una nueva solapa en la consola y crearemos un usuario con el comando useradd username (En este caso el username sera deye), luego le pondremos contraseña con el comando passwd username y debemos darle la contraseña. Luego nos autenticaremos con el usuario ejecutando el comando su – deye

Creación de el usuario local.

Ahora probaremos el servicio local ejecutando el comando mail deye@localhost, al presionar la tecla enter nos pedirá ingresar el asunto del correo, al dar enter podemos ingresar el contenido de el correo, al terminar presionamos la tecla enter, copiamos un punto y enter para dar fin al mensaje.

mail deye@localhost

En la solapa en la que nos autenticamos como deye, ejecutamos el comando mail, se deberá desplegar una menú con el correo que acabamos de enviar.

mail

Para ver el contenido del mensaje tecleamos el numero de mensaje en este caso 1 y enter.

Abriendo el mensaje

Ahora vamos a configurar postfix para que sea bajo el dominio abcdeye.com, para ello debemos decirle al sistema que postfix será el que envie y reciba correos, ejecutamos entonces el comando alternatives –config mta luego se desplegará un menú en el cual debemos escoger el binario para los correos en este caso sendmail.postfix, seleccionamos la opcion 1 (En algunas distribuciones linux viene por defecto sendmail.sendmail)

alternatives –config

Ahora vamos a configurar postfix para que sea bajo el dominio abcdeye.com, para ello abrimos el archivo de configuracion general de el postfix ubicado en la ruta /etc/postfix/main.cf

nano /etc/postfix/main.cf

Primero que todo vamos a la línea mydomain y pondremos nuestro dominio, en este caso mydomain = abcdeye.com

abcdeye.com

Ahora debemos configurar myorigin, con esta línea le estamos diciendo a postfix cuál es el dominio de origen de los correos enviados desde este servidor. Usaremos entonces mydomain.

myorigin = $mydomain

Ahora vamos a configurar las interfaces por las cuales se va a prestar el servicio,  vamos a habilitar todas las interfaces decomentando la línea inet_interfaces = all.

inet_interfaces = all

Ahora vamos a configurar el parámetro mydestination para que los mensajes enviados a estas maquinas o dominios sean almacemados en este servidor.

mydestination

Ahora vamos a configurar las direcciones o subredes a las cuales se les permitirá enviar correos desde este servidor con la variable mynetworks_style, en este caso permitiremos toda mi subred.

mynetworks_style = subnet

Para especificar como se van a almacenar los mensajes de correo, configuramos el parámetro home_mailbox, por defecto postfix guarda los correos en /var/name/username, si habilitamos la opción mailbox los correos se almacenarán en un solo archivo (por defecto /home/username/username), si habilitamos la opción maildir los correos se almacenarán en carpeta y archivo separados (Por defecto /home/username/Maildir/) . Vamos a habilitar la opción maildir.

home_mailbox = maildir/

Vamos a integrar POSTFIX como DOVECOT, comprobaremos entonces que el servicio este instalado con el comando yum info devecot

yum info dovecot

Nos aparecerá una información sobre el paquete instalado como la versión, el estado de el paquete, etc. De lo contrario debemos instalarlo ejecutando el comando yum install -y dovecot

Despues de comprobar que el servicio este instalado vamos a asegurarnos de que el servicio este corriendo con el comando service dovecot status. Si el servicio esta parado debemos iniciarlo con el comando service dovecot start.

Ahora vamos al archivo de configuración principal del dovecot que está ubicado en /etc/dovecot/dovecot.conf

nano /etc/dovecot/dovecot.conf

En este archivo de configuración vamos a configurar los servicios que queremos brindar con el dovecot, en este caso pop, imap y lmtp.

Habilitamos los protocolos pop, imap y lmtp

Ahora especificamos las interfaces por las cuales van a estar en estado LISTEN los protocolos, si habilitamos el * se habilitarán estos protocolos en todas las interfaces con configuración IPv4, si se habilitan los : : los protocolos se habilitarán en todas las interfaces con IPv6.

Habilitamos interfaces con configuración IPv4 y IPv6

Para configurar los puertos por los cuales van a correr estos protocolos editamos el archivo /etc/dovecot/conf.d/10-master.conf

Configuramos los puertos para los protocolos pop e imap

Para el protocolo imap definimos el puerto 143.

Configuramos el puerto 143 para el protocolo IMAP

Para el protocolo pop3 definimos el puerto 110

Configuramos el puerto 143 para el protocolo POP3

Vamos a copiar una plantilla de un archivo de configuración de el dovecot pero primero lo buscaremos en el sistema con el comando find / -iname «*dovecot-ldap*».

Buscando ejemplo de el archivo de configuración dovecot-lda en el sistema de archivos

Copiamos entonces este archivo de ejemplo a la ruta /etc/dovecot/

Copiando archivo de configuración a la ruta /etc/dovecot

Abrimos entonces el archivo de configuración con el comando nano /etc/dovecot/dovecot-ldap.conf.ext, en este archivo especificaremos que la autenticación no va a ser segura.

/etc/dovecot/dovecot-lda.conf.ext

/etc/dovecot/dovecot-lda.conf.ext

/etc/dovecot/dovecot-lda.conf.ext

/etc/dovecot/dovecot-lda.conf.ext

/etc/dovecot/dovecot-lda.conf.ext

/etc/dovecot/dovecot-lda.conf.ext

Guardamos los cambios en el archivo presionando las teclas Ctrol+x, luego la letra s y enter.

/etc/dovecot/dovecot-lda.conf.ext

Ahora debemos configurar a postfix para que busque los usuarios virtuales(en el OpenLdap), abrimos entonces el archivo /etc/postfix/main.cf

Configuramos a postfix para que busque los usuarios en el OpenLdap

Vamos entonces a la ultima línea de el archivo y agregamos las siguientes líneas:

virtual_mailbox_domains = $mydomain – – -> Con esta línea especificamos nuestro dominio.

virtual_mailbox_base = /var/vmail – – -> Con esta línea le especificamos donde va a crear los Maildir para los usuarios.

virtual_mailbox_maps = ldap:/etc/postfix/opencorreos.cf – – ->Con esta línea le especificamos la ubicación de un archivo que crearemos luego, en dicho archivo se encuentra el filtro para que postfix busque el valor de el atributo Mailbox de cada usuario.

virtual_uid_maps = static:1000 – – -> Con esta línea le especificamos al postfix bajo cual usuario se crearán los Maildir de cada usuario, este usuario lo crearemos luego.

virtual_gid_maps = static:1000 – – ->  Con esta línea le especificamos al postfix bajo cual grupo se crearan los Maildir de cada usuario, este grupo lo crearemos luego.

Configuramos postfix para que busque el valor de el atributo Mailbox y cree el Maildir de cada usuario

Creamos entonces el usuario con el comando useradd -d /var/vmail -m -u 1000 vmail

Nota: Con el modificador -d especificamos la casa de el usuario, -m es para que cree el directorio casa, -u para especificarle el uid de el usuario. Automáticamente se creara el grupo vmail con el gid 1000

Creación del usuario vmail con el UID 1000

Para crear el archivo que habíamos especificado en el main.cf ejecutamos entonces el comando nano /etc/postfix/opencorreos.cf

Creación de el archivo para especificar el filtro de los usuarios

En el archivo escribimos las siguientes líneas:

Server_host = 192.168.20.3 – – -> Especifica la IP de el servidor OpenLdap

Server_port = 389 – – -> Especifica el puerto por el cual va a establecer la conexión con el servidor, en este caso el puerto del Ldap.

search_base = dc=abcdeye,dc=com – – -> Especifica la base de partida para hacer la búsqueda de los usuarios.

query_filter= (&(objectclass=mailAccount)(mail=%s)) – – -> Este es el filtro, el & especifica que son varios parámetros de búsqueda, el primer parámetro esta dentro de el paréntesis que le sigue (objectclass=mailAccount), es decir el usuarios debe tener esta clase de objeto, el segundo parámetro es (mail=%s).

result_attribute=mailbox – – -> Especifica que se debe devolver como resultado el valor de el atributo Mailbox `para que postfix cree el directorio donde se almacenaran los correos de dicho usuario.

Version =3 – – -> Esta es la versión de el dovecot.

expresion_limit=1 

Creando filtro

Ahora vamos a configurar parámetros el dovecot para ello nos dirigimos al directorio /etc/dovecot/conf.d/ y listamos el contenido de el directorio, alli se encuentran archivos de configuración de la autenticacion y la integración con otros servicios y protocolos.

Directorio /etc/dovecot/conf.d

Vamos a editar el archivo 10-auth.conf, alli comentamos la siguiente linea:

!include auth-system.conf.ext

Comentamos la linea !include auth-system.conf.ext

Luego  incluimos el archivo de configuracion /etc/dovecot/conf.d/auth-ldap.conf.ext descomentado la linea !include auth-ldap.conf.ext

Descomentamos la linea !include auth-ldap.conf.ext

El archivo /etc/dovecot/conf.d/auth-ldap.conf.ext contiene información de autenticacion para los usuarios LDAP.

Ahora editaremos el archivo  /etc/dovecot/conf.d/10-auth.conf, alli especificaremos el usuario de el sistema que tiene acceso a los mails y el lugar de los buzones de los usuarios.

nano 10-mail.conf

Editamos entonces el parámetro mail_location para especificarle a dovecot cual es el buzon de los usuarios. En este caso los correos se almacenaran en forma maildir y el buzon de los estara en /var/vmail/%n/Maildir.

Especificamos la ubicación de los buzones de los usuarios y la forma de almacenamiento.

Ahora vamos a especificar el usuario y el grupo que tendrá acceso a los buzones de todos los usuarios, en este caso el usuario vmail y el grupo vmail.

Especificamos el usuario y el grupo de el sistema que tendrá acceso a los buzones

Guardamos los cambios en el archivo y abrimos el archivo /etc/dovecot/conf.d/auth-ldap.conf.ext, alli agregamos las siguientes lineas:

userdb {

driver = static

args = uid=vmail gid=vmail home=/var/vmail/%u/Maildir

}

auth-ldap.conf.ext

Guardamos los cambios en el archivo presionando las teclas Ctrol+x, luego la letra s y enter.

Reiniciamos los servicios ejecutando los siguientes comandos:

service dovecot restart

service postfix restart

Reiniciamos los servicios dovecot y postfix

Ahora vamos a incluir en el OpenLdap un nuevo esquema para ponerle a los usuarios los atributos necesarios para la integración con el servicio  de correo, para ellos copiamos el siguiente código y lo pegamos en una archivo que estará en la ruta /etc/openldap/schema/mail.schema

 

Creando archivo /etc/openldap/schema/mail.schema

Código de el nuevo esquema

En el archivo /etc/openldap/slapd.conf debemos incluir el archivo de el nuevo esquema, para ellos abrimos el archivo con el comando nano /etc/openldap/slapd.conf  y agregamos la siguiente linea:

include                    /etc/openldap/schema/mail.schema

Incluimos el archivo /etc/openldap/schema/mail.schema

Reiniciamos el servicio OpenLdap para que incluya el nuevo esquema.

Reiniciamos el demonio slapd (Openldap)

Ahora probamos con la autenticacion de los usuarios de el Directorio Ligero mediante la conexion con telnet por el puerto 110(pop3).

Autenticandonos con el usuario mortiz

Podemos verificar que el Mailbox del usuario mortiz esta creado con el comando ls /var/vmail/mortiz

Listando el mailbox de mortiz

Enviamos un correo a el usuario mortiz.

Enviando un correo a mortiz

Ahora vamos a revisar el buzon de mortiz y veremos el archivo de el correo.

Revisando el buzón de mortiz

Al abrir el archivo veremos información de origen, destino, el asunto y el contenido de el correo.

Revisando el correo de mortiz

Al ver los log de el servicio con el comando tail -f /var/log/maillog podemos ver que el relay es virtual.

Revisando los logs de el mail

Ahora nos falta aplicar las cuotas  a los usuarios para que tengan un limite de espacio.

Primero vamos a editar el archivo /etc/dovecot/conf.d/90-quota.conf, alli vamos a especificar el valor de la quota y como se aplicara.

Abrimos el archivo de configuración de las quotas

 

En el archivo modificamos las siguientes lineas:

plugin {

  quota = maildir

  quota_rule = *:storage=1M – – -> quota_rule es un parametro que especifica el limite de las cuotas en este caso en todo el disco se limita a 1Mega

 quota_rule2 = Trash:storage=+100M – – -> Este quota_rule2 especifica el espacio en la papelera.

}

 

Configuramos las quotas de 1Mega

 

Podemos ademas configurar para que al cumplirse un tope de la quota se den mensajes de alerta al usuario.

Configurar cuando se deben mostrar los mensajes de la quota

 

Con las siguientes lineas establecemos el usuario que puede generar los warnings de las quotas, en este caso vmail, ademas de el binario para generar los mensajes.

service quota-warning {

  executable = script /usr/local/bin/quota-warning.sh

  user = dovecot

  unix_listener quota-warning {

    user = vmail

  }

}

Configuración de los warning de las quotas

 

Guardamos los cambios en el archivo presionando las teclas Ctrol+o y luego Ctrol+x para salir.

Ahora vamos a configurar el archivo /etc/dovecto/conf.d/20-imap.conf

Abriendo el archivo de configuración de el imap

En este archivo configuraremos los plugins que va a cargar el IMAP, en este caso la linea es la siguiente:

mail_plugins = quota imap_quota

Habilitamos las quotas para el IMAP

Guardamos los cambios en el archivo presionando las teclas Ctrol+o y luego Ctrol+x para salir.

Ahora vamos a configurar el archivo principal de postfix (/etc/postfix/main.cf) y le vamos a decir que el que enviara los correos sera dovecot. Incluimos las siguientes lineas:

dovecot_destination_recipient_limit = 1

virtual_transport = dovecot

Configuraremos para que dovecot haga el transporte virtual.

 

Guardamos los cambios en el archivo presionando las teclas Ctrol+o y luego Ctrol+x para salir.

Ahora vamos a el archivo /etc/postfix/master.cf, alli ponemos a dovecot como un metodo externo de entrega agregando las siguientes lineas:

dovecot   unix  –       n       n       –       –       pipe

 flags=DRhu user=vmail:vmail argv=/usr/libexec/dovecot/deliver -f ${sender} -d ${recipient}

Integración de postfix con dovecot como método externo de entrega de correos

Guardamos los cambios en el archivo presionando las teclas Ctrol+o y luego Ctrol+x para salir.

 

Reiniciamos los servicios postfix y dovecot.

Reiniciamos los servicios para que adopten la nueva configuración

 

Ahora intentamos enviar un correo con un archivo adjunto que sobrepase la cuota y nos deberá aparecer un mensaje de error.

Intentando enviar un correo que sobrepasa la quota

 

 


En esta entrada aprenderemos a instalar y configurar varias implementaciones del servicio de directorio LDAP en Linux, identificar los diferentes componentes del servicio de directorio, administrar el servicio de directorio usando las utilidades disponibles en la línea de comandos, administrar el servicio de directorio usando una herramienta de gestión gráfica y llevar a cabo consultas usando las herramientas cliente de LDAP.

Instalación de OpenLdap.

Para la instalación del servidor OpenLdap y de las utilidades cliente, vamos a la terminal e iniciamos sección como root, ejecutamos el comando yum install –y openldap-servers openldap-clients

Nota: el modificador –y es para que no se pregunte durante la instalación si desea instalar dependencias.

instalación del servidor OpenLdap y de las utilidades cliente


Creación del dominio OpenLdap.

Para la creación del dominio OpenLdap vamos a modificar el archivo de configuración ubicado en la ruta /etc/openldap/slapd.conf.bak, primero debemos renombrar el archivo como /etc/openldap/slapd.conf para que el sistema lo tome como archivo de configuración.

En la terminar ejecutamos el comando mv /etc/openldap/slapd.conf.bak /etc/openldap/slapd.conf

renombrando el archivo como /etc/openldap/slapd.conf

Abrimos entonces el archivo ejecutando el comando nano /etc/openldap/slapd.conf

nano /etc/openldap/slapd.conf

En el archivo de configuración vamos a definir el dominio(suffix), el administrador del servidor OpenLdap(rootdn) y la contraseña para el administrador(rootpw).

/etc/openldap/slapd.conf

En este caso el dominio sera abcdeye.com entonces como suffix pondremos «dc=abcdeye,dc=com»

En este caso el root sera deye.abcdeye.com entonces como rootdn pondremos "cn=deye,dc=abcdeye,dc=com"

Para ponerle contraseña cifrada al rootdn ejecutamos en la consola el comando slappaswd, pulsamos enter y debemos escribir la contraseña, pulsamos de nuevo enter y nos pedirá escribirla de nuevo para probar compatibilidad, pulsamos de nuevo enter y se genera un código.

slappaswd

Debemos copiar este codigo y pegarlo en el archivo como rootpw.

Procedemos a guardar los cambios que le hicimos al archivo presionando las teclas Ctrol+o y luego Ctrol+x Para salir.slapd.conf

Ahora debemos copiar una base de datos de ejemplo para OpenLdap en /var/lib/ldap/DB_CONFIG. Para buscar el archivo en el sistema ejecutamos el comando find / -iname ”*DB_CONFIG*”

DB_CONFIG

Copiamos entonces el archivo desde la ruta encontrada con el anterior comando a /var/lib/ldap/DB_CONFIG. Ejecutamos entonces el comando cp /usr/share/doc/openldap-servers-2.4.19/DB_CONFIG.example /var/lib/ldap/DB_CONFIG

base de datos de ejemplo

Copiamos entonces el archivo desde la ruta encontrada con el anterior comando a /var/lib/ldap/DB_CONFIG. Ejecutamos entonces el comando cp /usr/share/doc/openldap-servers-2.4.1.9/DB_CONFIG.example /var/lib/ldap/DB_CONFIG

base de datos de ejemplo

Ahora debemos configurar al usuario ladp como propietarios de la carpeta con el comando chown –R ldap:ldap /var/lib/ldap

Cambiando de propietarios

Procedemos a iniciar el servicio con el comando service slapd start

Reiniciando El Servicio

Instalacion Y Configuracion Del Cliente OpenLdap

Para el cliente vamos a usar en este caso un RedHat 6. Primero debemos instalar las herramientas de Openldap-Clients, para ellos ejecutamos el comando yum install –y openldap-clients

Instalación de herramientas clientes de OpenLdap

Ahora abrimos el archivo de configuración de ldap-cliente donde debemos configurar la dirección del servidor y la base del dominio, ejecutamos entonces el comando nano /etc/openldap/ldap.conf

En la línea BASE pondremos el dominio y en la línea URI pondremos la ruta hacia el servidor en este caso por el protocolo ldap.

Modificando archivo de configuración Ldap-Clients

Vamos a desarrollar los siguientes puntos bajo administración de OpenLdap por Consola.

Crearemos la siguiente estructura ldap, para ello haremos un archivo de configuración LDIF.

Cronograma

Creamos el archivo que vayamos a usar ejecutando el comando touch /etc/openldap/unidadesorganizativas.ldif.

Abrimos el archivo con el comando nano /etc/openldap/unidadesorganizativas.ldif

Allí configuramos las unidades organizativas excluyendo a Web y comercio electrónico, Diseño gráfico, Area de montaje y Post-venta y RMA.

unidadesorganizativas.ldif

Cada entrada va a tener el dn (Nombre completo), las clases de objetos necesarios, y los atributos correspondientes. En este caso para las unidades organizativas vamos a usar los objectclass OrganizationalUnit y Top, como rdn usaremos el ou.

El archivo quedaría de la siguiente manera.

#Unidad organizativa Direccion General

dn: ou=Direccion General, dc=abcdeye, dc=com

objectclass: top

objectclass: organizationalUnit

ou: Direccion General

#Unidad organizativa Sistemas

dn: ou=Sistemas, ou=Direccion General, dc=abcdeye,dc=com

objectclass: top

objectclass: organizationalUnit

ou: Sistemas

#Unidad organizativa Logistica

dn: ou=Logistica, ou=Direccion General, dc=abcdeye, dc=com

objectclass: top

objectclass: organizationalUnit

ou: Logistica

#Unidad organizativa Compras

dn: ou=Compras, ou=Direccion General, dc=abcdeye, dc=com

objectclass: top

objectclass: organizationalUnit

ou: Compras

#Unidad organizativa Direccion de Marketing

dn: ou=Direccion de Marketing, ou=Direccion General, dc=abcdeye, dc=com

objectclass: top

objectclass: organizationalUnit

ou: Direccion de Marketing

#Unidad organizativa Direccion Comercial

dn: ou=Direccion Comercial,ou=Direccion General, dc=abcdeye, dc=com

objectclass: top

objectclass: organizationalUnit

ou: Direccion Comercial

#Unidad Organizativa Comerciles Internos

dn: ou=Comerciales Internos, ou=Direccion Comercial, ou=Direccion General, dc=abcdeye, dc=com

objectclass: top

objectclass: organizationalUnit

ou: Comerciales Internos

#Unidad Organizativa Comerciles Externos

dn: ou=Comerciales Externos, ou=Direccion Comercial, ou=Direccion General, dc=abcdeye, dc=com

objectclass: top

objectclass: organizationalUnit

ou: Comerciales Externos

#Unidad organizativa Direccion Tecnica

dn: ou=Direccion Tecnica, ou=Direccion General, dc=abcdeye, dc=com

objectclass: top

objectclass: organizationalUnit

ou: Direccion Tecnica

#Unidad organizativa Direccion Financiera

dn: ou=Direccion Financiera, ou=Direccion General, dc=abcdeye, dc=com

objectclass: top

objectclass: organizationalUnit

ou: Direccion Financiera

Para agregar las entradas al dominio usaremos la herramienta de consola ldapadd. En este caso la usaremos de la siguiente manera:

ldapadd-Agregando Entrada Al Directorio

-x: Este modificador especifica que la autenticación es simple.

-D “cn=deye,dc=abcdeye,dc=com”: Este modificador sirve para darle el usuario con el cual nos queremos conectar en este caso el rootdn.

-f /etc/openldap/unidadesorganizativas.ldif: Este modificador se usa para dar la ruta al archivo .ldif

-W: Este modificador es para que pida contraseña.

Al digitar la contraseña debe aparecer lo siguiente:

Agregando Entradas Al Directorio

Crearemos un archivo LDIF independiente para cada Unidad Organizativa en los que especificaremos un contenedor llamado usuarios y dentro de este contenedor dos usuarios por cada unidad. Cada usuario se identificará por un uid. Los atributos de cada usuario serán:

  • username
  • common name
  • Apellido
  • Shell por defecto
  • numero de uid
  • numero de gid
  • Directorio particular
  • Password del usuario
  • Correo electrónico

Los usuarios tendrán objectclass inetOrgPerson, posixAccount, top.

Primero crearemos los usuarios de Direccion General, el archivo queda de la siguiente manera:

#Contenerdor Usuarios de Direccion General

dn: ou=Usuarios, ou=Direccion General,dc=abcdeye,dc=com

objectclass: top

objectclass: organizationalUnit

ou: Usuarios

#Usuario 1

dn: uid=cduma, ou=Usuarios, ou=Direccion General,dc=abcdeye,dc=com

uid: duma

cn: duma

sn: zapata

objectclass: inetorgperson

objectclass: posixAccount

objectclass: top

userPassword: {SSHA}DgKTDYHGWRJctbTRDDdxbiQjEuT4GcXB

loginShell: /bin/bash

uidNumber: 10011

gidNumber: 10010

homeDirectory: /home/duma

gecos: duma

mail: duma@abcdeye.com

#Usuario 2

dn: uid=luisG, ou=Usuarios, ou=Direccion General,dc=abcdeye,dc=com

uid: gelipe

cn: gelipe

sn: london

objectclass: posixAccount

objectclass: top

objectclass: inetorgperson

userPassword: {SSHA}DgKTDYHGWRJctbTRDDdxbiQjEuT4GcXB

loginShell: /bin/bash

uidNumber: 10012

gidNumber: 10010

homeDirectory: /home/gelipe

gecos: gelipe

mail: gelipe@abcdeye.com

Agregamos entonces la entrada al directorio de la siguiente forma:

Agregando Usuarios A la Unidad Organizativa ou=Direccion General,dc=abcdeye,dc=com

De la misma forma se hace con los usuarios para las demás unidades organizativas teniendo en cuenta que los archivos .LDIF quedan de la siguiente manera:

#Contenerdor Usuarios de Sistemas

dn: ou=Usuarios,ou=Sistemas,ou=Direccion General,dc=abcdeye,dc=com

objectclass: top

objectclass: organizationalUnit

ou: Usuarios

#Usuario 1

dn: uid=mortiz, ou=Usuarios, ou=Sistemas, ou=Direccion General,dc=abcdeye,dc=com

uid: mortiz

cn: mortiz

sn: ortiz

objectclass: inetorgperson

objectclass: posixAccount

objectclass: top

userPassword: {SSHA}DgKTDYHGWRJctbTRDDdxbiQjEuT4GcXB

loginShell: /bin/bash

uidNumber: 10014

gidNumber: 10013

homeDirectory: /home/mortiz

gecos: mortiz

mail: mortiz@abcdeye.com

#Usuario 2

dn: uid=nonroot, ou=Usuarios,ou=Sistemas, ou=Direccion General,dc=abcdeye,dc=com

uid: nonroot

cn: nonroot

sn: quintero

objectclass: posixAccount

objectclass: top

objectclass: inetorgperson

userPassword: {SSHA}DgKTDYHGWRJctbTRDDdxbiQjEuT4GcXB

loginShell: /bin/bash

uidNumber: 10015

gidNumber: 10013

homeDirectory: /home/nonroot

gecos: nonroot

mail: nonroot@abcdeye.com

#Contenerdor Usuarios de Logistica

dn: ou=Usuarios, ou=Logistica,ou=Direccion General,dc=abcdeye,dc=com

objectclass: top

objectclass: organizationalUnit

ou: Usuarios

#Usuario 1

dn: uid=henry, ou=Usuarios, ou=Logistica,ou=Direccion General,dc=abcdeye,dc=com

uid: henry

cn: henry

sn: roman

objectclass: inetorgperson

objectclass: posixAccount

objectclass: top

userPassword: {SSHA}DgKTDYHGWRJctbTRDDdxbiQjEuT4GcXB

loginShell: /bin/bash

uidNumber: 10017

gidNumber: 10016

homeDirectory: /home/henry

gecos: henry

mail: henry@abcdeye.com

#Usuario 2

dn: uid=nicolas, ou=Usuarios, ou=Logistica,ou=Direccion General,dc=abcdeye,dc=com

uid: nicolas

cn: nicolas

sn: botero

objectclass: posixAccount

objectclass: top

objectclass: inetorgperson

userPassword: {SSHA}DgKTDYHGWRJctbTRDDdxbiQjEuT4GcXB

loginShell: /bin/bash

uidNumber: 10018

gidNumber: 10016

homeDirectory: /home/nicolas

gecos: nicolas

mail: nicolas@abcdeye.com

#Contenerdor Usuarios de Compras

dn: ou=Usuarios, ou=Compras,ou=Direccion General,dc=abcdeye,dc=com

objectclass: top

objectclass: organizationalUnit

ou: Usuarios

#Usuario 1

dn: uid=yessica, ou=Usuarios, ou=Compras,ou=Direccion General,dc=abcdeye,dc=com

uid: yessica

cn: yessica

sn: muñoz

objectclass: inetorgperson

objectclass: posixAccount

objectclass: top

userPassword: {SSHA}DgKTDYHGWRJctbTRDDdxbiQjEuT4GcXB

loginShell: /bin/bash

uidNumber: 10020

gidNumber: 10019

homeDirectory: /home/yessica

gecos: yessica

mail: yessica@abcdeye.com

#Usuario 2

dn: uid=deisy, ou=Usuarios, ou=Compras,ou=Direccion General,dc=abcdeye,dc=com

uid: deisy

cn: deisy

sn: rios

objectclass: posixAccount

objectclass: top

objectclass: inetorgperson

userPassword: {SSHA}DgKTDYHGWRJctbTRDDdxbiQjEuT4GcXB

loginShell: /bin/bash

uidNumber: 10021

gidNumber: 10019

homeDirectory: /home/deisy

gecos: deisy

mail: deisy@abcdeye.com

#Contenerdor Usuarios de Direccion de Marketing

dn: ou=Usuarios, ou=Direccion de Marketing,ou=Direccion General,dc=abcdeye,dc=com

objectclass: top

objectclass: organizationalUnit

ou: Usuarios

#Usuario 1

dn: uid=alejandra,ou=Usuarios,ou=Direccion de Marketing,ou=Direccion General,dc=abcdeye,dc=com

uid: alejandra

cn: alejandra

sn: arredondo

objectclass: inetorgperson

objectclass: posixAccount

objectclass: top

userPassword: {SSHA}DgKTDYHGWRJctbTRDDdxbiQjEuT4GcXB

loginShell: /bin/bash

uidNumber: 10023

gidNumber: 10022

homeDirectory: /home/alejandra

gecos: alejandra

mail: alejandra@abcdeye.com

#Usuario 2

dn: uid=johan, ou=Usuarios, ou=Direccion de Marketing,ou=Direccion General,dc=abcdeye,dc=com

uid: johan

cn: johan

sn: gaviria

objectclass: posixAccount

objectclass: top

objectclass: inetorgperson

userPassword: {SSHA}DgKTDYHGWRJctbTRDDdxbiQjEuT4GcXB

loginShell: /bin/bash

uidNumber: 10024

gidNumber: 10022

homeDirectory: /home/johan

gecos: johan

mail: johan@abcdeye.com

#Contenerdor Usuarios de Direccion Comercial

dn: ou=Usuarios, ou=Direccion Comercial,ou=Direccion General,dc=abcdeye,dc=com

objectclass: top

objectclass: organizationalUnit

ou: Usuarios

#Usuario 1

dn: uid=hernan, ou=Usuarios, ou=Direccion Comercial,ou=Direccion General,dc=abcdeye,dc=com

uid: hernan

cn: hernan

sn: garcia

objectclass: inetorgperson

objectclass: posixAccount

objectclass: top

userPassword: {SSHA}DgKTDYHGWRJctbTRDDdxbiQjEuT4GcXB

loginShell: /bin/bash

uidNumber: 10026

gidNumber: 10025

homeDirectory: /home/hernan

gecos: hernan

mail: hernan@abcdeye.com

#Usuario 2

dn: uid=santiago, ou=Usuarios, ou=Direccion Comercial,ou=Direccion General,dc=abcdeye,dc=com

uid: santiago

cn: santiago

sn: morales

objectclass: posixAccount

objectclass: top

objectclass: inetorgperson

userPassword: {SSHA}DgKTDYHGWRJctbTRDDdxbiQjEuT4GcXB

loginShell: /bin/bash

uidNumber: 10027

gidNumber: 10025

homeDirectory: /home/santiago

gecos: santiago

mail: santiago@abcdeye.com

#Contenerdor Usuarios de Direccion Tecnica

dn: ou=Usuarios, ou=Direccion Tecnica,ou=Direccion General,dc=abcdeye,dc=com

objectclass: top

objectclass: organizationalUnit

ou: Usuarios

#Usuario 1

dn: uid=yeison, ou=Usuarios, ou=Direccion Tecnica,ou=Direccion General,dc=abcdeye,dc=com

uid: yeison

cn: yeison

sn: higita

objectclass: inetorgperson

objectclass: posixAccount

objectclass: top

userPassword: {SSHA}DgKTDYHGWRJctbTRDDdxbiQjEuT4GcXB

loginShell: /bin/bash

uidNumber: 10029

gidNumber: 10028

homeDirectory: /home/yeison

gecos: yeison

mail: yeison@abcdeye.com

#Usuario 2

dn: uid=vanesa, ou=Usuarios, ou=Direccion Tecnica,ou=Direccion General,dc=abcdeye,dc=com

uid: vanesa

cn: vanesa

sn: cardona

objectclass: top

objectclass: inetorgperson

#objectclass: shadowAccount

userPassword: {SSHA}DgKTDYHGWRJctbTRDDdxbiQjEuT4GcXB

loginShell: /bin/bash

uidNumber: 10030

gidNumber: 10028

homeDirectory: /home/vanesa

gecos: vanesa

mail: vanesa@abcdeye.com

#Contenerdor Usuarios de Direccion Financiera

dn: ou=Usuarios, ou=Direccion Financiera,ou=Direccion General,dc=abcdeye,dc=com

objectclass: top

objectclass: organizationalUnit

ou: Usuarios

#Usuario 1

dn: uid=adolfo, ou=Usuarios, ou=Direccion Financiera,ou=Direccion General,dc=abcdeye,dc=com

uid: adolfo

cn: adolfo

sn: marin

objectclass: inetorgperson

objectclass: posixAccount

objectclass: top

userPassword: {SSHA}DgKTDYHGWRJctbTRDDdxbiQjEuT4GcXB

loginShell: /bin/bash

uidNumber: 10032

gidNumber: 10031

homeDirectory: /home/adolfo

gecos: adolfo

mail: adolfo@abcdeye.com

#Usuario 2

dn: uid=sandra, ou=Usuarios, ou=Direccion Financiera,ou=Direccion General,dc=abcdeye,dc=com

uid: sandra

cn: sandra

sn: rendon

objectclass: posixAccount

objectclass: top

objectclass: inetorgperson

userPassword: {SSHA}DgKTDYHGWRJctbTRDDdxbiQjEuT4GcXB

loginShell: /bin/bash

uidNumber: 10033

gidNumber: 10031

homeDirectory: /home/sandra

gecos: sandra

mail: sandra@abcdeye.com

#Contenerdor Usuarios de Comerciales Externos

dn:ou=Usuarios,ou=Comerciales Externos,ou=Direccion Comercial,ou=Direccion General,dc=abcdeye,dc=com

objectclass: top

objectclass: organizationalUnit

ou: Usuarios

#Usuario 1

dn:uid=jazmin,ou=Usuarios,ou=Comerciales Externos,ou=Direccion Comercial,ou=Direccion General,dc=abcdeye,dc=com

uid: jazmin

cn: jazmin

sn: diaz

objectclass: inetorgperson

objectclass: posixAccount

objectclass: top

userPassword: {SSHA}DgKTDYHGWRJctbTRDDdxbiQjEuT4GcXB

loginShell: /bin/bash

uidNumber: 10038

gidNumber: 10037

homeDirectory: /home/jazmin

gecos: jazmin

mail: jazmin@abcdeye.com

#Usuario 2

dn: uid=fredy, ou=Usuarios, ou=Comerciales Externos,ou=Direccion Comercial,ou=Direccion General,dc=abcdeye, dc=com

uid: fredy

cn: fredy

sn: gonzales

objectclass: posixAccount

objectclass: top

objectclass: inetorgperson

userPassword: {SSHA}DgKTDYHGWRJctbTRDDdxbiQjEuT4GcXB

loginShell: /bin/bash

uidNumber: 10039

gidNumber: 10037

homeDirectory: /home/fredy

gecos: fredy

mail: fredy@abcdeye.com

#Contenerdor Usuarios de Comerciales Internos

dn: ou=Usuarios, ou=Comerciales Internos,ou=Direccion Comercial,ou=Direccion General,dc=abcdeye,dc=com

objectclass: top

objectclass: organizationalUnit

ou: Usuarios

#Usuario 1

dn: uid=miguel, ou=Usuarios, ou=Comerciales Internos,ou=Direccion Comercial,ou=Direccion General,dc=abcdeye,dc=com

uid: miguel

cn: miguel

sn: hernandez

objectclass: inetorgperson

objectclass: posixAccount

objectclass: top

userPassword: {SSHA}DgKTDYHGWRJctbTRDDdxbiQjEuT4GcXB

loginShell: /bin/bash

uidNumber: 10035

gidNumber: 10034

homeDirectory: /home/miguel

gecos: miguel

mail: miguel@abcdeye.com

#Usuario 2

dn: uid=roberto, ou=Usuarios, ou=Comerciales Internos,ou=Direccion Comercial,ou=Direccion General,dc=abcdeye,dc=com

uid: roberto

cn: roberto

sn: mejia

objectclass: posixAccount

objectclass: top

objectclass: inetorgperson

userPassword: {SSHA}DgKTDYHGWRJctbTRDDdxbiQjEuT4GcXB

loginShell: /bin/bash

uidNumber: 10036

gidNumber: 10034

homeDirectory: /home/roberto

gecos: roberto

mail: roberto@abcdeye.com

 

A continuación usaremos la herramienta de consola ldapsearch para hacer búsquedas dentro del directorio.

 

Buscaremos todos los objetos de la estructura LDAP de abcdeye.com, para ello ejecutamos el comando ldapsearch –x –D “cn=deye, dc=abcdeye,dc=com” –W

Búsqueda General

 

Buscaremos todos los objetos pertenecientes al departamento Comerciales Internos, para ello usaremos el comando ldapsearch –xLLL –D “cn=deye, dc=abcdeye,dc=com” –W -b “ou=Comerciales Internos, ou=Direccion Comercial, ou=Direccion General, dc=abcdeye, dc=com”

Nota: El modificador –b sirve para especificar desde que contenedor se va a dar el resultado de la búsqueda. El modificador –LLL sirve para suprimir comentarios en el resultado de la búsqueda.

Búsqueda los objetos pertenecientes al departamento Comerciales Internos

 

Realizaremos una búsqueda para todos los objetos pertenecientes a Direccion General, para ello usaremos el comando ldapsearch –x –D “cn=deye, dc=abcdeye,dc=com” –W -b “ou=Comerciales Internos, ou=Direccion Comercial, ou=Direccion General, dc=abcdeye, dc=com”

búsqueda para todos los objetos pertenecientes a Direccion General

Realizaremos una búsqueda para todos los objetos de comerciales internos del directorio de otro servidor y otro dominio, en este caso nos vamos a conectar al servidor 192.168.30.150. Ejecutamos el comando dapsearch –h 192.168.30.150 –x -b “ou=comerciales internos, ou=Direccion comercial, ou=Direccion General, dc=abc25, dc=com”

Nota: El modificador –h es para especificar la ip del servidor que usaremos.

búsqueda para todos los objetos de comerciales internos del directorio de un servidor remoto.

Usando el comando ldapmodify y ldapmodrdn modifique los siguientes atributos de por lo menos 3 usuarios

 

Ò El apellido

Ò Correo electrónico

Ò DN

Modificaremos los usuarios gelipe, duma, mortiz que antes tenían los siguientes atributos:

Atributos de usuario gelipe.

 

Atributos de usuario duma.

Atributos de usuario mortiz.

 

A cada uno le cambiaremos el SurName(sn) y el correo elecronico(mail) creando un archivo .ldif de la siguiente manera:

#Usuario gelipe

dn: uid=gelipe,ou=Usuarios,ou=Direccion General,dc=abcdeye,dc=com

changetype: modify

replace: mail

mail: Lgelipe@abcdeye.com

 

dn: uid=gelipe,ou=Usuarios,ou=Direccion General,dc=abcdeye,dc=com

changetype: modify

replace: sn

sn: londonM

 

#usuario duma

dn: uid=duma,ou=Usuarios,ou=Direccion General,dc=abcdeye,dc=com

changetype: modify

replace: mail

mail: Camiloduma@abcdeye.com

 

dn: uid=duma,ou=Usuarios,ou=Direccion General,dc=abcdeye,dc=com

changetype: modify

replace: sn

sn: ZapataT

 

#usuario mortiz

dn: uid=mortiz,ou=Usuarios,ou=Sistemas,ou=Direccion General,dc=abcdeye,dc=com

changetype: modify

replace: mail

mail: MauricioO@abcdeye.com

 

dn: uid=mortiz,ou=Usuarios,ou=Sistemas,ou=Direccion General,dc=abcdeye,dc=com

changetype: modify

replace: sn

sn: OrtizM

 

Para hacer los cambios ejecutamos el comando:

ldapmodify –f /etc/openldap/changeuserdirgen.ldif –x –D “cn=deye,dc=abcdeye,dc=com” –W

Modificando la información de usuarios.

 

Para comprobar revisaremos de nuevo los atributos de cada usuario:

Nueva información de usuario gelipe.

Nueva información de usuario duma.

Nueva información de el usuario mortiz.

 

Para cambiar el DN usaremos la herramienta de consola ldapmodrdn. Primero debemos crear el archivo .ldif de la siguiente manera:

#Modificar DN para gelipe

uid=gelipe,ou=Usuarios,ou=Direccion General,dc=abcdeye,dc=com

uid=luisgelipe

 

#Modificar DN para duma

uid=duma,ou=Usuarios,ou=Direccion General,dc=abcdeye,dc=com

uid=camiloduma

 

#Modificar DN para duma

uid=mortiz,ou=Usuarios,ou=Sistemas,ou=Direccion General,dc=abcdeye,dc=com

uid=MortizO

 

Ejecutamos el comando:

ldapmodrdn –x –D “cn=deye,dc=abcdeye,dc=com” –W  –f  changeuserdirgenrdn.ldif

 

Modificando el DN a los usuarios gelipe, duma y mortiz.

 

Vamos a verificar haciendo una búsqueda en el directorio con el nuevo DN de la siguiente forma:

Examinando los cambios el los DN.

Examinando los cambios el los DN.

Usando la herramienta por consola ldapdelete vamos a eliminar el usuario vanessa del departamento de dirección técnica, dicho usuario tiene los siguientes atributos:

Usuario vanesa

 

Ejecutamos el comando ldapdelete “uid=vanesa,ou=Direccion Tecnica,ou=Direccion General,dc=abcdeye,dc=com” –x –D “cn=deye,dc=abcdeye,dc=com” –W

 

Eliminando la entrada

Para comprobar vamos a buscar a vanesa con el DN.

Comprobando que la entrada fue eliminada.

Los siguientes puntos los realizaremos implementando una herramienta gráfica llamada Apache Directory Studio.

Vamos  a usar Apache Directory Studio como herramienta gráfica. Después de descargar el paquete, abrimos el archivo ejecutable y empezaremos a usar la aplicación.

Apache Directory Studio

Apache Directory Studio

Para conectarnos con el servidor debemos dar clic el LDAP Connection

Apache Directory Studio

En la siguiente ventana debemos configurar el nombre de la coneccion, la ip del servidor, el puerto y el método de cifrado de la contraseña.

Creando una nueva conexión.

 

Presionamos el botón Next y luego OK

Creando una nueva conexión.

En la siguiente ventana debemos ingresar el DN para el usuario con el que queramos autenticarnos y luego la contraseña.

Creando una nueva conexión.

Presionamos Ok y se creara la conexión.

Nueva conexión.

Abrimos la conexión.

Nueva Conexión.

Crearemos la unidad organizativa Web y comercio electrónico y agregaremos 2 usuarios por cada departamento. Damos entonces clic derecho en Direccion General y seleccionamos la opción New(Nuevo) y luego New Entry(Nueva Entrada)nueva entrada.

Nueva Entrada

Se abrirá un asistente de configuración. En la primera pantalla debemos seleccionar un método de creación para la nueva entrada, en este caso seleccionamos la opción Create entry from scratch (Crear la entrada a partir de cero). Presionamos el botón Next.

 

Creando Nueva Entrada

En la siguiente ventana debemos seleccionar las clases de objeto de la entrada, en este caso seleccionamos organizationalUnit y top. Damos clic en el botón Next.

Agregando Clases De Objetos

En la siguiente ventana debemos seleccionar el contenedor padre de la nueva entrada en este caso ou=Direccion de Marketing,ou=Direccion General,dc=abcdeye,dc=com y el RDN en este caso ou=Web Y Comercio Electronico.

Seleccionando el contenedor padre de la nueva entrada

En la siguiente ventana podemos agregar más atributos a la nueva entrada. Damos clic en el botón finish.

Finalizar el asistente.

Ahora crearemos también la unidad organizativa Post-venta y RMA.

 

Damos entonces clic derecho en Direccion General y seleccionamos la opción New(Nuevo) y luego New Entry(Nueva Entrada)nueva entrada.

Creando Nueva Entrada

Se abrirá un asistente de configuración. En la primera pantalla debemos seleccionar un método de creación para la nueva entrada, en este caso seleccionamos la opción Create entry from scratch (Crear la entrada a partir de cero). Presionamos el botón Next.

 

Creando Nueva Entrada

 

En la siguiente ventana debemos seleccionar las clases de objeto de la entrada, en este caso seleccionamos organizationalUnit y top. Damos clic en el botón Next.

Seleccionando las clases de objeto

En la siguiente ventana debemos seleccionar el contenedor padre de la nueva entrada en este caso ou=Direccion de Tecnica,ou=Direccion General,dc=abcdeye,dc=com y el RDN en este caso ou=Post-Venta Y RMA.

Seleccionando el contenedor padre de la nueva entrada.

En la siguiente ventana podemos agregar más atributos a la nueva entrada. Damos clic en el botón finish.

Finalizando asistente.

Entrada creada.

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 


Las GPOs son un conjunto de politicas del sistema que tienen como objetivo permitir o denegar a usuarios, grupos o equipos  el acceso a aplicaciones y servicios de un sistema informático. Existen una cantidad de directivas de grupo que se usan principalmente en entornos empresariales y públicos con el fin de evadir riesgos de seguridad potenciales a nivel de un entorno Active Directory.  No necesariamente se necesita implementar active directory para aplicar directivas de grupo locales(LGP).

Directivas De Grupo Local.

Estas directivas se aplican a equipos individuales y a diferencia de las directivas de grupo de Active Directory, las politicas locales no se pueden aplicar a un usuario(s) o grupos(s) especificamente, es decir, las directivas de grupo local se aplican a todos los usuarios y grupos de la maquina donde se estén  implementando. Ademas las directivas locales no tienen tantas políticas como las directivas de grupo de Active Directory sobre todo en la parte de Seguridad.

Ver:

Administración de Directivas de Grupo Local 


La implementación de redes de computo en una organización, logran mejorar el rendimiento, administración y productividad de la misma, pues supone la automatización de procesos,  mejor comunicación e integración en labores corporativas, la reducción de gastos y tiempo para la ejecución de tareas; Es por esto que la buena planificación, implementación y mantenimiento de una red se han convertido en el eje central de muchas empresas, por ende hoy en día se han desarrollado los Servicios de Red que buscan hacer más fácil la administración de recursos informáticos, telecomunicaciones y técnicas para el procesamiento y manejo de datos en una Red.

Los servicios de red traen consigo soluciones para la gran cantidad de requerimiento e impedimentos que han traído consigo el crecimiento tanto geográfico como de uso de las redes y las tecnologías de información, mediante la integración de elementos de política y regulaciones para el acceso a los recursos de red, una buena infraestructura, software y  mecanismos de intercambio de información bajo la centralización de administración y control de los servicios.

En este blog usted encontrara información necesaria para la buena proyección, implementación y administración de los diferentes servicios básicos en una red.