jueves, 26 de diciembre de 2013

Openfire

Openfire (anteriormente llamado Wildfire y Jive Messenger) es un sistema de mensajeria instantánea GPL y hecho en java y utiliza el protocolo XMPP con el podrás tener tu propio servidor de mensajeria puedes administrar a tus usuarios, compartir archivos, auditar mensajes, mensajes offline, mensajes broadcast, grupos, etc y además contiene plugins gratuitos con diferentes funciones extras.

Panel Web de Administración de Openfire

La administración del servidor se hace a través de una interfaz web, que corre por defecto en el puerto 9090 (HTTP) y 9091 (HTTPS). Los administradores pueden conectarse desde cualquier lugar y editar la configuración del servidor, agregar y borrar usuarios, crear cuartos de conferencia permanentes, etc.

Características

Openfire implementa las siguientes características:
  • Panel de administración web
  • Interfaz para agregar plugins
  • SSL/TLS
  • Amigable
  • Adaptable según las necesidades
  • Conferencias
  • Interacción con MSN, Google Talk, Yahoo messenger, AIM, ICQ, Jingle
  • Estadísticas del Servidor, mensajes, paquetes, etc.
  • Cluster con múltiples servidores
  • Transferencia de Archivos
  • Compresión de datos
  • Tarjetas personales con Avatar
  • Mensajes offline
  • Favoritos
  • Autenticación vía Certificados, Kerbeos, LDAP, PAM y Radius
  • Almacenamiento en Active Directory, LDAP, MS SQL, MySQL, Oracle y PostgreSQL
  • SASL: ANONYMOUS, DIGEST-MD5 y Plain

lunes, 23 de diciembre de 2013

Autenticación de Proxmox 3.x con Active Directory


Proxmox VE soporta múltiples fuentes de autenticación, por ejemplo, Microsoft Active Directory, LDAP, Linux PAM o el servidor de autenticación de ProxmoxVE .

Pues esto es un tema muy interesante para todos ya que podemos
autentificarnos  desde nuestro propio usuario de dominio y muy eficaz cuando hay acceso por mas de una persona a nuestro servidor de Proxmox ya que en los log del sistema nos deja que hizo cada usuario y esto es muy importante a la hora de hacer las auditorías cuando pasas un caso x sabemos que hizo cada usuario que tiene acceso al sistema .

 Y hoy le traigo un tutorial muy bueno a poner en practica autentificaremos nuestro Proxmox contra un dominio y usaremos el Active Directory de Windows Server.

Hacemos click en Centros de Datos, vamos a la parte derecha seleccionamos Autenticación, le damos a Añadir y seleccionamos Active Directory Server.

 

Introducimos los siguientes datos en la caja de diálogo, Añadir:  Active Directory Server y haga click en Agregar.

Dominio: El nombre que se utilizará para este servidor de autenticación.
Domain: Nombre de dominio AD que contiene los usuarios que se utilizarán para la autenticación.
Comentario: Este se mostrará en el cuadro de diálogo de inicio de sesión principal.
Por defecto: Si queremos hacer este el método de autenticación predeterminado.
Servidor: IP del servidor de AD o nombre de host
Servidor de reserva: IP del servidor AD secundaria o nombre de host
Puerto: guardar como predeterminada a menos que su puerto de servidor AD ha cambiado.
SSL: Comunicarnos vía SSL con el servidor de AD.


Ahora ya podemos ver que se nos agrego.
 


Ahora hacemos click en la pestaña Grupos y luego en Crear para crear un nuevo grupo en el servidor Proxmox para sus usuarios de AD. Introduzca un nombre para este grupo y haga clic en Crear.



Y vemos que hemos agregado el grupo ya.

 
Haga clic en la pestaña Permisos, haga clic en Agregar y Permiso de grupo.

Introducimos los ajustes según abajo y haga click en Agregar.

