Contenido

Comentarios en los CSS ¿Como?

31 Oct

+ 15

Hablando con el gran Daniel Mota (IceBeat) nos asalta una duda:

¿De que forma añadir comentarios a nuestros CSS?

Está claro que cada vez más se está separando el diseño de la estructura y que por ello se está convirtiendo en un lenguaje independiente y que debería estar comentado, lejos quedan ya aquellos <h1 style="color:red;"> a los que les sobra cualquier tipo de comentario. Ahora las estructuras complejas y que sin la posibilidad de acceder a la estructura HTML pueden hacer muy dificil de mantener.

#header {}
	#header h1{
 		color: red;
	} 

Está claro que sin saber que es #header, puede ser dificil mantener este código CSS. Así que viendo este código, creo que más que necesario añadir comentarios a nuestros CSS, pero ¿como?. Una pregunta no muy trivial ya que hemos de tener en cuenta que los CSS navegan hasta el cliente lo que nos limita en cuanto a tamaño se refiere, más que nada por que con según que criterios de comentarios podemos hacer que estos ocupen más que el propio código CSS. Pero por otro lado, tenemos una forma clara de saber que es cada estilo de los que estamos hablando…

Hay muchas webs que promueven el uso de comentarios en CSS y pretenden llegar a consenso global para usar la estructura Javadoc con ella:

Ejemplo

/**
* @style       Standard Layout
* @media       screen
* @version     1.0
* @author      Franky
* @copyright   Franky’s pwn comp-a-ni
* @licensor    da customa
* @layout      in pixels:
*              |            788            |
*              | 10  |      768       | 10 |
*              | 10  | 27 |    741    | 10 |
*/
 [...]
/**
* @section reset
* @see     …
* @see     http://meyerweb.com/eric/thoughts/2007/05/01/reset-reloaded/
*/
 [...]
/**
* @section layout
* @todo    margins an parent anpassen
*/

¿Que os parece? ¿exagerado?¿Necesario?

65 diseños en flash que todos deberíamos conocer

31 Oct

+ 2

Se ha hablado mucho sobre los problemas de accesibilidad que implica desarrollar un sitio web completamente con Flash y de los problemas que acarrea tener que depender de un plugin externo para que funcione. Pero estos 65 diseños, demuestran el motivo por que el Flash es tan vistoso.

moonpalace.jpgfunnel.jpgschiphol.jpgownyourc.jpgvacation.jpg

Hay gente que tiene una visión mucho más avanzada y logra, mediante flash, plasmarlo en forma de interface para sus páginas. 

Meme: ¿Quiénes son tus héroes dentro del blogging?

31 Oct

+ 5

Me ha gustado esto de «tus heroes» dentro del blogging. Y por ese motivo, sigo este meme que me mandan desde Blog Insider, alla van:

Y ¿los vuestros?

Compresión HTTP de ficheros html, css y js

31 Oct

+ 0

Una buena forma de ahorrar ancho de banda de nuestro servidor es el enviar los ficheros comprimidos, una forma de conseguir esto la compresión HTTP, muy útil para disminuir el tamaño de nuestro ficheros. Eduard de de-mas, ha escrito un mini tutorial de como conseguir minimzar el tamaño de los ficheros usando este tipo de compresión.

Las páginas blancas de la seguridad WordPress

31 Oct

+ 28

Los chicos de BlogSecurity, han desarrollado un PDF llamado «How to Secure WordPress» o «Como asegurar WordPress» en el que nos indican una serie de puntos a tener en cuenta a la hora de mejorar la seguridad de nuestro WordPress.

El fichero incluye 10 páginas en las que nos dará unas pautas con las que asegurar nuestro Blog, partiendo desde los permisos necesarios y recomendados para las tablas y los usuarios de MySQL hasta la configuración de los fichero .htaccess y .htpasswd, pasando por las restricciones en ficheros como wp-content y wp-includes.

Me atrevo a hacer una traducción rápida del contenido de dicho PDF. 

Instalando WordPress

La instalación de WordPress, es la base de nuestra seguridad, así que debemos prestar especial atención a este punto para evitar sufrir más adelante.

Accediendo a las tablas de WordPress

Antes de empezar a instalar tu blog, necesitarás elegir bien los permisos del usuario de base de datos. La idea detrás de este punto vitál es la limitar el uso del usuario destinado a trabajar con las tablas de WordPress a solo eso, WordPress.

Por este motivo, el usuario root, nunca debe ser usado para acceder a la base de datos, es más, incluso aconsejan deshabilitarle esta posibilidad desde aplicaciones como phpmyadmin o similares.

El usuario de base de datos no debería tener privilegios globales SQL, esto limitará el acceso a la base de datos en donde esté WordPress alojado. Solo sería necesario que tuviera permisos para las tareas del día a día.

