VeriSign: Sellos de confianza a 1 euro, pero no ssl

November 3rd, 2010 by admin No comments »

Nos ha llegado a hostingaldescubierto.com la noticia de la campaña de VeriSign de la venta de sellos de confianza a 1€ para hoy día 3 de Noviembre de 2010.
Verisign Trust Seal no debe confundirse con un certificado SSL, tan sólo es una imagen dentro de tu web que garantiza ciertos aspectos de seguridad. Pero NO ES UN CERTIFICADO SSL NI GARANTIZA LA PRIVACIDAD DE LAS TRANSACCIONES.

Esta información se puede comprobar en el enlace del producto:
http://www.verisign.com/trust-seal/trust-and-security/index.html
Donde “Includes SSL encryption for secure online transactions” no aparece en la opción del ‘Trust Seal’.

Hay que leer tranquilamente antes de comprar.

Enterprise Virtualization Conference 2010

October 27th, 2010 by admin No comments »

Redhat

RedHat ha organizado un evento para dar a conocer su propuesta de virtualización. Ayer día 26 se celebró en Barcelona y mañana 28 de Octubre de 2010, se celebra en Madrid.

Enterprise Virtualization Conference 2010, comienza a las 9.30 en el Hotel Puerta de América. La Agenda es la siguiente:

  • Registro y bienvenida
  • Apertura
  • Introducción al mercado de la virtualización
  • Propuesta de valor de RedHat
  • Rompiendo las barreras de la virtualización
  • Panel de expertos: Escenarios de migración
  • HP & AMD : Justos cimentando el camino hacia la eficiencia
  • Case Study virtualizatión: Bacerló Viajes ( muy interesante )
  • Caso práctico: Automatización de sistemas virtualizados ( muy interesante )
  • Conclusiones
  • Cocktail

Para los interesados, este es el enlace :
http://www.rompalasbarreras.es/

[plesk] ERROR: PleskFatalException: Solucionar incosistencias en la base de datos

October 9th, 2010 by admin No comments »