Ruta de acceso: La ruta de acceso en el árbol del servidor que este grupo puede tener acceso. '/' Es la parte superior de la jerarquía y, por tanto, puede tener acceso al servidor completo.
Grupo: el grupo que ha creado en el paso anterior.
Rol: usuarios de la función, o el acceso a nivel de este grupo tendrán.
Propagar: usar estos permisos para cualquier objeto secundario. 



Ahora hacemos click en la pestaña Usuario y luego en Añadir, recordad que el usuario debe ser igual al del dominio.



Vemos que ya agregamos el usuario nuevo a nuestro servidor.



Ahora cerramos la sección que tenemos abierta pero observen están conectado como root@pam


Ahora en la pantalla de bienvenida escribimos nuestro usuario de dominio y nuestra clave y seleccionamos el Dominio de AD que acabamos de crear


Nos conectamos al Proxmox y podemos ver que ya estamos logueado como tony@fca26.co.cu


Y así tenemos le damos acceso a usuarios de AD a nuestro servidor de Proxmox

domingo, 22 de diciembre de 2013

Copia de seguridad de todos los contenedores OpenVZ Proxmox de una sola vez



El siguiente script bash que trabaja con Proxmox y OpenVZ, es para crear una copia de seguridad de todos los contenedores   al mismo tiempo de una forma rápida y segura.

A este pequeño script yo lo llamare full_backup y le daré permiso de ejecución si no saben como darle permiso de ejecución pueden ver el siguiente link 

En el declarare 2 variables una se va a llamar BACKUP_PATH para poner la ruta de la carpeta donde queremos guardar la copia de seguridad del contenedor y en la variable COMPRESS declarare el tipo de comprimido que voy a usar.


BACKUP_PATH=/var/lib/vz/dump
COMPRESS="gzip"
Ejecutaremos en mi caso nano full_backup



#!/bin/bash
#
# Nombre: ful_backup
# Descripcion: Salvar todos los contenedores de OpenVz en Proxmox
# Autor : Julio A. Leyva Osorio

 

BACKUP_PATH=/var/lib/vz/dump
COMPRESS="gzip"


# Comprobar si el directorio existe
if [ ! -d $BACKUP_PATH ]; then
    echo "El directorio $BACKUP_PATH no existe."
    exit 99
fi


IFS=$'\n'
VMARRAY=($(vzlist -a -H))
VMIDS=""
 

for V in ${VMARRAY[@]}
do
    VMIDS="$VMIDS ${V:7:3}"
done
 

if [ -n $VMIDS ]; then
   vzdump $VMIDS --dumpdir $BACKUP_PATH --mode snapshot --compress $COMPRESS --remove 0
fi
 

echo "Backup de VMID(s) $VMIDS completado."


Pues ya tenemos nuestro script conformado solo nos quedaría ejecutarlo y lo haríamos con
./full_backup

sábado, 21 de diciembre de 2013

Cambiar la contraseña a un contenedor OpenVZ desde la terminal del Proxmox

Si somos administradores de un servidor con OpenVZ o Proxmox instalado y queremos cambiar la contraseña de acceso de un usuario a un servidor virtual instalado deberemos utilizar el comando vzctl set con la opción userpasswd de la siguiente forma:

vzctl set <VMID> –userpasswd <USUARIO>:<CONTRASEÑA>

Por ejemplo, vamos a cambiar la contraseña al usuario “root” de la máquina virtualizada con ID 100, la nueva contraseña será “12345678″. El comando quedaría de la siguiente forma:

vzctl set 100 --userpasswd root:12345678
 
Una vez realizado los cambios ya podrá entrar a su servidor virtual con la nueva contraseña.

 Aclaro también que esto puede ser una ventaja y a la vez una desventaja para un sysadmin despistado, en el caso de ser una ventaja seria porque si olvidamos la password de un contenedor que no entramos mucho por ejemplo se la podemos cambiar fácilmente, pero si alguien mal intencionado sin acceso por una casualidad x se topa con la terminal del proxmox abierta también nos podría cambiar la clave de dicho contenedor.