Para datos: SELECT, INSERT, UPDATE, DELETE
 Para estructura: CREATE, ALTER, DROP 

Si estás alojado en un servidor en el que hay varios usuarios usando la misma base de datos, los permisos deberían ser más restrictivos.

Para datos: SELECT, INSERT, UPDATE, DELETE
  Para esctructura: ALTER 

De esta forma, en el peor de los casos, si alguien pudiera conseguir los datos del usuario de base de datos, únicamente podría acceder a una parte muy limitada de ella, sin comprometer el resto del servidor.

Cambia el prefijo de las tablas

Por defecto WordPress, te da la opción de usar wp_ como prefijo para las tablas que alojarán los datos de WordPress (posts, comentarios,…) pero como recomendación, siempre debería cambiarse. De esta forma alguien con mala intención debería conocer el prefijo de las tablas para poder acceder a ellas.

Quizas la solución más correcta sea la de usar un prefijo aleatorio, algo como 34eedrr_ algo que nunca nadie pueda conocer por intuición.

Para conseguir esto, basta con modificar el prefijo antes de iniciar la instalación, en cuanto estamos informando de los datos del usuario de base de datos, modificaremos la línea:

$table_prefix = 'wp_';

por algo así

$table_prefix = '1qw23e_';

Y continuamos con la instalación.

Si ya tenemos WordPress instalado y queremos cambiar el prefijo de las tablas, existen plugins que te permite cambiar el prefijo casi sin tener que hacer nada. Uno de ellos es WP Prefix Table Changer, igual de claro como su nombre. 

El fichero wp-config.php

Este fichero, es nuestro tesoro, con el conectamos a la base de datos, informamos el idioma de nuestro blog incluso activamos a desactivamos el uso de caché. Así que hemos de prestar una especial atención.

Por ese motivo, los permisos de este fichero deberían ser 644, convirtiendolo en un fichero de solo lectura.

Preparando el blog

Ahora tu blog ya está instalado, ya tenemos cierta seguridad aplicada y ahora tenemos que ponernos manos a la obra para depurar esa seguridad.

Cambiando tu usuario Administrador

Debemos cambiar el nombre del usuario administrador por defecto (admin), de esta forma mitigamos los intentos de ataques por fuerza bruta a nuestro WordPress.

Debes asumir que los atacantes conocen tu nombre de usuario, así que piensa en una buena contraseña para asegurarte.

¿Como cambiar el usuario administrador? 

Logueate con tu cuenta de Administrador, crea un usuario al que le darás permisos de administrador, usa un nombre dificil de predecir (nada de root, god, …) y asignale un password igual de complicado (te recomiendo que uses carácteres no alfanuméricos), le pondremos el mismo email que el admin inicial y borraremos la cuenta admin en la que estamos logueado.

Create un usuario con acceso limitado

En el PDF, recomiendan que instalemos Role Manager, un plugin para gestionar los permisos de los usuarios, a modo de barrera contra posibles intrusiones. Una vez instalado el plugin, crearemos un nuevo usuario al que limitaremos con las funcionalidades que vayamos a usar.

Para asegurar nuestro WordPress, se recomienda que el nuevo usuario no sea más que un Contribuidor.

Los permisos por defecto del Contribuidor no son suficientes para un uso diario de WordPress, pero con el plugin Role Manager, podemos añadirle permisos adicionales para hacer este perfíl más flexible pero igual de seguro.

rolemanager.png

Si tienes multiples usuarios, lo mejor que puedes hacer es crear un nuevo rol con los permisos que quieres que tengan todos los usuarios.

Cuando creamos usuarios, tenemos que tener especial cuidado en las opciones de:

  • Subir ficheros
  • Accesso al menú de plugins
  • Editar páginas / posts/ ficheros
  • Importart

Ya que es tas opciones, dan mucho poder al usuario.

Endureciendo WordPress

Todo lo hecho anteriormente no sirve de nada si dejamos una ventana abierta por la que se pueda acceder, hemos de cerrar todos posibles acceso para evitar sopresas.

Restringiendo los directorios wp-content y wp-includes

Son sin duda los dos directorios más usados por WordPress, por lo tanto hemos de protejerlos. Para ello, usaremos el fichero .htaccess para limitar el uso de cada directorio. Para empezar veremos una estructura básica para el fichero .htaccess de nuestro directorios wp-content y wp-includes.

Order Allow,Deny
Deny from all
<Files ~ ".(css|jpe?g|png|gif|js)$">
 Allow from all
</Files>

De esta form estamos evitando que se pueda acceder a cualquier fichero directamente, por ese motivo tendremos que revisar los plugins y themes que esten pensados para acceder a ellos y añadirlos al listado (por ejemplo Share This (Compartelo)).

Restringiendo wp-admin