Plesk sigue teniendo algunos defectos , uno de ellos es que a veces se pierde la integridad referencial en algunas tablas como las tablas mail y accounts, que provoca el fallo de las cuentas de correo. Este fallo puede ser :

  • The error that the other server returned was: 550 550 sorry, no mailbox here by that name. (#5.7.17)
  • The error that the other server returned was: 451 451 qq internal bug (#4.3.0)
  • O bien que al acceder a las propiedades de la cuenta de correo o intentar eliminar la cuenta, obtengamos este error en Plesk :
    ERROR: PleskFatalException
    Error: Can't create Account object: Account: unable to select: no such row in the table
    
    0: common_func.php3:146
        psaerror(string 'Error: Can't create Account object: Account: unable to select: no such row in the table')
    1: client.domain.mail.mailname.php:86
        plesk__client__domain__mail__mailname->accessItemOverview(string 'GET', NULL null)
    2: client.domain.mail.mailname.php:160
        __plesk__client__domain__mail__mailname->accessItem(string 'GET', NULL null)
    3: UIPointer.php:596
        UIPointer->access(string 'GET')
    4: plesk.php:38
    

Pongamos el supuesto que en mi servidor tengo dos dominios uno que se llama hostingaldescubierto.com y otro senin.org y que la cuenta que falla con el error de antes es contacto@senin.org.
Vamos a lanzar esta consulta en la base de datos para localizar los registros huérfanos en la taba de mail con accounts.

select domains.name, mail.mail_name, accounts.id, accounts.password from domains, mail left join accounts on mail.account_id = accounts.id where domains.id = mail.dom_id and accounts.id IS null;
+--------------------------+-------------+------+----------+
| name                     | mail_name   | id   | password |
+--------------------------+-------------+------+----------+
| hostingaldescubierto.com | basura      | NULL | NULL     |
| senin.org                | contacto    | NULL | NULL     |
+--------------------------+-------------+------+----------+
2 rows in set (0.01 sec)

Ahora podemos hacer dos cosas o bien borrar la cuenta de correo de la tabla mail o bien insertar una entrada en la tabla accounts. El único problema que puede haber si borramos la entrada en la tabla mail, es que si volvemos a crear la cuenta de correo podría ser que plesk eliminase el buzón con el contenido y lo crease de nuevo, pero no estoy totalmente seguro de esto o si ocurriría en todas las versiones. Yo opto por insertar los registros que falten.

Podríamos proceder generando los valores a insertar en la tabla accounts, y generando unas passwords aleatorias :

select mail.account_id, 'plain', SUBSTRING(MD5(RAND()) FROM 1 FOR 8) from domains, mail left join accounts on mail.account_id = accounts.id where domains.id = mail.dom_id and accounts.id IS null;

Nos devuelve :

+------------+------+-------------------------------------+
| account_id | text | SUBSTRING(MD5(RAND()) FROM 1 FOR 8) |
+------------+------+-------------------------------------+
|       1550 | text | 764dd7d1                            |
|       2310 | text | cdc15fc4                            |
+------------+------+-------------------------------------+

Con lo que montamos la sentencia INSERT y quedaría así:

INSERT INTO accounts select mail.account_id, 'plain', SUBSTRING(MD5(RAND()) FROM 1 FOR 8) from domains, mail left join accounts on mail.account_id = accounts.id where domains.id = mail.dom_id and accounts.id IS null;

Query OK, 2 rows affected (0.04 sec)
Records: 2  Duplicates: 0  Warnings: 0

y ahora verificamos que haya quedado corregido con la primera consulta:

select domains.name, mail.mail_name, accounts.id, accounts.password from domains, mail left join accounts on mail.account_id = accounts.id where domains.id = mail.dom_id and accounts.id IS null;
Empty set (0.01 sec)

Y así tenemos corregido el problema con tan solo copiar y pegar.

[wordpress]

September 28th, 2010 by admin No comments »

WordPress ya está maduro y cosas como esta hacen darle un voto positivo.

Instalado un template en un cliente me aparece este error:

Warning: touch() [function.touch]: SAFE MODE Restriction in effect. The script whose uid is 10277 is not allowed to access /tmp owned by uid 0 in /var/www/vhosts/dominio.comm/httpdocs/wordpress/wp-admin/includes/file.php on line 199  Download failed. Could not create Temporary file.

Es normal en los alojamientos con safe_mode activado y seguramente no quieran desactivarlo por seguridad.

Para ello, nos creamos nuestro propio tmp ( teniendo en cuenta los problemas de seguridad que podría ocasionar )

mkdir /var/www/vhosts/dominio.com/httpdocs/tmp 

# ajustar el usuario real para asignarle al directorio
chown dominio.com:psacln  /var/www/vhosts/dominio.com/httpdocs/tmp

# para que el usuario apache pueda escribir tambien
chmod 777 /var/www/vhosts/dominio.com/httpdocs/tmp

Ahora lo más interesante ,a gregar a nuestro fichero wp-config.php, esta linea :

define('WP_TEMP_DIR','/var/www/vhosts/dominio.com/httpdocs/tmp');

Con este cambio lo que hemos hecho ha sido preprar un tmp e indicarle a wordpress que por defecto ese es el directorio temporal.

Me ha gustado mucho encontrarme con estos detalles que demuestran la madured del proyecto.

[xploit] Grave fallo de seguridad en el kernel 2.6

September 23rd, 2010 by admin No comments »

Aunque llegamos tarde para anunciar la noticia, es necesario comentar aquí la necesidad de aplicar los parches que salieron hace dos días 21 de Septiembre que corrijen un grabe fallo de seguridad en los kernels 2.6 bajo máquinas con arquitectura x86_64.

El fallo se puede explotar localmente en la máquina y consiste en acceder vía  “compat_alloc_user_space()” esta función no está correctamente securizada y no se verifican los tamaños de los punteros con lo que se puede hacer un buffer overflow y todo lo que ello conlleva… Al parecer el fallo lleva 2 años en el kernel y no fué comunicado en todo este tiempo por la gente que ha desarrollado el xploit pero sí lo han utilizado para su beneficio propio:

  • Signed-off-by: David L Stevens <dlstevens@us.ibm.com>
  • Signed-off-by: YOSHIFUJI Hideaki <yoshfuji@linux-ipv6.org>
  • Signed-off-by: David S. Miller <davem@davemloft.net>

El exploit lo podeis localizar en ABftw.c al menos se han preocupado de eliminar las partes jugosas para que los scriptkidies no hagan de las suyas.

Más interesante que leerse el exploit es comprobar que tu máquina no esté infectada y para ello debes descargar este binario y ejecutarlo con un usuario que no sea root ( recuerda que es sólo para máquinas x86_64 ->  uname -p  )


$ wget -N https://www.ksplice.com/support/diagnose-2010-3081
$ chmod +x diagnose-2010-3081
$ ./diagnose-2010-3081
Diagnostic tool for public CVE-2010-3081 exploit — Ksplice, Inc.
(see http://www.ksplice.com/uptrack/cve-2010-3081)

$$$ Kernel release: 2.6.18-194.11.3.el5
$$$ Backdoor in LSM (1/3): checking…not present.
$$$ Backdoor in timer_list_fops (2/3): not available.
$$$ Backdoor in IDT (3/3): checking…not present.

Your system is free from the backdoors that would be left in memory
by the published exploit for CVE-2010-3081.

Para evitar que se explote el fallo hay una solución que lo mitiga y consiste en no permitir ejecutar binarios x86 o i386 en la máquina usando esta linea


# echo ‘:32bits:M::\x7fELF\x01::/bin/echo:’ > /proc/sys/fs/binfmt_misc/register

Provoca que los binarios de 32 bits sólo hagan un “echo” con su nombre de fichero y sus parámetros. El problema es que necesites algunos binarios de 32 bits como es el caso del drweb-update.

De todas formas ya hay kernel nuevo para instalar, reiniciar y listo.

Más información en :

https://access.redhat.com/kb/docs/DOC-40265
https://www.ksplice.com/uptrack/cve-2010-3081
https://rhn.redhat.com/errata/RHSA-2010-0704.html
https://rhn.redhat.com/errata/RHSA-2010-0705.html
http://seclists.org/fulldisclosure/2010/Sep/268

[softaculous] “ERROR LOADING DATA”

August 19th, 2010 by admin No comments »

Softacolous es un software para autoinstalar software en los paneles de alojamiento. Como el application vault de plesk, instalar paquetes como wordpress, joomla, etc… con un sólo click es un alivio para los administradores y para los clientes y esta compañía es en lo que se enfoca, en facilitar la vida de los de usuarios. La version gratuita tiene 60 scripts y la de pago 146 paquetes de software. Es interesante al menos valorar si puede cuadrarnos en nuestra oferta a clientes.

En una prueba e instalación con Plesk 9.3 y Debian, hemos tenido un problema en la instalación con este error ” ERROR LOADING DATA “. La experencia con el soporte técnico ha sido bastante buena, en 24-48 horas han estado contestandonos enviandonos un fichero php para realizar comprobaciones. Después de unos dias hemos dado con el problema.

Al parecer ( por que su script viene cifrado con ioncube y sólo hablamos de suposiciones ) su script ejecuta comandos usando system() o exec() e invocando a php en consola. El problema viene ocasionado por permisos de propietario y safe_mode:

Warning: file_get_contents(): SAFE MODE Restriction in effect. The
script whose uid is 0 is not allowed to access
/var/softtmp/0ae5f781a1f5e65fc712cc66b4b9f8de owned by uid 1001 in
/opt/psa/admin/htdocs/modules/softaculous/load.php on line 11 Warning:
file_get_contents(/var/softtmp/0ae5f781a1f5e65fc712cc66b4b9f8de):
failed to open stream: Inappropriate ioctl for device in
/opt/psa/admin/htdocs/modules/softaculous/load.php on line 11
<pre>

Así que la solución ha sido desactivar safe_mode en /etc/php5/cli/php.ini de esta forma ha funcionado.

[debian] 17 años de Gnu

August 17th, 2010 by admin No comments »

Ayer 16 de Agosto de 2010, la distribución GNU/Linux Debian, ha cumplido 17 años.
Podeis felicitarla en http://thank.debian.net/

[navegadores] comparativa de velocidad de carga de navegadores

August 10th, 2010 by admin 1 comment »

He encontrado este curioso gráfico comparativo de rendimiento de los navegadores. Curiosamente Chrome queda el primero y firefox el segundo :D

comparativa rendimiento navegadores

comparativa rendimiento navegadores

Ideas de cómo elegir una empresa de hosting para dominios

August 2nd, 2010 by admin No comments »

Aprovechando una respuesta en el blog de Leon Labs os pongo aquí la parrafada que le he dejado. Son ideas generales que usaría para valorar un buen hoster ( sólo en el caso de dominios ) con el que espero que contribuya alguién con un comentario :D

Puntos a tener en cuenta para elegir un hoster:

  • Asistencia técnica: El problema es que no hay nada que certifique esto, te tienes que basar un poco en las experiencias de los demás ( cada una será distinta ). Hay tener muy en cuenta hasta donde llega la asistencia y donde se empieza a cobrar. Es muy cómodo creer que te lo van a hacer todo gratis y exigir, pero las cosas no son así :D
  • S.L.A : los SLA ( Service Level Agreement, SLA ) o contratos en los que te aseguran que te indemnizan si cae la linea…. son muy bonitos si tienes una megainfraestructura. Para un cliente de hosting, una caida de unas horas o un día , puede suponer que te devuelvan 10 euros, por que va en porcentaje a lo que pagas :D , por lo que yo volvería al punto 1 , prefiero estar bien informado de lo que pasa con mi incidencia, que me den alternativas y planificar y hablar con mis clientes antes que me paguen 10 euros por las molestias.
  • Tiempos de acceso: es muy recomendable que te den alguna IP donde estaría alojado tu servicio y si no lo buscas, por el AS en ripe o por algún dominio conocido o lo buscas con las domain tools de http://www.domaintools.com/ lánzales unas trazas y ves los saltos y los tiempos de respuesta. Encontrarás de todo, pero unos 30-40 ms está más que de sobra. Piensa también lo que quieras pagar.
  • Velocidad = posicionamiento. Sí y no, puedes tener un ping muy bajo pero tu servidor apache no abrir ni los lunes por la mañana. Hay optimizar y parametrizar el servidor, y todo depende de las webs que tengas alojadas dentro.
  • Cuántos dominios vas a usar: normalmente tenemos entre 2 y 5 dominios con la esperanza de dar un pelotazo con alguno o revenderlo y luego na. Así que mejor elegir un plan de multidominio que empieza a ser el producto que se vende. eso sí, un poco más caro, claro.
  • Normalente los dominios los puedes contratar con otra empresa así que tampoco te hace falta que estén baratos en esa empresa. Sólo contrata lo que necesites.
  • Bases de datos: olvidate de buscar cosas como postgres o firebird, etc… tira de mysql 5 con phpmyadmin. Si necesitas algo más tocho vete a un virtual o un dedicado.Hay mucha gente que se quiere conectar en remoto a los mysql de los servidores con su aplicación GUI favorita. Yo personalmente lo veo una pérdida de tiempo y de recursos. Si estás en un entorno en producción, haz los cambios en desarrollo y sube a producción, para subir unos ficheros sql no te hace falta mucho más.
  • Seguridad en el hosting. Esto es muy importante y casi nadie le presta atención. He oido un millón de veces la frase : ” en el ordenador de mi casa me funciona y aquí no “. La mayoría de la gente no se da cuenta de que el nivel de pereza y dejadez del manteniento provoca intrusiones en los servidores que acaban generando en la mayoría de los casos  spam, phising y ataques de denegacion de servicio . Para evitar en un 90% estos casos y evitar perjuicios a ti y a tus vecinos de hosting se tienen que poner medidas de seguridad. Esto incluye mod_security, activar safe_mode, desactivar allow_url_fopen,  desactivar curl, etc, etc, etc … Muchas veces son incómodas pero indican que por lo menos se preocupan de la seguridad. Yo pediría ayuda técnica a la empresa para solventar estos problemas, pero no me resignaría a trabajar con ellos.
  • Acceso a logs: importantísimo, que tengas unos logs donde mirar qué pasa con tu aplicación web, si no puedes estar dando vueltas durante días.
  • Copias de seguridad: Entérate bien de sí hay copias de seguridad por parte de la empresa, de si te va a costar dinero usar sus copias y de qué sistema tienes para hacerte tus copias. Siempre hazte las tuyas propias por si acaso.
  • Y para terminar, un panel decente: que sea fácil e intuitivo y sobre todo que funcione. Da igual que se bonito o no, que funcione , que funcione !!!

Espero dar pie a una larga e interesante discusión que se repite cada año como la discusión entre los diplomados y no diplomados :D

30 de Julio día del SysAdmin

July 30th, 2010 by admin No comments »

Felicidades a todos los administradores de sistemas, incluyendo a los BOFH :D

http://www.sysadminday.com/