Instalando OwnCloud en Debian Squeeze

Otro apunte para tener nuestra propia nube con el fantástico producto openSource, OwnCloud.

Instalamos los paquetes básicos en nuestro debian:

# apt-get install apache2 php5 php-pear php-xml-parser php5-sqlite php5-json sqlite php5-mysql mp3info curl libcurl3 libcurl3-dev php5-curl zip php5-gd

Ahora, para poder abrir los .tar.bz2:

# apt-get install bzip2

Y descargamos OwnCloud:

# cd /usr/src
# wget -c http://download.owncloud.org/releases/owncloud-4.0.4.tar.bz2
# tar xvf owncloud-4.0.4.tar.bz2
# mv owncloud /var/www/owncloud

Ahora modificamos los permisos de la carpeta /var/www/owncloud :

# chown -R www-data:www-data /var/www/owncloud

Reiniciamos apache:

# /etc/init.d/apache2 restart

Ahora, iniciamos nuestro navegador y finalizamos la instalación:

Ponemos un nombre de usuario + password y le damos al botón de completar la instalación. Elegimos SqlLite o MySQl y el directorio de instalación, en nuestro caso /var/www/owncloud

Y ya tenemos nuestra propia nube instalada 😉

Configurando ntp en debian

Otro apunte. Siempre me dejo por configurar el reloj cuando instalo servidores linux y nunca me acuerdo de documentarlo.

Instalamos los servicios ntp, ntpdate:

# apt-get install ntp ntpdate

Y en un rato tendremos los paquetes instalados. Ahora toca configurar el source; personalmente me gusta el de hora.rediris.es, ya que time.windows.com, no acaba de ir conmigo 😉

Editamos el fichero /etc/ntp.conf

/etc/ntp.conf, configuration for ntpd; see ntp.conf(5) for help

driftfile /var/lib/ntp/ntp.drift

# Enable this if you want statistics to be logged.
#statsdir /var/log/ntpstats/

statistics loopstats peerstats clockstats
filegen loopstats file loopstats type day enable
filegen peerstats file peerstats type day enable
filegen clockstats file clockstats type day enable

# You do need to talk to an NTP server or two (or three).
#server ntp.your-provider.example

# pool.ntp.org maps to about 1000 low-stratum NTP servers. Your server will
# pick a different set every time it starts up. Please consider joining the
# pool:
server hora.rediris.es
server 0.debian.pool.ntp.org iburst dynamic
server 1.debian.pool.ntp.org iburst dynamic
server 2.debian.pool.ntp.org iburst dynamic
server 3.debian.pool.ntp.org iburst dynamic

Y ponemos nuestro servidor preferido, en mi caso, hora.rediris.es

Y ahora a reiniciar el servicio para aplicar cambios:

# /etc/init.d/ntp restart

Depurar – LOGuear el servicio TFTP en linux

Esta entrada es otro apunte…… hace unos días, instalé unos teléfonos nuevos de linksys, de la gama SMB, concretamente los spa5XXG.

Me baje el profiler-compiler tool para hacer los ficheros de configuración y los coloqué en el tftp del cliente….. y no iba….. total, que antes de tocar / modificar, decidí capturar el tráfico.

Instalamos el Ngrep:


# apt-get install ngrep

y una vez finalizado, tecleamos:


# ngrep -d any -P ' ' -W byline -T port 69
asterisk:/var/lib/tftpboot#
asterisk:/var/lib/tftpboot# ngrep -d any -P ' ' -W byline -T port 69
interface: any
filter: (ip or ip6) and ( port 69 )
#
U +77.575570 192.168.2.81:1026 -> 192.168.2.5:69
/spa502G.cfg octet timeout 10 tsize 0
#
U +0.085974 192.168.2.81:1027 -> 192.168.2.5:69
/Cisco/SPA502G/spaxxxx485e8536.cfg octet timeout 10 tsize 0
#
U +170.099226 192.168.2.81:1025 -> 192.168.2.5:69
/spa502G.cfg octet timeout 10 tsize 0
#
U +46.658680 192.168.2.81:1025 -> 192.168.2.5:69
/spaxxxx485e8536.xml octet timeout 10 tsize 0
#
U +48.404018 192.168.2.81:1025 -> 192.168.2.5:69
spa50x_30x_en_v749.xml octet timeout 10 tsize 0
#
U +1.126851 192.168.2.81:1027 -> 192.168.2.5:69
spa50x_30x_es_v749.xml octet timeout 10 tsize 0

