Instalación y configuración de iFolder con Directorio Activo & CIFS

Tras bastante tiempo buscando soluciones Open Source que permitan a las organizaciones montarse su propio DropBox nos encontramos con 3 grandes soluciones: iFolder, ownCloud y SparkleShare. Nos quedamos (por ahora) con la primera ya que a día de hoy es la más completa, dispone de clientes para los sistemas operativos más comúnes (Linux, Mac OS X & Windows.) a parte de tener clientes para dispositivos móviles (Android o iOS), permite sincronizar carpetas de forma segura o compartirlas con los usuarios que nos interese. Ideal para usuarios remotos o información compartida entre distintas empresas,

En este documento veremos la instalación de la versión 3.8.0.3 de iFolder en un Ubuntu Server 10.04 x64

 

Lo primero de todo será disponer de un Ubuntu Server 10.04 recién instalado donde montaremos la versión 3.8.0.3 de iFolder. Así que primero actualizamos el equipo:

apt-get update
apt-get upgrade

E Instalamos apache con: apt-get install apache2

 

Habilitamos SSL en apache con:

a2enmod ssl
a2ensite default-ssl

 

Instalamos las dependencias necesarias para iFolder con:

apt-get install build-essential automake autoconf mono-complete liblog4net1.2-cil uuid-dev libxml2-dev mono-apache-server mono-apache-server2 gsoap libapache2-mod-mono libncurses-dev libtool g++-4.3 gcc-4.3 alien

 

apt-get remove liblog4net1.2-cil

 

 

Nos bajamos las versiones de x64 o x86 según nuestra arquitectura con:

http://downloads.sourceforge.net/project/ifolder/iFolder%20Server/3.8.0.3/11.1/ifolder3-enterprise-3.8.0.10191.1-5.1.x86_64.rpm

http://downloads.sourceforge.net/project/ifolder/iFolder%20Server%20Plugins/3.8.0.3/11.1/novell-ifolder-enterprise-plugins-3.8.0.10191.1-3.2.x86_64.rpm

o

http://downloads.sourceforge.net/project/ifolder/iFolder%20Server/3.8.0.3/11.1/ifolder3-enterprise-3.8.0.10191.1-5.1.i586.rpm

http://download.opensuse.org/distribution/11.3/repo/oss/suse/noarch/log4net-1.2.10-58.1.noarch.rpm

Convertimos los paquetes RPM a DEB, los instalamos y reiniciamos apache con:

alien –scripts *.rpm
dpkg -i *.deb
/etc/init.d/apache2 restart

 

Como queremos autenticación LDAP, necesitaremos habilitar en nuestros controladores de dominio el protocolo seguro LDAPS, por lo que las consultas LDAP no irán por el puerto 389 si no por el 636. Podremos seguir este documento para habilitarlo si es que no lo tenemos ya configurado.

Bueno, una vez listo tendremos que importar el certificado de nuestra CA en nuestra máquina de iFolder para que confíe en el certificado de conexión de LDAPS, con:

certmgr -add -c -m Trust /path/certCA.cer (base64)

 

Comenzamos la instalación de Simias con:

/usr/bin/simias-server-setup

Seleccionamos el directorio de datos, por defecto /var/simias/data
Indicamos un nombre de servidor.
Indicaremos la dirección URL pública, por defecto: https://DIRECCIÓN_IP_LOCAL/simias10
Indicaremos la dirección URL privada, por defecto: https://DIRECCIÓN_IP_LOCAL/simias10
Este primer servidor no será un servidor esclavo.

Si hay configuración antes debida a una instalación incompleta/corrupta, deberemos eliminar el contenido antes de: /var/simias/data/simias/

 

Especificamos el nombre del servidor tal y como lo verán los usuarios.
Una descripción del sistema.
Usaremos agente de recuperación de claves.
Path predeterminado /var/simias/data
Usaremos LDAP
Indicamos el nombre del servidor DC al que nos conectaremos.

 

Indicaremos que será LDAP seguro.
Especificamos el DN para el administrador de LDAP & su contraseña: cn=administrador,cn=Users,dc=tundra-it,dc=com
Especificamos el DN para el administrador de Simias & su contraseña: cn=SimiasAdmin,cn=Users,dc=tundra-it,dc=com
Especificamos el DN para el administrador del Proxy LDAP & su contraseña: cn=SimiasProxy,cn=Users,dc=tundra-it,dc=com
Y la base de búsqueda de los usuarios: ou=Usuarios,ou=Tundra IT,dc=tundra-it,dc=com

 

