<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>Dondado &#187; Wordpress</title>
	<atom:link href="http://www.dondado.es/category/tecnologia/wordpress-tecnologia/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.dondado.es</link>
	<description>Blog de David Casado: Blogs,  Internet, tecnología, curiosidades</description>
	<lastBuildDate>Thu, 15 Dec 2011 08:27:03 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.3.1</generator>
		<item>
		<title>WordPress: Cerrar comentarios en post attachment</title>
		<link>http://www.dondado.es/2011/04/cerrar-comentarios-en-post-de-tipo-attachment/</link>
		<comments>http://www.dondado.es/2011/04/cerrar-comentarios-en-post-de-tipo-attachment/#comments</comments>
		<pubDate>Mon, 25 Apr 2011 23:20:24 +0000</pubDate>
		<dc:creator>dondado</dc:creator>
				<category><![CDATA[Wordpress]]></category>
		<category><![CDATA[comentarios]]></category>
		<category><![CDATA[spam]]></category>
		<category><![CDATA[SQL]]></category>

		<guid isPermaLink="false">http://www.dondado.es/?p=4169</guid>
		<description><![CDATA[Cómo cerrar los comentarios en los post que se crean automáticamente para las imágenes y otros attachments en wordpress, con esto conseguiremos que no nos entre spam en esos post que no sirven para nada]]></description>
			<content:encoded><![CDATA[<p>Cada vez que subes una imagen (u otro tipo de archivo) a wordpress, este te crea un nuevo post que, aunque normalmente no será visible, tiene su propia URL y por eso es accesible para los visitantes del blog un poco hábiles o, más frecuentemente, para los spammers.</p>
<p>De un tiempo a esta parte estoy recibiendo <strong>mucho spam en este tipo de entradas para imágenes</strong> u otros attachments y la solución más rápida que se me ha ocurrido es directamente <strong>cerrar los comentarios en esos "pseudopost" de imágenes</strong>, esto no afectará a los comentarios de los verdaderos post, los que contienen el texto y esa imagen que has subido.</p>
<p>El query que tendrás que hacer desde el phpmyadmin es el siguiente</p>
<div class="igBar"><span id="lsql-1"><a href="#" onclick="javascript:showCodeTxt('sql-1'); return false;">PLAIN TEXT</a></span></div>
<div class="syntax_hilite"><span class="langName">SQL:</span>
<div id="sql-1">
<div class="sql">
<ol>
<li style="font-family: 'Courier New', Courier, monospace; color: black; font-weight: normal; font-style: normal;color:#3A6A8B;">
<div style="font-family: 'Courier New', Courier, monospace; font-weight: normal;"><span style="color: #993333; font-weight: bold;">UPDATE</span><span style="color: #ff0000;">`wp_posts`</span></div>
</li>
<li style="font-weight: bold;color:#26536A;">
<div style="font-family: 'Courier New', Courier, monospace; font-weight: normal;"><span style="color: #993333; font-weight: bold;">SET</span><span style="color: #ff0000;">`comment_status`</span> = <span style="color: #ff0000;">'closed'</span></div>
</li>
<li style="font-family: 'Courier New', Courier, monospace; color: black; font-weight: normal; font-style: normal;color:#3A6A8B;">
<div style="font-family: 'Courier New', Courier, monospace; font-weight: normal;"><span style="color: #993333; font-weight: bold;">WHERE</span> <span style="color: #ff0000;">`post_type`</span> = <span style="color: #ff0000;">'attachment'</span> </div>
</li>
</ol>
</div>
</div>
</div>
<p></p>
<p>Recuerda hacer una copia de seguridad de la tabla que vas a modificar antes de hacer ningún query contra la misma.<br />
<strong>Otra opción</strong> quizá más elegante es:<strong> crear, en el mismo sitio donde tienes el single.php de tu theme, otro archivo, copia del single, que se llame attachment.php y en él borres el formulario de comentarios</strong>. Una vez hecho esto ese será el archivo php que se cargará para mostrar la imagen (por la<a title="jerarquía de un theme wordpress" href="http://codex.wordpress.org/Template_Hierarchy"> jerarquía de themes de wordpress</a>) y por tanto puedes hacer en él las modificaciones que consideres necesarias, por ejemplo, modificar el formulario para eliminar los campos de introducción de comentarios.</p>
<p>Si optas por la opción de cerrar los comentarios de los post de tipo attachment mediante el query sql recuerda que de vez en cuando lo tendrás que volver a ejecutar para las nuevas imágenes que subas.</p>
<p>Y hasta aquí el briconsejo sólo para amigos del wordpress de hoy <img src='http://www.dondado.es/wp-includes/images/smilies/icon_wink.gif' alt=';-)' class='wp-smiley' /> </p>
]]></content:encoded>
			<wfw:commentRss>http://www.dondado.es/2011/04/cerrar-comentarios-en-post-de-tipo-attachment/feed/</wfw:commentRss>
		<slash:comments>4</slash:comments>
		</item>
		<item>
		<title>WPtouch y antispam por campo oculto</title>
		<link>http://www.dondado.es/2011/01/wptouch-y-antispam-por-campo-oculto/</link>
		<comments>http://www.dondado.es/2011/01/wptouch-y-antispam-por-campo-oculto/#comments</comments>
		<pubDate>Sat, 22 Jan 2011 11:42:47 +0000</pubDate>
		<dc:creator>dondado</dc:creator>
				<category><![CDATA[Wordpress]]></category>
		<category><![CDATA[php]]></category>
		<category><![CDATA[plugins]]></category>
		<category><![CDATA[spam]]></category>
		<category><![CDATA[theme]]></category>

		<guid isPermaLink="false">http://www.dondado.es/?p=3813</guid>
		<description><![CDATA[En los blogs y en cualquier web que permita dejar comentarios, uno de los problemas que tenemos siempre es el spam. Cada uno buscamos la mejor manera de lidiarlo con captchas, plugins... en mi caso opté por un remedio "casero" que encontré en Sigt y del que ya os hablé una vez: el sistema antispam [...]]]></description>
			<content:encoded><![CDATA[<p><img class="size-full wp-image-1184 alignnone" title="spam_feedburner" src="http://www.dondado.es/wp-content/uploads/2008/07/spam_feedburner.jpg" alt="" width="240" height="180" /></p>
<p>En los blogs y en cualquier web que permita dejar comentarios, uno de los problemas que tenemos siempre es el spam. Cada uno buscamos la mejor manera de lidiarlo con captchas, plugins... en mi caso opté por un remedio "casero" que encontré en <a href="http://sigt.net/">Sigt</a> y del que <a href="http://www.dondado.es/2007/10/reducir-el-spam-en-wordpress/">ya os hablé una vez</a>: el <strong><a href="http://sigt.net/archivo/sistema-antispam-del-campo-oculto-para-wordpress.xhtml">sistema antispam del campo oculto</a>. </strong>Técnicamente no es muy complicado de implementar (si no te paraliza el tener que tocar un php) y su efectividad es pasmosa, yo al cabo de un año recibo menos comentarios spam que otros blogs de un nivel similar en un día. Por si acaso también tengo una segunda barrera con el plugin <a href="http://akismet.com/">akismet</a> pero pocas veces ha tenido que actuar (menos de 200 comentarios spam en más de 2 años).</p>
<p>Otra adaptación que es muy conveniente hacer en cualquier web en el año 2011 es tener una <strong>versión para móviles</strong>: cuando detectamos que el visitante está utilizando un dispositivo móvil le presentamos un diseño adaptado para estos dispositivos, en general con un contenido algo más ligero para facilitar la velocidad de carga y la navegación por el sitio. En wordpress tenemos un plugin que hace ese trabajo por nosotros <a href="http://wordpress.org/extend/plugins/wptouch/">wptouch</a>, con solo activar el plugin ya tenemos nuestra versión móvil disponible.</p>
<p>Y en la intersección de <strong>WPtouch y sistema antispam del campo oculto</strong> es donde he detectado un problema: <strong>los visitantes con dispositivos móviles no pueden dejar comentarios</strong></p>
<p>Una de las cosas que hacemos al implementar el antispam es modificar el comments.php de nuestro theme y una de las cosas que utiliza wptouch es aplicar su propio theme (con su comments) cuando el visitante llega con un móvil, por lo que <strong>hay que modificar el comments.php que viene incluido dentro del plugin.</strong></p>
<p>Lo primero es localizar ese archivo dentro de la carpeta del plugin. Lo encontraréis en</p>
<blockquote><p>/wptouch/themes/default</p></blockquote>
<p>Lo abrimos con un edito y buscamos el código correspondiente al formulario para dejar comentarios. Allí hacemos la siguiente sustitución:<br />
las dos líneas donde pone</p>
<div class="igBar"><span id="lphp-4"><a href="#" onclick="javascript:showCodeTxt('php-4'); return false;">PLAIN TEXT</a></span></div>
<div class="syntax_hilite"><span class="langName">PHP:</span>
<div id="php-4">
<div class="php">
<ol>
<li style="font-family: 'Courier New', Courier, monospace; color: black; font-weight: normal; font-style: normal;color:#3A6A8B;">
<div style="font-family: 'Courier New', Courier, monospace; font-weight: normal;">&lt;input id=<span style="color:#FF0000;">"author"</span> name=<span style="color:#FF0000;">"author"</span> size=<span style="color:#FF0000;">"22"</span> type=<span style="color:#FF0000;">"text"</span> value=<span style="color:#FF0000;">"&amp;lt;?php echo $comment_author; ?&amp;gt;"</span> tabindex=<span style="color:#FF0000;">"1"</span> /&gt;</div>
</li>
<li style="font-weight: bold;color:#26536A;">
<div style="font-family: 'Courier New', Courier, monospace; font-weight: normal;">&lt;label <span style="color:#616100;">for</span>=<span style="color:#FF0000;">"author"</span>&gt;&lt;?php _e<span style="color:#006600; font-weight:bold;">&#40;</span> <span style="color:#FF0000;">'Name'</span>, <span style="color:#FF0000;">'wptouch'</span> <span style="color:#006600; font-weight:bold;">&#41;</span>; <span style="color:#000000; font-weight:bold;">?&gt;</span> <span style="color:#000000; font-weight:bold;">&lt;?php</span> <span style="color:#616100;">if</span> <span style="color:#006600; font-weight:bold;">&#40;</span><span style="color:#0000FF;">$req</span><span style="color:#006600; font-weight:bold;">&#41;</span> <a href="http://www.php.net/echo"><span style="color:#000066;">echo</span></a> <span style="color:#FF0000;">"*"</span>; ?&gt;&lt;/label&gt; </div>
</li>
</ol>
</div>
</div>
</div>
<p>
las sustituimos por las tres líneas siguientes:</p>
<div class="igBar"><span id="lphp-5"><a href="#" onclick="javascript:showCodeTxt('php-5'); return false;">PLAIN TEXT</a></span></div>
<div class="syntax_hilite"><span class="langName">PHP:</span>
<div id="php-5">
<div class="php">
<ol>
<li style="font-family: 'Courier New', Courier, monospace; color: black; font-weight: normal; font-style: normal;color:#3A6A8B;">
<div style="font-family: 'Courier New', Courier, monospace; font-weight: normal;">&lt;input id=<span style="color:#FF0000;">"author"</span> style=<span style="color:#FF0000;">"display: none;"</span> name=<span style="color:#FF0000;">"author"</span> size=<span style="color:#FF0000;">"22"</span> type=<span style="color:#FF0000;">"text"</span> value=<span style="color:#FF0000;">"author"</span> tabindex=<span style="color:#FF0000;">"1"</span> /&gt; </div>
</li>
<li style="font-weight: bold;color:#26536A;">
<div style="font-family: 'Courier New', Courier, monospace; font-weight: normal;">&lt;input id=<span style="color:#FF0000;">"nombre"</span> name=<span style="color:#FF0000;">"nombre"</span> size=<span style="color:#FF0000;">"22"</span> type=<span style="color:#FF0000;">"text"</span> value=<span style="color:#FF0000;">"&lt;?php echo $comment_author; ?&gt;"</span> tabindex=<span style="color:#FF0000;">"2"</span> /&gt;</div>
</li>
<li style="font-family: 'Courier New', Courier, monospace; color: black; font-weight: normal; font-style: normal;color:#3A6A8B;">
<div style="font-family: 'Courier New', Courier, monospace; font-weight: normal;">&lt;label <span style="color:#616100;">for</span>=<span style="color:#FF0000;">"author"</span>&gt;&lt;?php _e<span style="color:#006600; font-weight:bold;">&#40;</span> <span style="color:#FF0000;">'Name'</span>, <span style="color:#FF0000;">'wptouch'</span> <span style="color:#006600; font-weight:bold;">&#41;</span>; <span style="color:#000000; font-weight:bold;">?&gt;</span> <span style="color:#000000; font-weight:bold;">&lt;?php</span> <span style="color:#616100;">if</span> <span style="color:#006600; font-weight:bold;">&#40;</span><span style="color:#0000FF;">$req</span><span style="color:#006600; font-weight:bold;">&#41;</span> <a href="http://www.php.net/echo"><span style="color:#000066;">echo</span></a> <span style="color:#FF0000;">"*"</span>; ?&gt;&lt;/label&gt; </div>
</li>
</ol>
</div>
</div>
</div>
<p>
Y listo.<br />
El único <strong>inconveniente: cada vez que se actualice el wptouch tendremos que comprobar manualmente si esa modificación afecta o no al archivo comments.php</strong> y en caso de llegar modificado volver a hacer las adaptaciones<br />
Nota: Si queréis ser más ortodoxos, en lugar de ese feo style="display:none" podéis poner un class={hid} y en el archivo CSS del plugin definir esa clase hid con el atributo display=none, pero por lo que he comentado de las actualizaciones del plugin yo he preferido no hacerlo</p>
]]></content:encoded>
			<wfw:commentRss>http://www.dondado.es/2011/01/wptouch-y-antispam-por-campo-oculto/feed/</wfw:commentRss>
		<slash:comments>5</slash:comments>
		</item>
		<item>
		<title>WordPress más seguro y cómo reaccionar a un ataque</title>
		<link>http://www.dondado.es/2010/08/wordpress-mas-seguro-y-como-reaccionar-a-un-ataque/</link>
		<comments>http://www.dondado.es/2010/08/wordpress-mas-seguro-y-como-reaccionar-a-un-ataque/#comments</comments>
		<pubDate>Mon, 23 Aug 2010 15:09:29 +0000</pubDate>
		<dc:creator>dondado</dc:creator>
				<category><![CDATA[Wordpress]]></category>
		<category><![CDATA[dondado]]></category>
		<category><![CDATA[seguridad]]></category>

		<guid isPermaLink="false">http://www.dondado.es/?p=3571</guid>
		<description><![CDATA[Mediante un ataque han conseguido robar la identificación del administrador del blog, estos son los pasos para sabe cómo  retomar el control y evitar futuros ataques de este tipo]]></description>
			<content:encoded><![CDATA[<p><img class="alignnone size-full wp-image-3577" title="defensa" src="http://www.dondado.es/wp-content/uploads/2010/08/defensa.jpg" alt="" width="192" height="240" /></p>
<p>Recientemente <strong>he recibido</strong> el que creo que es <strong>el primer ataque que lanzan contra este blog</strong>, algún amigo de lo ajeno ha conseguido la contraseña del usuario administrador, ha modificado algunos archivos de un plugin y ha colocado  un archivo con malas pulgas dentro del contenido del blog. Aparentemente no han roto nada más y creo que he conseguido repeler el ataque así que, a riesgo de enfadar más al atacante (que seguramente va a leer esto) os voy a contar mi experiencia por si le puede servir a alguien más.</p>
<p><strong>Todo empezó cuando recibí un correo con este contenido</strong></p>
<blockquote><p>Contraseña perdida y cambiada para el usuario: dondado</p></blockquote>
<p>Alguna otra vez había recibido correos de alguien que pedía el cambio de contraseña pero nunca de que efectivamente se había cambiado por lo que me preocupé y en cuanto tuve ocasión me puse a investigar qué pasaba. Descargué los logs de acceso al servidor apache y comienzo la investigación.</p>
<h3>1. Retoma el control:</h3>
<p>Entrar con el usuario y volver a pedir una nueva contraseña, una vez recibida acceder con ese usuario administrador al blog.<br />
Desactivar todos los plugins por si han hecho cambios en ellos<br />
Volver a cambiar la contraseña del administrador y ya de paso la cuenta de correo por si viene por ahí el fallo de seguridad.</p>
<h3>2. Investiga qué ha pasado:</h3>
<p>Acceder al log de acceso al servidor y buscar los accesos a wp-login.php y fijarse en la IP desde la que se han hecho el que se corresponda con la hora en que te llegó el correo del cambio de contraseña u otra hora en la que sepas que tú no has accedido.<br />
Buscar todo lo que se haya hecho desde esa IP: en mi caso, además del cambio de contraseña, se ve que había modificado un plugin desde el editor de plugins de wordpress.<br />
Con algún programa de comparación, compara los archivos que tenías (benditos backups) con los que han dejado los atacantes, así he detectado yo los cambios que habían hecho en el plugin <a href="http://wordpress.org/extend/plugins/simple-tags/">simple-tags</a></p>
<h3>3. Reforzar la seguridad.</h3>
<p>A). <strong>Limitar los accesos al directorio wp-admin</strong>. Lo normal es que al panel de administración sólo entres desde tu casa, para ello basta con añadir, en el directorio /wp-admin/ un archivo con el nombre .htaccess con el siguiente contenido</p>
<div class="igBar"><span id="lcode-6"><a href="#" onclick="javascript:showCodeTxt('code-6'); return false;">PLAIN TEXT</a></span></div>
<div class="syntax_hilite"><span class="langName">CODE:</span>
<div id="code-6">
<div class="code">
<ol>
<li style="font-family: 'Courier New', Courier, monospace; color: black; font-weight: normal; font-style: normal;color:#3A6A8B;">
<div style="font-family: 'Courier New', Courier, monospace; font-weight: normal;">AuthUserFile /dev/null</div>
</li>
<li style="font-weight: bold;color:#26536A;">
<div style="font-family: 'Courier New', Courier, monospace; font-weight: normal;">AuthGroupFile /dev/null</div>
</li>
<li style="font-family: 'Courier New', Courier, monospace; color: black; font-weight: normal; font-style: normal;color:#3A6A8B;">
<div style="font-family: 'Courier New', Courier, monospace; font-weight: normal;">AuthName <span style="color:#CC0000;">"WordPress Admin Access Control"</span></div>
</li>
<li style="font-weight: bold;color:#26536A;">
<div style="font-family: 'Courier New', Courier, monospace; font-weight: normal;">AuthType Basic</div>
</li>
<li style="font-family: 'Courier New', Courier, monospace; color: black; font-weight: normal; font-style: normal;color:#3A6A8B;">
<div style="font-family: 'Courier New', Courier, monospace; font-weight: normal;">&lt;LIMIT GET&gt;</div>
</li>
<li style="font-weight: bold;color:#26536A;">
<div style="font-family: 'Courier New', Courier, monospace; font-weight: normal;">order deny,allow</div>
</li>
<li style="font-family: 'Courier New', Courier, monospace; color: black; font-weight: normal; font-style: normal;color:#3A6A8B;">
<div style="font-family: 'Courier New', Courier, monospace; font-weight: normal;">deny from all</div>
</li>
<li style="font-weight: bold;color:#26536A;">
<div style="font-family: 'Courier New', Courier, monospace; font-weight: normal;"># whitelist Casa</div>
</li>
<li style="font-family: 'Courier New', Courier, monospace; color: black; font-weight: normal; font-style: normal;color:#3A6A8B;">
<div style="font-family: 'Courier New', Courier, monospace; font-weight: normal;">allow from xxx.<span style="">xxx</span>.<span style="">xxx</span>.<span style="">xxx</span></div>
</li>
<li style="font-weight: bold;color:#26536A;">
<div style="font-family: 'Courier New', Courier, monospace; font-weight: normal;"># whitelist Trabajo</div>
</li>
<li style="font-family: 'Courier New', Courier, monospace; color: black; font-weight: normal; font-style: normal;color:#3A6A8B;">
<div style="font-family: 'Courier New', Courier, monospace; font-weight: normal;">allow from xxx.<span style="">xxx</span>.<span style="">xxx</span>.<span style="">xxx</span></div>
</li>
<li style="font-weight: bold;color:#26536A;">
<div style="font-family: 'Courier New', Courier, monospace; font-weight: normal;">&lt;/LIMIT&gt; </div>
</li>
</ol>
</div>
</div>
</div>
<p>
Sustituyendo las xxx.xxx.xxx.xxx por tus direcciones IP desde las que quieras acceder a la administración, por ejemplo la de casa y la del trabajo.</p>
<p>Si no sabes tu dirección IP puedes visitar, por ejemplo, esta dirección <a href="http://whatismyipaddress.com/">http://whatismyipaddress.com/</a> donde te la dicen o, si tienes cuenta de GMail, en la parte inferior aparece tu IP y pinchando en "información detallada", un listado con las IPs desde las que has accedido últimamente a tu cuenta de gmail.<br />
Ten en cuanto que muchos tenemos IPs dinámicas, es decir, que nuestro operador nos las cambia de vez en cuando, así que recuérdalo por si al cabo de unas semanas no consigues entrar ni siquiera tú. Una opción puede ser utilizar asteriscos en las dos últimos tramos de la IP, que es lo que suelen cambiar los ISP. La línea en ese caso te quedaría con la forma</p>
<div class="igBar"><span id="lcode-7"><a href="#" onclick="javascript:showCodeTxt('code-7'); return false;">PLAIN TEXT</a></span></div>
<div class="syntax_hilite"><span class="langName">CODE:</span>
<div id="code-7">
<div class="code">
<ol>
<li style="font-family: 'Courier New', Courier, monospace; color: black; font-weight: normal; font-style: normal;color:#3A6A8B;">
<div style="font-family: 'Courier New', Courier, monospace; font-weight: normal;">allow from xxx.<span style="">xxx</span>.*.* </div>
</li>
</ol>
</div>
</div>
</div>
<p>
B) <strong>Deshabilitar los editores internos de wordpress</strong>, el editor de plugins y el editor de themes. No sé vosotros, pero yo, salvo en contadas ocasiones no los utilizo, así que más vale<br />
tenerlos deshabilitados y reactivarlos sólo cuando sean necesarios. Para deshabilitarlos hay que añadir la siguiente línea en el archivo wp-config.php</p>
<div class="igBar"><span id="lcode-8"><a href="#" onclick="javascript:showCodeTxt('code-8'); return false;">PLAIN TEXT</a></span></div>
<div class="syntax_hilite"><span class="langName">CODE:</span>
<div id="code-8">
<div class="code">
<ol>
<li style="font-family: 'Courier New', Courier, monospace; color: black; font-weight: normal; font-style: normal;color:#3A6A8B;">
<div style="font-family: 'Courier New', Courier, monospace; font-weight: normal;">define<span style="color:#006600; font-weight:bold;">&#40;</span><span style="color:#CC0000;">'DISALLOW_FILE_EDIT'</span>,true<span style="color:#006600; font-weight:bold;">&#41;</span>; </div>
</li>
</ol>
</div>
</div>
</div>
<p></p>
<h3>4. Volver a colocar las cosas en su sitio.</h3>
<p>Hay que ser desconfiado y no dar por sentado que hemos encontrado todo lo que han modificado, más vale prevenir.<br />
Volver a descargar todos <strong>los plugins</strong> desde la página de wordpress, borrar los que tienes instalados actualmente y<strong> volverlos a instalar</strong>.<br />
Descargar la última versión de wordpress y volver a <strong>hacer una instalación limpia</strong>. Si como yo, además hacéis las <a title="actualizaciones incrementales en WP" href="http://www.dondado.es/2010/08/actualizaciones-incrementales-de-wordpress/">actualizaciones de vuestro WP sólo de forma incremental </a>es conveniente hacer esto de vez en cuando para eliminar posibles archivos que hayan quedado en desuso.</p>
<h3>5. Paranoico de la seguridad</h3>
<p>Si lo han intentado una vez es muy posible que vuelvan así que es mejor estar preparado esperándoles:</p>
<ul>
<li>Crea un nuevo usuario con permisos de administrador que sea distinto del que utilizas para escribir en el blog, una vez creado, identifícate con él y<strong> cambia los permisos de tu usuario normal, el que conoce la gente, para que sea tan solo editor</strong>. A partir de ahora tendrás que pensar qué vas a hacer cuando entres al blog, escribir, administrar entradas y comentarios  (para esto utiliza el viejo usuario que ahora sólo es editor) o cambios de plugins, opciones, aspectos... para eso sí tendrás que entrar con el nuevo usuario administrador.</li>
<li>Cambia la contraseña de la base de datos del blog.</li>
<li>Cambia la contraseña del correo electrónico que tienes asociado al usuario del blog.</li>
<li>Cambia las claves secretas del wp-config.php:</li>
</ul>
<div class="igBar"><span id="lcode-9"><a href="#" onclick="javascript:showCodeTxt('code-9'); return false;">PLAIN TEXT</a></span></div>
<div class="syntax_hilite"><span class="langName">CODE:</span>
<div id="code-9">
<div class="code">
<ol>
<li style="font-family: 'Courier New', Courier, monospace; color: black; font-weight: normal; font-style: normal;color:#3A6A8B;">
<div style="font-family: 'Courier New', Courier, monospace; font-weight: normal;">define<span style="color:#006600; font-weight:bold;">&#40;</span><span style="color:#CC0000;">'AUTH_KEY'</span>, <span style="color:#CC0000;">'xxxxxxxxx'</span><span style="color:#006600; font-weight:bold;">&#41;</span>;</div>
</li>
<li style="font-weight: bold;color:#26536A;">
<div style="font-family: 'Courier New', Courier, monospace; font-weight: normal;">define<span style="color:#006600; font-weight:bold;">&#40;</span><span style="color:#CC0000;">'SECURE_AUTH_KEY'</span>, <span style="color:#CC0000;">'xxxxxxxxxxxx'</span><span style="color:#006600; font-weight:bold;">&#41;</span>;</div>
</li>
<li style="font-family: 'Courier New', Courier, monospace; color: black; font-weight: normal; font-style: normal;color:#3A6A8B;">
<div style="font-family: 'Courier New', Courier, monospace; font-weight: normal;">define<span style="color:#006600; font-weight:bold;">&#40;</span><span style="color:#CC0000;">'LOGGED_IN_KEY'</span>, <span style="color:#CC0000;">'xxxxxxxxx'</span><span style="color:#006600; font-weight:bold;">&#41;</span>;</div>
</li>
<li style="font-weight: bold;color:#26536A;">
<div style="font-family: 'Courier New', Courier, monospace; font-weight: normal;">define<span style="color:#006600; font-weight:bold;">&#40;</span><span style="color:#CC0000;">'NONCE_KEY'</span>, <span style="color:#CC0000;">'xxxxxxxxxxx'</span><span style="color:#006600; font-weight:bold;">&#41;</span>; </div>
</li>
</ol>
</div>
</div>
</div>
<p>
Para generar unas nuevas visita el <a href="https://api.wordpress.org/secret-key/1.1/salt/">generador aleatorio de claves de WP</a> y copia y pega sobre tus anteriores líneas del wp-config.php<br />
Aún <strong>no he logrado averiguar cómo consiguieron acceso a mi blog en su primer intento</strong> (en el segundo no lo consiguieron). Puede que sea una <strong>vulnerabilidad no descubierta de wordpress </strong>aunque me inclino a pensar que sea algo más concreto de mi instalación, por ejemplo, las claves del wp-config.php no las cambiaba desde que las puse hace muchos meses (cuando salió la versión 2.6), quizá incluso tenía unas claves genéricas copiadas de algún sitio que les facilitaban conseguir la key para acceder a la administración. Quién sabe, espero no volver a llevarme sustos como este ¿Y tú, has sufrido algún intento de ataque de tu blog?.</p>
<p>Por último agradecer a la gente de <a href="http://www.iteisa.com/">Iteisa</a> su interés y ayuda para conseguir salir de este entuerto.</p>
<h5><a href="http://www.flickr.com/photos/dunechaser/2623043223/">Foto original</a> de <a id="yui_3_1_0_1_12825750509541540" href="http://www.flickr.com/photos/dunechaser/">Dunechaser</a></h5>
]]></content:encoded>
			<wfw:commentRss>http://www.dondado.es/2010/08/wordpress-mas-seguro-y-como-reaccionar-a-un-ataque/feed/</wfw:commentRss>
		<slash:comments>15</slash:comments>
		</item>
		<item>
		<title>Actualizaciones incrementales de WordPress</title>
		<link>http://www.dondado.es/2010/08/actualizaciones-incrementales-de-wordpress/</link>
		<comments>http://www.dondado.es/2010/08/actualizaciones-incrementales-de-wordpress/#comments</comments>
		<pubDate>Mon, 02 Aug 2010 22:11:29 +0000</pubDate>
		<dc:creator>dondado</dc:creator>
				<category><![CDATA[Wordpress]]></category>
		<category><![CDATA[versión]]></category>

		<guid isPermaLink="false">http://www.dondado.es/?p=3547</guid>
		<description><![CDATA[Recientemente han liberado la versión 3.0.1 de wordpress y hemos tenido que actualizar nuestros blogs los que utilizamos este sistema de publicación y nos preocupamos por mantener al día todas las actualizaciones de seguridad. WordPress desde hace tiempo ofrece un cómodo botón en el panel de administración que con solo pulsar hace todo el proceso [...]]]></description>
			<content:encoded><![CDATA[<p>Recientemente <strong>han liberado la</strong><strong><a href="http://wordpress.org/news/2010/07/wordpress-3-0-1/"> versión 3.0.1 de wordpress</a></strong> y hemos tenido que actualizar nuestros blogs los que utilizamos este sistema de publicación y nos preocupamos por mantener al día todas las actualizaciones de seguridad. WordPress desde hace tiempo ofrece un cómodo botón en el panel de administración que con solo pulsar hace todo el proceso de actualización sin intervención por nuestra parte pero por desgracia a muchos no nos funciona; la razón no la sé exactamente pero por lo que he leído se debe a la configuración de PHP que cada uno tenga en su servidor. En mi caso es un plan 90 en OVH y nunca he conseguido que funcione, al igual que también me falla la actualización de algunos plugins.</p>
<p><strong>Si como yo te ves obligado a actualizar mediante FTP</strong> ("classic style") tal vez te interese actualizar de forma incremental, es decir, obtener un archivo zip con sólo las diferencias entre las versiones y machacar con él la instalación lo que supone un ahorro tremendo de tiempo.</p>
<p><strong>Ventajas:</strong></p>
<ul>
<li>Muchísimo más rápido que una actualización completa</li>
<li>Si tienes archivos modificados del core ves de un plumazo si la modificación te afecta o no, y si no te afecta no tendrás que retocarlos.</li>
</ul>
<p><strong>Inconvenientes:</strong></p>
<ul>
<li>El trac, el lugar de donde se obtienen las diferencias, es sobre la versión inglesa, por lo que si actualizas así perderás la traducción al español si es que la tenías instalada. Esto lo notarás más o menos según los archivos con texto en castellano que se incluyan en la nueva versión.</li>
<li>En el caso de que WP dejase de utilizar algún archivo se te quedará "muerto" en el servidor.</li>
</ul>
<p>Teniendo en cuenta todo esto <strong>yo recomiendo utilizarlo sólo en los cambios menores de versión</strong> (los que afectan al tercer número, ejemplo, pasar de 3.0.0 a 3.0.1) y hacer una actualización completa cuando el cambio sea de más calado (cambie alguno de los dos primeros dígitos).</p>
<h3>¿Cómo se hace la actualización incremental?</h3>
<p>Debes ir al <a href="http://core.trac.wordpress.org/diff" target="_blank">trac de wordpress a obtener las diferencias</a>. Una vez allí rellenas el from con: /tags/número_versión_vieja y el to con: /tags/numero_version_nueva dejando los campos de revisión en blanco. Mira la imagen siguiente que vale más que mil palabras:</p>
<p><a href="http://core.trac.wordpress.org/changeset?old_path=/tags/3.0&amp;old=&amp;new_path=/tags/3.0.1&amp;new="><img class="alignnone size-full wp-image-3548" title="WP-Trac" src="http://www.dondado.es/wp-content/uploads/2010/08/WP-Trac.png" alt="" width="500" height="320" /></a></p>
<p>En la página de resultados que te aparecerá, abajo del todo, tienes el <a title="archivo en formato zip de actualización de WP de 3.0.0 a 3.0.1" href="http://core.trac.wordpress.org/changeset?format=zip&amp;new=15489&amp;old=15489&amp;new_path=tags%2F3.0.1&amp;old_path=tags%2F3.0">archivo en formato zip</a> que debes descargar. Una vez descomprimido está listo para actualizar.</p>
<p>El <a title="actualizar WP de forma incremental" href="http://wordpress-hacks.com/actualizas-wordpress-mediante-ftp.php">mérito de la entrada para Neri que fue quien me enseñ</a>ó que existía esta posibilidad, hoy me he acordado y lo he reescrito aquí para que no se me olvide la próxima vez, un saludo pibe, un auténtico fenómeno en WordPress.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.dondado.es/2010/08/actualizaciones-incrementales-de-wordpress/feed/</wfw:commentRss>
		<slash:comments>5</slash:comments>
		</item>
		<item>
		<title>Para solteros y encargados de su casa (ellos y ellas)</title>
		<link>http://www.dondado.es/2010/04/para-solteros-y-encargados-de-su-casa-ellos-y-ellas/</link>
		<comments>http://www.dondado.es/2010/04/para-solteros-y-encargados-de-su-casa-ellos-y-ellas/#comments</comments>
		<pubDate>Mon, 12 Apr 2010 22:14:08 +0000</pubDate>
		<dc:creator>dondado</dc:creator>
				<category><![CDATA[Enlaces]]></category>
		<category><![CDATA[Wordpress]]></category>
		<category><![CDATA[diseño]]></category>

		<guid isPermaLink="false">http://www.dondado.es/?p=3317</guid>
		<description><![CDATA[¿Quién que sea am@ de casa, en su faceta soltero o en pareja no ha tenido a veces dudas sobre cómo se hace algo en el hogar? Normalmente para eso están las madres, pero si no es el caso, o ella ya se ha cansado de contestar tus dudas, o tu orgullo te impide preguntarle [...]]]></description>
			<content:encoded><![CDATA[<div id="attachment_3318" class="wp-caption alignnone" style="width: 298px"><img class="size-full wp-image-3318" title="limpiomicasita" src="http://www.dondado.es/wp-content/uploads/2010/04/limpiomicasita.png" alt="Limpio Mi casita" width="288" height="279" /><p class="wp-caption-text">Limpio Mi casita</p></div>
<p>¿Quién que sea am@ de casa, en su faceta soltero o en pareja no ha tenido a veces dudas sobre cómo se hace algo en el hogar? Normalmente para eso están las madres, pero si no es el caso, o ella ya se ha cansado de contestar tus dudas, o tu orgullo te impide preguntarle una vez más he encontrado una solución: <a title="limpiomicasita: consejos para el hogar" href="http://limpiomicasita.com/">limpiomicasita.com</a></p>
<p>El nombre es un poco cachondo pero lo cierto es que la web tiene un diseño muy muy agradable y navegando un poco por ella se encuentran cosas muy interesantes y sobretodo, muy bien organizadas, para que consultarlas sea sencillo. Tienen categorías de:</p>
<ul>
<li>Limpieza: con trucos para cada rincón de la casa y para las manchas especiales de ropa.</li>
<li>Cocina: con recetas organizadas según el tipo de menú que quieras preparar.</li>
<li>Organización y trucos para la casa...</li>
</ul>
<p>La web aparentemente está pensada para mujeres, pero francamente, creo que los solteros son un público que lo va a agradecer mucho más.</p>
<p>Técnicamente es en realidad un blog de WordPress, pero la personalización es tan completa que se te puede llegar a olvidar, un gran ejemplo de lo que se puede llegar a hacer con un WordPress si se deja <a title="adaptación de CMS" href="http://onestic.com/">en buenas manos</a>. Sólo una pega, además de limpiar la casa hay que mantener al día el código, deberían actualizar a una versión más reciente de WordPress.</p>
<p>Echadle un vistazo a <a href="http://limpiomicasita.com/">limpiomicasita.com</a>, seguro que encontráis algún truquito interesante o al menos véis un diseño muy bien traído.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.dondado.es/2010/04/para-solteros-y-encargados-de-su-casa-ellos-y-ellas/feed/</wfw:commentRss>
		<slash:comments>4</slash:comments>
		</item>
		<item>
		<title>Corregir viejos enlaces en WordPress</title>
		<link>http://www.dondado.es/2009/12/corregir-viejos-enlaces-en-wordpress/</link>
		<comments>http://www.dondado.es/2009/12/corregir-viejos-enlaces-en-wordpress/#comments</comments>
		<pubDate>Mon, 14 Dec 2009 00:26:00 +0000</pubDate>
		<dc:creator>dondado</dc:creator>
				<category><![CDATA[Wordpress]]></category>
		<category><![CDATA[Enlaces]]></category>
		<category><![CDATA[plugins]]></category>

		<guid isPermaLink="false">http://www.dondado.es/?p=3119</guid>
		<description><![CDATA[Parece que es inminente (de hecho ya ha empezado) que Google haga cambios importantes en la forma que tiene de rastrear la web para seleccionar qué es lo que debemos encontrar cuando busquemos algo. Uno de los parámetros que anuncian (puros rumores en realidad porque Google todo lo hace en secreto) va a ser premiar [...]]]></description>
			<content:encoded><![CDATA[<p><img class="alignnone size-full wp-image-3121" title="broken_link" src="http://www.dondado.es/wp-content/uploads/2009/12/broken_link.jpg" alt="broken_link" width="240" height="148" />Parece que es inminente (de hecho ya ha empezado) que Google haga cambios importantes en la forma que tiene de rastrear la web para seleccionar qué es lo que debemos encontrar cuando busquemos algo. Uno de los parámetros que anuncian (puros rumores en realidad porque <strong>Google</strong> todo lo hace en secreto) va a ser <strong>premiar a las webs sin enlaces rotos</strong>, o mejor dicho, penalizar a las que sí los tengan. Si como yo tienes muchas entradas (en mi caso más de 1.000 ya) resulta imposible revisar todos los enlaces manualmente, pero en WordPress ya se sabe que siempre hay un plugin que puede ayudarte.</p>
<p><strong>Las ventajas de tener 'saneados' tus enlaces</strong> son:</p>
<ul>
<li>Menos decepciones y pérdidas de tiempo para tus lectores</li>
<li>Sumar puntos para Google</li>
<li>Detectar errores: tal vez te equivocaste al escribir aquella URL</li>
<li>Ayudar a otros blogs (los enlazados) a descubrir fallos en sus propias webs</li>
<li>... y un extra: revisar tus antiguos post, tal vez alguno ya esté obsoleto y además siempre es gracioso ver cómo uno mismo va evolucionando</li>
</ul>
<p>El plugin que nos va a facilitar el trabajo es <a title="plugin enlaces rotos" href="http://wordpress.org/extend/plugins/broken-link-checker/">Broken Link Checker</a>. La instalación es sencilla (como casi todos los plugins) y el funcionamiento también.</p>
<p>Una vez activado él solo recorrerá todos los enlaces del blog (a mi me ha detectado más de 5000 diferentes) y nos listará aquellos que estén rotos y también, en una lista aparte, aquellos que redirijan, es decir, que nosotros apuntemos a un sitio pero ellos acaben otro; posiblemente nos interese apuntar directamente al destino.</p>
<p>Después, desde la sección de Herramientas --&gt; Enlaces rotos podemos acceder a las listas y desde ahí mismo desenlazar, cambiar la URL o editar el post (o descartarlo, si quieres que el plugin no te vuelva a avisar de ese enlace en concreto).</p>
<p>A mi me funciona estupendamente pero dos recomendaciones:</p>
<ul>
<li>el plugin utiliza las librerías de curl que no están disponibles en el 100% de los hosting aunque sí en la mayoría, si no funciona tal vez sea por eso.</li>
<li>Ajusta bien las opciones de tiempo, si le das rienda suelta y andas un poco justito de hosting podría provocar demasiados accesos a la base de datos y provocar pequeñas caídas del blog.</li>
</ul>
<p>Enlace de descarga del plugin: <a href="http://wordpress.org/extend/plugins/broken-link-checker/">Broken Link Checker</a>.</p>
<h5><a href="http://www.flickr.com/photos/66916774@N00/1357054666" rel="nofollow">Foto original</a> de <a href="http://www.flickr.com/photos/marxalot/" rel="nofollow">PAUL</a></h5>
]]></content:encoded>
			<wfw:commentRss>http://www.dondado.es/2009/12/corregir-viejos-enlaces-en-wordpress/feed/</wfw:commentRss>
		<slash:comments>3</slash:comments>
		</item>
	</channel>
</rss>

<!-- Performance optimized by W3 Total Cache. Learn more: http://www.w3-edge.com/wordpress-plugins/

Page Caching using disk: enhanced
Object Caching 433/523 objects using disk: basic

Served from: www.dondado.es @ 2012-02-09 22:26:32 -->