Si somos administradores de un servidor con OpenVZ o Proxmox instalado y queremos cambiar la contraseña de acceso de un usuario a un servidor virtual instalado deberemos utilizar el comando vzctl set con la opción userpasswd de la siguiente forma:
vzctl set <VMID> –userpasswd <USUARIO>:<CONTRASEÑA>
Por ejemplo, vamos a cambiar la contraseña al usuario “root” de la máquina virtualizada con ID 100, la nueva contraseña será “12345678″. El comando quedaría de la siguiente forma:
vzctl set 100 --userpasswd root:12345678
Una vez realizado los cambios ya podrá entrar a su servidor virtual con la nueva contraseña.
- See more at: http://blog.unelink.es/category/wiki/virtualizacion/#sthash.tOsD3DPP.dpuf
Si somos administradores de un servidor con OpenVZ o Proxmox instalado y queremos cambiar la contraseña de acceso de un usuario a un servidor virtual instalado deberemos utilizar el comando vzctl set con la opción userpasswd de la siguiente forma:
vzctl set <VMID> –userpasswd <USUARIO>:<CONTRASEÑA>
Por ejemplo, vamos a cambiar la contraseña al usuario “root” de la máquina virtualizada con ID 100, la nueva contraseña será “12345678″. El comando quedaría de la siguiente forma:
vzctl set 100 --userpasswd root:12345678
Una vez realizado los cambios ya podrá entrar a su servidor virtual con la nueva contraseña.
- See more at: http://blog.unelink.es/category/wiki/virtualizacion/#sthash.tOsD3DPP.dpuf
Si somos administradores de un servidor con OpenVZ o Proxmox instalado y queremos cambiar la contraseña de acceso de un usuario a un servidor virtual instalado deberemos utilizar el comando vzctl set con la opción userpasswd de la siguiente forma:
vzctl set <VMID> –userpasswd <USUARIO>:<CONTRASEÑA>
Por ejemplo, vamos a cambiar la contraseña al usuario “root” de la máquina virtualizada con ID 100, la nueva contraseña será “12345678″. El comando quedaría de la siguiente forma:
vzctl set 100 --userpasswd root:12345678
Una vez realizado los cambios ya podrá entrar a su servidor virtual con la nueva contraseña.
- See more at: http://blog.unelink.es/category/wiki/virtualizacion/#sthash.tOsD3DPP.dpuf

Dar permisos de ejecución a un archivo en Linux



Para alguien que ha trabajado en Linux es muy sencillo  (y de hecho lo es) sin embargo un usuario nuevo no sabe como ni porque dar permisos de ejecución, pues bien daré una breve explicación.
En todos los sistemas operativos los archivos tienen una serie de permisos, los mas comunes son los de lectura y escritura en donde un ejemplo practico de esto es que en un cd no puedes modificar archivos. Para Linux existe ademas los permisos de ejecucion los cuales sirven para que el sistema sea mas seguro entre otras cosas.
Para dar permisos de ejecución a ur archivo solo necesitas dar clic derecho al archivo, busca la opcion propiedades, pestaña permisos y marca la casilla "ejecutar el archivo como un programa" en un entorno gráfico.
 
 y desde nuestra terminal es tambien super fácil solo tenemos que ejecutar el siguiente comando:

sudo chmod +x test.sh
 
donde supongamos que test.sh sea nuestro archivo que queremos que se pueda ejecutar.


viernes, 20 de diciembre de 2013

Instalación de Openfire en Debian 7 Wheeze con AD y MySql




En una Empresa, Red Privada, etc. Necesitamos una mensajería instantánea y una de las mejores soluciones es el servidor jabber Openfire, hay otros como Ejabberd,

Hoy en este artículo te enseñare a configurar el servidor Openfire en Debian 7 unido a el Directorio Activo (AD) de Windows Server y guardaremos la configuración en una base de datos MySQL


Primero ante que todos actualizaremos nuestro Sistema Operativo con las últimas actualizaciones para eso ejecutaremos el siguiente comando en nuestra consola de Debian 7


aptitude update && aptitude full-upgrade