Y vemos que pide el fichero spa502G.cfg, que no lo tenía 🙁 y estaba buscando la configuración en el directorio /Cisco/SPA502G/, cosa que no había creado…..

Subsanamos el error y vemos que se los baja correctamente:


U +170.099226 192.168.2.81:1025 -> 192.168.2.5:69
/spa502G.cfg octet timeout 10 tsize 0
#
U +46.658680 192.168.2.81:1025 -> 192.168.2.5:69
/spaxxxx485e8536.xml octet timeout 10 tsize 0
#
U +48.404018 192.168.2.81:1025 -> 192.168.2.5:69
spa50x_30x_en_v749.xml octet timeout 10 tsize 0
#
U +1.126851 192.168.2.81:1027 -> 192.168.2.5:69
spa50x_30x_es_v749.xml octet timeout 10 tsize 0

Enjoy 🙂

ProFTPD Debian + openLdap

Hoy toca documentar la instalación de un servidor FTP en Debian con autenticación de LDAP, unificando todos nuestros logins.

En esta ocasion instalaremos ProFTPD.

Instalamos los paquetes necesarios:

# apt-get install proftpd proftpd-mod-ldap

Nos preguntará si lo queremos integrado en inetd o independiente…. en mi caso me interesa tenerlo como servicio independiente, para poder pararlo sin afectar a otros servicios.

Editamos los ficheros de configuración:

# cd /etc/proftpd
# nano ldap.conf

Y lo dejaremos tal que:

#
# Proftpd sample configuration for LDAP authentication.
#
# (This is not to be used if you prefer a PAM-based SQL authentication)
#


#
# This is used for ordinary LDAP connections, with or without TLS
#
LDAPServer ldap://mi.servidor.open.ldap/??sub
LDAPDNInfo “cn=proftpd,dc=craem,dc=net” “proftpd”
LDAPDoAuth on “dc=craem,dc=net” “(&(uid=%v)(objectclass=posixAccount))”
LDAPAttr uid cn homeDirectory
LDAPAuthBinds on
#
# To be set on only for LDAP/TLS on ordinary port, for LDAP+SSL see below
#LDAPUseTLS on
#

#
# This is used for encrypted LDAPS connections
#
#LDAPServer ldaps://ldap.example.com
#LDAPDNInfo “cn=admin,dc=example,dc=com” “admin_password”
#LDAPDoAuth on “dc=users,dc=example,dc=com”
#

Y explicamos

LDAPServer ldap://mi.servidor.open.ldap/??sub

Ponemos la url de nuestro servidor ldap, más /??sub. En la documentación oficial sale.

LDAPDNInfo “cn=proftpd,dc=craem,dc=net” “proftpd”

En este caso, me he creado un usuario de lectura para openLdap y tener que poner el administrador 😉

LDAPDoAuth on “dc=craem,dc=net” “(&(uid=%v)(objectclass=posixAccount))”
Dónde buscará los usuarios y la propiedad de búsqueda, siendo en este caso posixAccount

LDAPAttr uid cn homeDirectory
El directorio de cada usuario, lo leeremos de la propiedad homeDirectory del ldap, que me parece muuy acertada.

LDAPAuthBinds on
Lo activamos 😉

Ahora vamos a revisar la parte de configuración propia de proFTPD:

Editamos el fichero /etc/proftpd.conf

#
# Alternative authentication frameworks
#
Include /etc/proftpd/ldap.conf
#Include /etc/proftpd/sql.conf

Descomentamos la parte de ldap y lo personalizamos un poco:

UseIPv6 off
# If set on you can experience a longer connection delay in many cases.
IdentLookups off

ServerName “ftp.craem.net”
ServerType standalone
DeferWelcome off

Quito la parte de ipv6, ya que aún no tengo, cambiamos el servername y lo activamos como “pasivo”

Ahora editaremos el fichero /etc/modules.conf para activar que cargue la parte ldap:

# Install proftpd-mod-ldap to use this
LoadModule mod_ldap.c

# Install proftpd-mod-ldap to use this
LoadModule mod_quotatab_ldap.c

En la propiedad homeDirectory el LDAP en cada usuario, hemos de establecer el directorio, que por ejemplo puede ser /home/%usuario%, por ejemplo:

Deberemos de crear el directorio para el usuario…. # mkdir /home/proftpd
Y ahora lo arrancamos para depurar y verlos logs:

# proftpd -nd 10

Si ha ido todo vien, lo paramos y lo arracamos como daemon

# /etc/init.d/proftpd start

And enjoy your ftp server with ldap

Mysql tunning & Zarafa

Estos días, me ha tocado migrar otro exchange a zarafa. Ha ido todo bien, pero a medida que iba incluyendo buzones y la BBDD se iba haciendo grande (> 15 Gb), el rendimiento caía en picado….. al seleccionar emails, tardaba una eternidad y era preocupante.

El servidor, un ML 110 G5, con 5 Gb de ram y un xeon, dedicado solo a correo, debería de ir bien… buscando un poco de info por el amigo google, me dedido a tunear el mysql.

Primero de todo, paramos los servicios:

# /etc/init.d/zarafa-server stop
# /etc/init.d/mysql stop

Una vez parados los servicios, vamos al fichero de configuración /etc/mysql/my.cnf . debajo de la sección [mysqld], insertamos:

innodb_buffer_pool_size = 2048M
innodb_log_file_size = 512M
innodb_log_buffer_size = 32M
max_allowed_packet = 16M
max_connections = 500
innodb_file_per_table

Vamos por partes y leyendo la wiki de zarafa:

innodb_buffer_pool_size: Recomiendan que el tamaño sea el 50% de la ram que tengas, en mi caso 4096 Mb. Esto reduce los accesos a disco para cachearlo en ram.

innodb_log_file_size: es el tamaño de los ficheros de logs. Recomiendan que sea el 25% del tamaño anterior aprox, pero podemos jugar con los valores y medir el rendimiento.

innodb_log_buffer_size = 32M
max_allowed_packet = 16M
max_connections = 500

Los otros tres, recomiendan dejarlo tal cual.

Movemos los ficheros de logs:

#mv /var/lib/mysql/ib_logfile0 /var/lib/mysql/ib_logfile0.bak
#mv /var/lib/mysql/ib_logfile1 /var/lib/mysql/ib_logfile1.bak

Y reiniciamos los servicios:

# /etc/init.d/mysql start
# /etc/init.d/zarafa-server start

and enjoy your server 🙂

Zarafa WebApp y permisos Apache

Esta entrada es otro apunte.

Desde la versión 7.0.6 de zarafa, tenemos el complemento Zarafa WebApp, que añade más flexibilidad a la hora de modificar y personalizar el webaccess de zarafa.

Personalmente, aunque me gusta, el webaccess estándard es muy intuitivo y “like” outlook, cosa que me desagrada un poco, ya que yo, al menos, no busco ese parecido, sinó una alternativa.

El nuevo interfaz, es muy bonito, visual y != de owa (por fin!!!!), así que tras descargar la versión 7.0.7, veo que está disponible este complemento como paquete de instalación:

root@zeus:/usr/src/zcp-7.0.7-34256-debian-6.0-x86_64# ls

helpers.inc
install.sh
libical0_0.44-3_amd64.deb
libical-dev_0.44-3_amd64.deb
libvmime0_0.9.2+svn603-3_amd64.deb
libvmime-dev_0.9.2+svn603-3_amd64.deb
php5-mapi_7.0.7-34256_amd64.deb
python-mapi_7.0.7-34256_amd64.deb
uninstall.sh
zarafa_7.0.7-34256_all.deb
zarafa-client_7.0.7-34256_amd64.deb
zarafa-common_7.0.7-34256_amd64.deb
zarafa-contacts_7.0.7-34256_amd64.deb
zarafa-dagent_7.0.7-34256_amd64.deb
zarafa-dev_7.0.7-34256_amd64.deb
zarafa-gateway_7.0.7-34256_amd64.deb
zarafa-ical_7.0.7-34256_amd64.deb
zarafa-indexer_7.0.7-34256_amd64.deb
zarafa-libarchiver_7.0.7-34256_amd64.deb
zarafa-libs_7.0.7-34256_amd64.deb
zarafa-licensed_7.0.7-34256_amd64.deb
zarafa-monitor_7.0.7-34256_amd64.deb
zrafa-server_7.0.7-34256_amd64.deb
zarafa-spooler_7.0.7-34256_amd64.deb
zarafa-utils_7.0.7-34256_amd64.deb
zarafa-webaccess_7.0.7-34256_all.deb
zarafa-webapp_1.0-34265_all.deb
#

Una vez instalamos todos los paquetes, hemos de cambiar los permisos:

# chown www-data:www-data /var/lib/zarafa-webapp/tmp/

Y nos aseguramos de que tenemos instaladas todas las dependencias para poder usarlo correctamente:

# apt-get install php5-curl

Y reiniciamos el apache

# /etc/init.d/apache2 restart

tecleamos en el navegador:

https://ip.del.servidor/webapp

y ahora vemos la nueva interfaz:

Instalando vmware tools en debian squeeze

Otra entrada que es más un apunte.

Una vez instalado del debian en nuestro vmware eSXI, instalaremos las tools.

Primero, desde la máquina, en el vmware, le damos a “install vmware tools”.

Montamos el cd:

# mount /dev/cdrom

Instalamos unos paquetes básicos…

apt-get install gcc make
apt-get install linux-headers-$(uname -r)

y luego …

# ./vmware-install.pl

Instalando BigBlueButton en Debian Squeeze

Tenía pendiente instalar el bigBlueButton sobre Debian…. aquí está la guia.

Primero, hemos de añadir los repositorios de ubuntu:

# wget http://ubuntu.bigbluebutton.org/bigbluebutton.asc -O- | apt-key add –
# wget http://archive.bigbluebutton.org/bigbluebutton.asc
# sudo apt-key add bigbluebutton.asc
# echo “deb http://ubuntu.bigbluebutton.org/lucid/ bigbluebutton-lucid main”
| sudo tee /etc/apt/sources.list.d/bigbluebutton.list
# echo “deb http://us.archive.ubuntu.com/ubuntu/ lucid multiverse”
| sudo tee -a /etc/apt/sources.list
# apt-get update

Añadimos la gestión de usuarios:

aptitude install sudo

Y más cosillas

#aptitude install libgmp3c2
# cd /usr/src
# wget http://ubuntu.mirror.cambrium.nl/ubuntu//pool/main/m/mpfr/libmpfr1ldbl_2.4.2-3ubuntu1_amd64.deb
# dpkg -i libmpfr1ldbl_2.4.2-3ubuntu1_amd64.deb

y preparamos para nginx:

mkdir -p /var/www/nginx-default/
touch /var/www/nginx-default/50x.html

Ahora instalamos BigBlueButton con asterisk:

aptitude install bbb-voice-conference bbb-client bigbluebutton

Esperamos un rato y acabamos…

bbb-conf –clean
bbb-conf –check
bbb-conf –setip tu.ip.bbb.es

Enjoy your BBB

OwnCloud y OpenLdap backend

Esta entrada es más un apunte…. me ha costado varias pruebas conseguirlo.

OwnCloud es un producto magnífico para tener una “nube” personal, que tan de moda está ahora. Hice una máquina virtual para probarla y tras varios días jugando con ella, decidí tener la auth. de usuarios vía openLdap… así sigo teniendo con el mismo user/pass: Zarafa, Radius 802.1x, validación vpn ipsec, openFire, openMeetings y ahora, OwnCloud…. todo ello openSource y sin tener que depender de micro$oft.

Para hacer la autenticación de openLdap, en la pestaña ajustes / Administrador y colocamos los siguientes ajustes:

Los campos / valores:

Host: IP.DEL.SERVIDOR.OPENLDAP
Port: 389
Name: cn=adminLDAP,dc=dominio,dc=ldap // usuario con derecho de lectura
Password: passwordLDAP //el password
base: dc=dominio,dc=ldap // raíz del openLDAP
User Login Filter: uid=%uid
Display Name Field:uid

Enjoy your OwnCloud with openLDAP 🙂

22/11/2015

Actualizamos los pantallazos:

ownldap01

ownldap02on03ldap

own07

own05

own04ldap

Repositorios Debian :: solucionar problemas en servers antiguos::

Estos días he tenido que aprovechar unos servidores debian para añadir más servicios…… de los primeros debian 5.x (lenny).

Mi sorpresa fue al intentar hacer un apt-get install “paquete” y darme cuenta que los repos que veían por defecto me daban errores.

Googleando un poco, encontré la solución, aqui

Nos vamos al fichero /etc/apt/sources.list y los dejamos con éstos:

## Debian – stable
deb http://ftp.us.debian.org/debian/ stable main contrib non-free
deb-src http://ftp.us.debian.org/debian/ stable main contrib non-free
## Actualizaciones de seguridad
deb http://security.debian.org/ stable/updates main contrib non-free
deb-src http://security.debian.org/ stable/updates main contrib non-free