Indicamos el atributo de nombre: sAMAccountName
Configuraremos apache
Habilitamos LDAP Group plugins
Indicamos el usuario de apache: www-data

 

Indicamos el grupo de apache: www-data
Aceptaremos el certificado LDAP

 

Y con esto ya tendremos la parte de servidor configurada!

 

Corregimos el path de mono, y otros paths con:

sed -i ‘s/apache2/mod_mono.conf/apache2/mods-enabled/mod_mono.conf/g’ /etc/apache2/conf.d/simias.conf
ln -s /usr/bin/gmcs2 /usr/bin/gmcs
mkdir -p /var/www/.config/.mono/
chown -R www-data:www-data /var/www/.config/
/etc/init.d/apache2 restart

 

Si queremos instalar en este equipo la gestión administrativa vía web, lo configuraremos con:

/usr/bin/ifolder-admin-setup

Especificaremos el path de acceso.
Requeriremos conexión SSL entre los navegadores e iFolder Web Admin.
Requeriremos conexión SSL entre los servidores iFolder y iFolder Web Admin.
Especificamos la URL de iFolder
Y si tenemos redirección para iChain o AccessGateway

 


Indicamos el usuario de apache: www-data
Indicamos el grupo de apache: www-data
Aceptamos el certificado de servidor
Y listo!

 

Ejecutamos /usr/bin/ifolder-web-setup si es que queremos configurar el Web Access en este equipo:

Especificaremos el path de acceso.
Requeriremos conexión SSL entre los navegadores e iFolder Web Admin.
Especificamos la URL de iFolder
Y si tenemos redirección para iChain o AccessGateway
El usuario apache: www-data

 

Indicamos el grupo de apache: www-data
Aceptamos el certificado de servidor
Y listo!

 

Corregimos de nuevo el path de mono y reiniciamos apache:

sed -i ‘s/apache2/mod_mono.conf/apache2/mods-enabled/mod_mono.conf/g’ /etc/apache2/conf.d/ifolder_admin.conf
sed -i ‘s/apache2/mod_mono.conf/apache2/mods-enabled/mod_mono.conf/g’ /etc/apache2/conf.d/ifolder_web.conf
a2enmod rewrite
/etc/init.d/apache2 restart

 

Ya podremos acceder por tanto a gestionar nuestro servidor de iFolder desde cualquier navegador en: https://DIRECCIÓN_IP_iFOLDER/admin, nos loguearemos con el administrador que generamos anteriormente.

 

En la pestaña “Usuarios” veremos todos los usuarios del contenedor LDAP que especificamos anteriormente en caso de haber indicado LDAP; si fuesen locales, desde aquí podríamos generarlos. Lo primero es permitir a los usuarios que nos interese acceso a iFolder, marcaremos cada usuarios y pulsamos en “Provisión”.

 

Seleccionamos el servidor para asignarlo y pulsamos en “Nueva provisión”,

 

Los usuarios podrán acceder desde cualquier navegador: https://DIRECCIÓN_IP_iFOLDER/ifolder y autenticarse.

 

Esta sería la vista del Web Access o cliente web, en este caso el contenido todavía está vacío, desde aquí los usuarios podrán subir/bajarse documentos de forma segura.

 

Si nos instalamos el cliente de iFolder, podremos bajarlo de aquí:

http://sourceforge.net/projects/ifolder/files/iFolder%20Clients/3.8.0.3/

Y nos bajaremos la versión cliente que necesitemos tanto para Windows, Linux o Mac OS.

Una vez instalado tendremos que configurarlo mediante el Asistente de creación de cuentas de iFolder,

 

Especificamos la URL interna o pública del servidor iFolder,

 

Y nuestra cuenta de usuario,

 

Pulsamos en “Conectar”,

 

Nos saldrá una advertencia del certificado si es que no confiamos en él o no pusimos el nombre del servidor asociado con el certificado “Sí”,

 

Crearemos nuestra primera carpeta (si nos interesa) vacía para iFolder.

 

“Finalizar”,

 

Ahora un usuario sobre cualquier carpeta con botón derecho podrá convertirla en una carpeta iFolder, botón derecho > “Convertir en una carpeta iFodler”.

 

Indicamos el servidor iFolder & Aceptamos.

 