El directorio wp-admin, es donde tenemos todo lo necesario para administrar nuestro blog, por eso tenemos tambien que asegurar el fuerte por este flanco.

Bloque todas las IP’s menos la tuya

Si eres un único administrador, tienes IP estática y solo administras el blog desde un único PC, deberías bloquear el acceso a todo el resto de IP’s. Para ello únicamente tendremos que usar el fichero .htaccess alojándolo en el directorio wp-admin/ con el siguiente contenido.

Order deny,allow
Allow from a.b.c.d #TU IP ESTÁTICA
Deny from all

Añadele un password al directorio wp-admin

Otra opción igual de válida es la de añadirle un password al directorio wp-admin/, de esta forma tendremos un doble candado para acceder a nuestro panel de administración.

Para ello tendremos que usar el fichero .htaccess y .htpasswd

.htaccess
AuthUserFile /srv/www/user1/.htpasswd #this file should be outside your webroot.
AuthType Basic
AuthName “Blog”
require user youruser #making this username difficult to guess can help mitigate password
brute force attacks. 

Y el fichero .htpasswd, incluirá el nombre de usuario y password encriptado, generarlo podemos usar herramientas Online que nos hacen la encriptación necesaria.

Plugins que debemos tener

No todos los plugins, son posibles fallos de seguridad para nuestro blog, tembian hay algunos que se encargan de ayudarnos a conocer los puntos débiles. Siempre viene bien tenerlos a mano para ir mirando la seguridad cuando actualizamos.

Campaña publicitaria para fichar programadores Web

30 Oct

+ 25

Que risas me acabo de echar viendo este poster de publicidad…

17793437_5001.jpg

Si eres un desarrollador verás que hay código en la imagen (a mi me costó unos minutos), si además eres desarrollador en C++, entenderás el código necesario para enviar el tu currículum.

Pownce libera el API

30 Oct

+ 1

Pownce, el clon de Twitter del creador de Digg (Kevin Rose) libera el API para que los desarrolladores podamos crear nuestras aplicaciones e interactuemos con él.

tabAcordeón, las fusiones están de moda

30 Oct

+ 1

¿Que pasaría si fusionamos los tabs con el efecto acordeón de Moo.fx? Pues el resultado es que tendremos unos tabs con efectos muy elegantes que podemos incrustar en nuestra aplicación web.[Demo][Descargar]

Impresionante menú CSS para nuestras aplicaciones

30 Oct

+ 2

Si estás buscando una forma elegante y diferente de maquetar el menú de tu aplicación, deberías echarle un vistazo a este. Completamente desarrollado en CSS y pensado para no perder su funcionalidad en todos los navegador. [Demo][Descargar]

Mozilla Prism, convierte cualquier página en una aplicación

29 Oct

+ 20

Lo último de Mozilla es Prism, una aplicación que convierte cualquier página en una aplicación. Para ello usa la potencia que XUL le permite aportar a este tipo funcionalidades.

prismlogo400.png

Aunque a primera vista parece algo inutil que poca gente vaya a usar, tiene muchas posibilidades. Para que lo entendamos, prism es como si de una ventana de Firefox se tratara, sin la posibilidad de cambiar la URL, ni ninguna otra opción del navegador. Usando el motor de Firefox, embebemos dentro de prism nuestra aplicación, haciendo que el usuario no pueda dejar de usar nuestra aplicación. Así, sin pensar mucho podríamos usarlo para crear una aplicación web y mostrarla como de escritorio haciendo que fuera completamente transparente para el usuario. Además de disponer de un acceso directo a nuestra aplicación en cualquier parte de nuestro PC.

prism085001.pngprismui.png

¿Qué és?

Prism, antes conocido como Webrunner, es un sistema capaz de simular aplicaciones de escritorio apartir de aplicaciones web. Recibe el nombre del famoso experimento de Issac Newton en el que descompuso la luz solar, haciendo una analogía a este experimento en el que transforma cualquier aplicación web en un haz de aplicaciones de escritorio.

refracting5501.png

Como funciona

 XULRunner es el corazón de Prism, al igual que el de Firefox. Ya que él se encarga de ejecutar las páginas XUL que componen el interface de Firefox. De igual forma Prism, se encarga de crear plantillas en XUL con nuestras aplicaciones para ejecutarlas posteriormente.

Algunas aplicaciones

 Para XULRunner podemos encontrar una serie de aplicaciones ya existentes que nos permiten interactuar con la red, desde nuestro propio escritorio sin necesidad de disponer de ningún navegador.

googlecalendar550.png

Listado de aplicacion XULRunner

Y si le damos un poco de XUL, podríamos transforma completamente el resultado en una aplicación que pasaría por cualquiera de las que ya conocemos para nuestro escritorio.

Descargar

[Versión para Windows][Código fuente