de esta forma verificamos si hay actualizaciones nuevas y en el caso de haber las instalaremos
Ahora instalaremos las dependencias necesaria para el servidor jabber Openfire ejecutando el siguiente comando

aptitude install openjdk-6-jdk openjdk-7-jre mysql-server


Ahora nos pedirá una clave para el usuario root del MySQL.


Y después nos pedirá que verifiquemos la clave de nuevo 



Ya hemos instalado el MySql y el java para nuestro servidor jabber, ahora nos posicionaremos en la carpeta home para descargar nuestro servidor de Openfire ejecutaremos:

cd /home/

ya estamos dentro de la carpeta home y ahora podemos copiar nuestro paquete de instalación de Openfire en esta carpeta o lo podemos bajar directo desde su página web con el comando:

wget http://www.igniterealtime.org/downloads/download-landing.jsp?file=openfire/openfire_3.8.2_all.deb



Ya hemos bajado nuestro servidor de openfire ahora crearemos una base de datos en nuestro MySql llamada jabber para almacenar la configuración y entramos al MySql desde la consola con:

mysql –u root –p

Ahora pondremos la contraseña del usuario root del MySql que pusimos cuando instalamos el paquete y ahora procedemos a crear la base de datos jabber con:

CREATE DATABASE jabber;



Procedemos con la instalación del paquete de Openfire ejecutaremo:

dpkg -i openfire_3.8.2_all.deb

Recordad que en el momento del post la última versión disponible del Openfire es la 3.8.2 y la que estoy usando en estos momentos para el ejemplo.

Ya tenemos nuestro servidor instalado ahora nos toca configurarlo entramos por la ip y el puerto 9090 vía web del servidor donde se encuentra en mi caso es http://192.168.200.102:9090/

Al entrar nos pedirá que seleccionemos el idioma de instalación




A continuación nos pedirá el nombre del dominio jabber por defecto el escoge el nombre de la maquina donde esta instalado, pero yo le pondré que el dominio a usar será jabber.fca26.co.cu



Seguimos y ahora nos aparece para que seleccionemos  la fuente de base de datos y marcamos Conexión Estándar    




Ahora nos toca seleccionar un driver JDBC, en Drivers Predefinidos seleccionamos MySQL y en URL de la Base de datos  pondremos:

jdbc:mysql://localhost:3306/jabber?rewriteBatchedStatements=true

Donde localhost es la misma pc donde esta instalado el openfire y el MySQL, 3306 es el Puerto por defecto del MySQL y jabber es la base de datos creada anterior mente para guardar la informació, en nombre de usuario y contraseña pondremos la del MySQL


 Ahora nos pide que tipo de Seteos  de Perfil queremos hacerle y seleccionamos Servidor de Directorio (LDAP)



Supongamos que en nuestro Directorio Activo hallamos creado previamente un usuario llamado jabber para que sea el encargado de unir el Openfire con el AD, y aquí en Tipo de servidor escogeremos a Active Directory, en servidor pondremos la ip de nuestro servidor donde se encuentra el AD en mi caso 192.168.200.3, el puerto lo dejamos por defecto como viene, en DN base en mi caso mi dominio es fca26.co.cu por eso lo pondré de la siguiente forma dc=fca26,dc=co,dc=cu y en Autentificación pondremos como DN del administrador al usuario jabber que le hemos creado en el AD y en clave pues por su puesto la clave que le asignamos al usuario jabber a la hora de crearlo





En Mapeos de Usuarios, Mapeos de Grupo los dejaremos igual a como el Openfire los pone por defecto solamente le daremos al botón Salvar y Continuar



Ahora nos pide que usuarios queremos que administren el servidor de Openfire por su puesto son usuarios que tengamos en nuestro directorio activo, yo agregué al usuario administrador de dominio y a mi usuario personal tony


Y ya hemos terminado con nuestra instalación 


Solo le damos a Conéctarse a la consola de administración y nos logeamos con nuestro usuario normal de dominio y entramos a servidor Jabber




Y pues ya nuestros usuarios de dominio pueden usar su mismo usuario de la red para el cliente jabber y puedan chatear