Cada carpeta iFolder que tengamos sincronizada con el servidor nos saldrá un icono distinto con el que identificaremos de una forma rápida que el contenido lo tenemos en el servidor iFolder.

 

Sobre cualquier carpeta iFolder podremos compartirla con otros usuarios, podremos forzar una sincronización para tenerla disponible en todas partes con cualquier dispositivo o podremos eliminarla fácilmente y convertirla por tanto en una ‘normal’.

 

Este sería el cliente iFolder si es que necesitamos tener acceso, donde podremos ver en más detalle el estado de las sincronizaciones, usos, quotas…

 

Bueno, en la parte de gestión administrativa, desde la consola web iFolder Administration, en la pestaña “Carpetas iFolder” podremos ver todas las carpetas de todos nuestros usuarios. Así como las carpetas huérfanas que ya no estén en uso.

 

 

En la pestaña “Sistema” podremos cambiar ciertas configuraciones así como configurar directivas de límites por usuario (por número de carpetas, cuota de disco o tamaño máximo de archivo), podremos excluir ciertos archivos/extensiones, el intervalo del sincronizado, cifrado y compartición. Estas configuraciones también se podrían hacer por usuario.

 

En la pestaña “Servidores” saldrán todos los servidores iFolder que tengamos, pulsamos en el único disponible,

 

Y veremos que podremos también realizar una serie de modificaciones básicas como son las URL’s, ver registros del servidor, LDAP o ubicaciones de los almacenes de datos.

 

Si nos interesa, en la pestaña “Informes” podremos configurar una generación programada de un informe detallado con todo el registro y contenido de nuestros servidores iFolder.

 

Usando un repositorio CIFS

Una buena idea es almacenar externamente el contenido de datos de nuestro servidor iFolder a un servidor de red, en este caso será un Windows con una carpeta compartida en una LUN con deduplicación.

 

Instalamos los requisitos:

apt-get install smbfs
update-rc.d -f umountnfs.sh remove
update-rc.d umountnfs.sh stop 15 0 6 .
Confirmamos el UID del usuario ‘www-data’ con: ‘grep www-data /etc/passwd | cut -d: -f3′, esto lo necesitaremos para configurar el montaje automático en /etc/fstab, en nuestro caso será ’33’.

Creamos el archivo ‘/home/USUARIO/.smbcredentials’ en el que indicaremos el usuario con el que se conectará a dicho recurso compartido de Windows, ojo que la contraseña será visible, eso sí solo por usuarios ‘root’ :'( su contenido:

username=TundraIT/UsuarioCIFS
password=CONTRASEÑA

Corregimos permisos:

chown root .smbcredentials
sudo chmod 600 .smbcredentials

Configuramos el automontado automático, agregando al final de /etc/fstab:
//DIRECCIÓN_IP_WINDOWS/CARPETA_COMPARTIDA /mnt/CARPETA_COMPARTIDA cifs iocharset=utf8,credentials=/home/USUARIO/.smbcredentials,uid=33 0 0

Forzamos el montado inmediato con: mount -a

 

 

En la consola de administración de Simias, en la pestaña “Servidores” > SERVIDOR > Almacenamiento de datos > “Añadir…”
Nombre: ParaSimias
Vía completa: /mnt/ParaSimias

 

La seleccionamos y la habilitamos! Con esto tendremos un despliegue completo de iFolder, perfecto para compartir archivos entre usuarios que sean remotos y no esten siempre cerca de la oficina o compartan cierta información común distintas empresas.

A tener en cuenta:

Si queremos elevar el nivel de LOG, modificamos de INFO a DEBUG en los clientes, en:
C:Program FilesiFolderetcsimiasSimias.log4net
C:Users%username%AppDataLocalsimiasSimias.log4net

Para visualizar el LOG del cliente, iremos a:
%appdata%simias
%appdata%ifolder

Si queremos elevar el nivel de LOG, modificamos de INFO a DEBUG en los servidores, en:
/etc/simias/Simias.log4net

Para visualizar el LOG del servidor, iremos a:
cat /var/simias/data/simias/log/Simias.log
cat /var/simias/data/simias/log/Simias.access.log

Héctor Herrero

Autor del blog Bujarra.com
Cualquier necesidad que tengas, no dudes en contactar conmigo, os intentare ayudar siempre que pueda, compartir es vivir 😉 . Disfrutar de los documentos!!!

Últimos Posts de: Héctor Herrero (ver todos)